The Things Network Integration PluginJorge Trincado Castán
Narrowband technology is today one of the best ways to create long-range IoT projects such as Smart City, Industry 4.0, or even Smart Farming, as it offers a great wireless range and penetration being also energy efficient. In previous publications, we have talked about other 0G technologies such as Sigfox and the benefits they have for not overloading the traditional lines of communication on the Internet. This time we bring you closer to another amazing project related to the IoT data infrastructure, which is The Things Network, a European company that has the proposal of creating the world’s largest LoRaWAN network by means of a large community of users in which anyone can participate, just signing up into their website or contributing to the gateway network. Thanks to this orientation the count today with almost global coverage, with almost 11.000 gateways that provides support to more than 100.000 developers, as we can see in their website:
And all of this has been created by a company with Open Source vision, focused on providing other developers a flexible tool to democratize the IoT technology, and also making a strong effort on creating a development community (as we can show at their “community” section), so we found many similarities with our vision in Thinger.io.
Starting a project in TTN’s infrastructure is quite simple, it allows us to retrieve data from any LoRa devices that are connected through a gateway that has been registered in their service, leaving the data exposed in their server until a new message arrives. This solves one of the bigger problems of many IoT projects, which is to obtain internet connection when we can’t access to any traditional data network such as WiFi, GPRS, 3G, etc. Once the device data arrives at TTN Server we can start showing data almost in real-time. But it is required to integrate with other services in order to store, analyze, or show device data in dashboards. At this point is where Thinger.io becomes the perfect complement for any project since it will simplify these and other tasks in a scalable, robust, and very simple way.
The Things Network Integration Plugin
The integration of any The Things Network project with Thinger.io is based on using a callback integration tool that is provided by TTN web console, it allows sending data to any third-party platform by means of HTTP request. Traditionally we used this tool to send messages from a device to a Thinger.io data bucket, but it had some limitations since we could not separate the payload metadata from the message, it required creating a data bucket and a request for each device, being hard to work with large devices network, and we also lost some Thinger.io features.
Taking all of this into consideration, and knowing that there were developers creating projects with both platforms with the traditional integration, we decided to face an integration project trying to provide a better service to TTN users, by means of a software interface that adapts TTN HTTP requests to a specific format that can be used on Thinger.io and allowing to take full advantage of both technologies
The integration has been realized using our new plugin system, which allows us to extend the capacities of the platform with new features in a modular way, that holds the basic platform simple to learn and use, but also providing flexibility to adapt it to any case of use. The use of this plugin simplifies the integration in a transparent way to the developer, improving large devices network deployment since it allows to integrate using “Applications” (device groupings in TTN infrastructure) instead of individual devices, data acquisition and processing, and offering some advanced functionalities such as:
Improved device management
- Devices auto-provisioning to simplify large networks deployment
- Connection timeout alerts
- Devices geolocation support and representation in Google Maps widget
Uplink with payload-data processing
- Custom payload processing to convert float variables, units transformation or just process data with custom algorithms
- Automatic storage in data buckets
- Allowing third-party integrations with custom endpoint manager.
- Simple configuration of device program parameters with JSON format
- Request downlink processes with payload encoding to translate JSON to 8 bytes message
- Work with devices data using Node-RED rule engine
If you are thinking on test this technology, don’t hesitate and go for it, you only need a device equipped with LoRa, check if your area has TTN coverage their website and follow the instructions explained on both platform documentation to connect the device and make the integration, once opens a world of possibilities such as data representation of the devices in dashboards, trigger status using the Node-RED rule engine, send email alerts and much more.