DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Newsletter
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • From Polling to PubSub: Building an Asynchronous OPC UA Stack in Python
  • What Role Will Open-Source Hardware Play in Future Designs?
  • June 1-3 Open Source RT-Thread IoT OS Global Tech Conference
  • Making an IoT Developer’s Life Easier With Eclipse IoT Packages

Trending

  • Avoiding AI Debt as a Team
  • YAGNI in the Age of AI Coding
  • OpenCode: Setting Up an Open-Source AI Coding Assistant
  • Genkit Flows as senro Steps: Extremely Powerful AI Pipelines in Go

Draft This article hasn't been published, so readers can't see it.

In moderation This article is waiting for review, so readers can't see it yet.

Deleted This article has been deleted, so readers can't see it.

  1. DZone
  2. Data Engineering
  3. Big Data
  4. Introducing the Thingsboard Open Source IoT Gateway

Introducing the Thingsboard Open Source IoT Gateway

Thingsboard is hard at work on a new open source gateway that should allow devs from hobbyists to IIoT specialists to connect to devices regardless of protocol.

By 
Andrew Shvayka
·
Feb. 12, 17 · News
Post on X (opens in a new tab) Share on LinkedIn (opens in a new tab)
16.9K Views

Join the DZone community Save articles, join the discussion, and download Refcards and Trend Reports with a free account.

Join for free Already a member? Log in

There are numerous IoT protocols and data formats. Some of them are more popular, like MQTT and JSON, and some are quite rare. Many IoT platforms provide support for the most popular protocols and data formats out-of-the-box, but it is hard to support all of them in a single solution. With the growth of the Thingsboard open-source community, we have started receiving requests about supporting IIoT protocols, like OPC-UA and some specific data formats.

We have decided to implement this functionality as a separate open-source project that will allow us to bridge the platform API to literally any device. The data flow diagram is attached, and we will describe it in detail below.

Image title

The IoT Gateway is built on top of Java, but is different from similar projects that leverage OSGi technology. The idea is distantly similar to a microservices architecture. After all, there are other programming languages (C, C++, Python, Javascript, Go, etc.) that may be more suitable for application development for target IoT devices, especially when we are talking about language APIs and existing libraries to work with serial ports, GPIOs, I2C, and new modules and sensors that are released every day.

The Gateway provides simple integration APIs and encapsulates common Thingsboard-related tasks: device provisioning, local data persistence and delivery, message converters/adapters, and more. As an application developer, you are able to choose Python, Go, C/C++, and other languages and connect to Thingsboard Gateway through external MQTT broker or OPC-UA server. Devices that support other protocols may be connected to gateway by implementing custom extensions.

Thingsboard IoT Gateway provides following features:

  • OPC-UA extension to collect data from devices that are connected to OPC-UA servers.

  • MQTT extension to collect data that is published to external MQTT brokers.

  • Persistence of collected data to guarantee data delivery in case of network and hardware failures.

  • Automatic reconnecting to Thingsboard clusters.

  • Simple yet powerful mapping of incoming data and messages in a unified format.

The initial Gateway release goal is to bring Thingsboard data collection feature to OPC-UA- and MQTT-enabled devices. The Gateway project is currently in the active development stage, and you should expect major feature releases in next two months. Our next goal is to bridge all other Thingsboard features and allow you to configure and manage IoT devices through the gateway using Thingsboard widgets and dashboards.

Links:

  • IoT Gateway GitHub page

  • IoT Gateway documentation

  • Sample real-time dashboard

Open source IoT

Opinions expressed by DZone contributors are their own.

Related

  • From Polling to PubSub: Building an Asynchronous OPC UA Stack in Python
  • What Role Will Open-Source Hardware Play in Future Designs?
  • June 1-3 Open Source RT-Thread IoT OS Global Tech Conference
  • Making an IoT Developer’s Life Easier With Eclipse IoT Packages

Partner Resources

×

Comments

Loading comments

The comments didn't load

Please try again in a moment.

Likes

Loading

The next likes didn't load. Please try again.

The likes didn't load

Please try again in a moment.

See who liked this

Log in or join DZone for free to see who liked this article.

Log in Join for free
  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook