------- Third Party Dashboard Tutorial Series -------
The OmnIoT SoftHub Platform provides plenty of functionality allowing you to easily build intelligence into your IoT edge infrastructure. But sometimes you simply need to have your data forwarded to your preferred cloud based solution provider. While the SoftHub does include a fully SSL/TLS enabled Remote Packet Capture Service component, there is also built in support to publish data directly to any third party MQTT compliant solution.
In this brief tutorial we'll show you how, in literally a just a few minutes time, you can configure the SoftHub to publish your sensor data to the MQTT broker of your choice. Before we begin, it's assumed you have some familiarity with the SoftHub and MQTT. If not, please see the introductory videos at our OmnIoTVideos YouTube Channel and/or the relevant sections in the SoftHub Configuration Guide. Note that in this tutorial we're just going to show the simplest case of a single sensor's data being published to the public eclipse test broker. At the bottom of this page we'll be adding links to follow-on tutorials specific to the many third party MQTT compliant platforms which provide a broad range of additional features. Most will provide dashboard functionality where you can view your data graphically either via web based browsers or mobile apps. Many dashboards will also provide "control widgets" allowing you to control your SoftHub remotely from your cloud based applications. Data visualization, analytics, warehousing, and archiving are just a few of the services provided by most cloud based solution providers.
In the video below we'll -
-
Create our SoftHub configuration file,
-
Load it onto our SoftHub device,
-
Restart the SoftHub daemon on the device, and
-
View our packets as they arrive at our target MQTT broker.
The video is shot "real time" and is only about three minutes long. To keep things as simple as possible we're sending our data to the public eclipse test broker and we'll use the MQTT.fx utility to view the packets. The public eclipse broker simply echos all packet data received to the same topic the client device publishes from, so the data you see will be the exact data sent from the SoftHub device.
------- EXAMPLE VIDEO -------
Again, this video represents the simplest of scenario's. While the currently available public MQTT brokers (such as the eclipse broker) are handy for confirming your packet data is being published in the proper format, it is usually much more useful to see your data displayed in a cloud accessible dashboard format where your sensor data can be view graphically and in real-time.
One issue when sending data to the various third party cloud platforms is that many, while being compliant in terms of the MQTT communication protocol, will none the less require your sensor data be sent in a format specific to only that platform. When communicating with remote MQTT brokers, the SoftHub produces generic JSON formatted packet data by default. In order to mitigate this issue the SoftHub allows you to reformat your outgoing packet data "on the fly". This is done by providing one or more JSON Filter/Format (.jff) files. Each JFF file describes a particular outgoing packet you wish to transform. You provide a list of labels identifying the packet, a list of data you wish to extract from the packet, and a format string that will be used to build the outgoing packet. Again, please see the video and documentation links above for complete details and examples of how to build JFF files for your target platform.
Below we also provide a set of guides and videos where we illustrate the SoftHub sending data to many of the more popular third party cloud based platforms available. For each platform, we extend the example in the video above showing the following:
-
The minimal MQTT "Publish Data" object parameters needed to connect to the target broker
-
If required, the .mcfg and/or .jff file(s) required to transform the outgoing packets appropriately
-
If available, we'll also describe how to configure a control widget to control your SoftHub device(s) remotely
You can download the files used in the example video HERE.
------- Platform Specific Tutorials -------
Azure Power BI - a cloud based platform providing MQTT enabled dashboards, analytics, and storage.
Thingsboard - a cloud based platform providing MQTT enabled dashboards.
Ubidots - a cloud based platform providing MQTT enabled dashboards and mobile apps.