IoT Simulator 2.0 Release

IoT Simulator 2.0 Release

Security is one of the major concerns of the IoT Manager applications. Keeping this in mind, we built the manager applications with different level of security. IoT Network Simulator is enhanced to support all manager applications based on their security practices. Similar to the previous version, the simulator supports all its options from the user interface itself.

IoT Network simulator for AWS IoT core / Azure IoT hub

The User interface will provide options based on the IoT applications. For example Azure IoT hub supports SAS Token and Certificate based authentication. Users will be able to create a specific network for the Azure IoT core and able to create devices that handshakes with the IoT hub based on the details specified when configuring the device. Similarly, this is possible for the AWS IOT as well.

Simulating IoT Network for Other Manager applications

For all other manager applications like Bevywise IoT Platform, Losant , and others, you will be able to specify a single certificate at the common settings page and get your devices connected to the manager application.

Device level SSL Security

Azure IoT / AWS IoT manages every device to have an unique certificate. In addition, IoT Network simulator supports configuration of the root Certificate in the settings window and ensures that you specify each and every client certificate in the device configuration screen. The WILL , QoS , retain , event messages and command messages configuration are the same as before.

Individual Device IP Address

Simulator runs on a single machine and simulates all its devices. But, The manager will be seeing all the devices from one Host (IP Address). This contradicts the realtime Simulation. In order to overcome this, the 2.0 version has added support for using Virtual IP Address. By this functionality, each simulated device will connect to the manager application from different host Address.

Try the new IoT Simulator 2.0 now

download now

 

Windows MQTT Client

Windows MQTT Client

We have been bundling the Windows MQTT Client DLLs and shared libraries for Linux and MAC into the MQTT Broker and the IOT Simulator.  In addition, These clients can be started using the python files bundled in the lib/ folder of the product.  And also Python 2.7  and Open SSL are mandatory for running the client using these libraries. In addition, Linux and MAC mostly will have openssl and python installed by default. But for Windows, we need to install the same. Let us see the installation steps of MQTT Broker python.

Install Python

Step 1: Firstly, Download the installer version based on your Operating system (32 bit or 64 bit ) from  python website and install it by double click on the exe.

Step 2: Confirm the installation of python. Open a command prompt. Then type the command  python in command prompt and press enter. It should take you to the Python prompt if installed perfectly. Finally, Exit the python prompt.

Install openSSL

Step 1: Download the stable version of the openssl from their website

Step 2: Download Visual Studio FREE version from the Microsoft and install it.

Step 3: Download Perl and install the same.

Step 4: Use ppm to install nasm and dmake

      ppm install nasm
      ppm install dmake

Step 5: Open the command Prompt inside the Visual Studio and set up the openssl using the Visual C++ method in the help file present in the downloaded file. You can either use the INSTALL.W32 or INSTALL.W64 based on your OS.

Step 6: Then Check the installation of the openssl by opening the command prompt and executing the command openssl.

Setup Windows MQTT Client

Once you are done with the above steps your windows os is ready to run the Windows MQTT Client. Now Download the new MQTT Broker python extension. After installation, go to the lib/ folder and run any of the client python files like Example1.py. Make sure you run the runbroker.bat inside the bin/ folder so that the client can connect to it.

Contact support if you are looking for any assistance on the set up process. If you are looking to bundle the MQTT Client in any of your devices, feel free to contact us.

New version of MQTT Broker, MQTTRoute 3.2 is available now which comes up with High availability server, SYS topic & more.

Benefits of MQTT-SN over MQTT

Benefits of MQTT-SN over MQTT

MQTT SN is exclusively designed for sensor networks and the specification for the same (MQTT SN specification) is available at MQTT.org. MQTT protocol & MQTT SN (MQTT for sensor networks) are both IoT Protocol used most widely for developing IoT devices. This blog is for developers to understand when to use MQTT-SN (SN MQTT for sensor) and the advantages of the same over MQTT message protocol.

MQTT SN Auto Discovery

In the MQTT set up, agents need to be informed where the broker runs. This increases the configuration overhead at the end user. But for MQTT-SN protocol, the sensors and the gateway can propagate messages which is understood by its counterpart and can establish connection to communicate with each other.  This makes it much simpler to configure.

Reduced Bandwidth

The size of the every packet that is transferred in the MQTT-SN has been redesigned. For example in the CONNECT, only the required parameter is sent. The WILL and WILL Message has been split into separate packets and sent only when required. The overall data transferred over the network is reduced to a greater extent to reduce the bandwidth used. Moreover MQTT SN supports four types of QoS (Quality of service) QoS 0,1,2,-1 or 3.

Predefined Topic IDs & Topics Names

The topic names can be predefined in the MQTT SN Gateway with a pre defined topic IDs. The client can directly send packets using the ID and no need to use the topic names. The topic IDs occupies a max of two bytes. The short topic names less than 2 bytes can also be used without topic IDs. If the client wants to use a new topic, then can send a register command for the new topic.

Lower Processing Power

The packet size reduction highly reduces the amount of power required to create and communicate data. Further there are provisions like Sleep of the clients which will stop the gateway from further sending or publishing messages to this client . The client can send a resume message to get all the packets received during the sleep period.  This make this publish subscribe messaging protocol highly suitable for battery powered sensors.

Connectionless

MQTT is over TCP/IP Protocol. TCP has a lot of connection over head which is not required in the MQTT-SN which is over UDP. And it does not depend on TCP/IP networks. This again reduces the amount of data transfer and the power required.

Medium Independence

It can be propagated over Zigbee, Z-Wave , bluetooth in addition to the wired and wireless sensor networks. MQTT SN is mainly targeted at embedded devices, on non TCP/IP networks such as zigbee.

You can have a look at the detailed document on how to develop MQTT-SN Clients and how to develop MQTT Clients.