Blog Image

This article guides you to build smart gateways by making use of eSOMiMX7 based development kit from e-con Systems™. Nowadays everyone talks about Machine to Machine (M2M) communication and Internet Of Things (IoT).

What is the idea behind M2M and IoT?

The idea behind them is very simple – Data exchange between devices.

Since devices have the capability to exchange data between them, they have become smarter and intelligent. These smart devices have started enabling new business opportunities by connecting your devices, sensors, cloud services, and data to create a network of everything.

The devices can vary from liquid level sensors, power line meters, phones, wearables, refrigerators, washing machines, microwave ovens, etc.

Before diving into how to develop a smart gateway application, let’s try to understand what are the common challenges faced by IoT communication.

Challenges in IoT communication

In Machine to Machine communication and IoT, the interconnected devices are usually short range and low powered embedded devices where resources are scarce. This demands the protocol implemented for connecting the devices to be lightweight, easy, reliable and act smartly in using battery, CPU, and bandwidth. This enables devices to do their main functions using available power for a longer time. Because of these demands, the standard protocols over resource expensive Wi-Fi cannot be directly used in these devices.

This brought the need for creating new protocols which can cater the IoT communication requirements. One such protocol is MQTT.


MQTT (Message Queuing Telemetry Transport) was developed by Andy Stanford-Clark (IBM) and Arlen Nipper (Eurotech; now Cirrus Link) in 1999 for the monitoring of an oil pipeline through the desert. The goals were to have a protocol, which is bandwidth-efficient and uses little battery power because the devices were connected via satellite link and this was extremely expensive at that time.

MQTT is a publish/subscribe messaging protocol for low power embedded so that they can operate for a long time. Publish/Subscribe is event-driven and enables messages to be pushed to clients. MQTT broker acts as a central communication point in charge of dispatching messages between the senders and the rightful receivers.

The central concept in MQTT is to dispatch messages as topics. Each client publishes a message to the broker by including a topic. A topic is a simple string that can have one or more hierarchy levels. The hierarchies are represented as path strings separated by a slash.

In this video, the data from particle photon sensor are published to the eSOMiMX7. The clients, a remote machine, and an eSOMiMX6 device subscribe to the temperature value. The eSOMiMX7 device, acting as a broker, publishes the data from the sensors to the clients.

For further assistance and queries please get in touch with