Giter VIP home page Giter VIP logo

xiejinsong / thingsboard-gateway Goto Github PK

View Code? Open in Web Editor NEW

This project forked from thingsboard/thingsboard-gateway

0.0 1.0 0.0 340 KB

Open-source IoT Gateway - integrates devices connected to legacy and third-party systems with Thingsboard IoT Platform using OPC-UA and MQTT protocols

Home Page: https://thingsboard.io/docs/iot-gateway/what-is-iot-gateway/

License: Apache License 2.0

Java 98.01% Shell 0.78% Batchfile 1.21%

thingsboard-gateway's Introduction

Thingsboard IoT Gateway

Join the chat at https://gitter.im/thingsboard/chat

The Thingsboard IoT Gateway is an open-source solution that allows you to integrate devices connected to legacy and third-party systems with Thingsboard.

Thingsboard is an open-source IoT platform for data collection, processing, visualization, and device management. See What is Thingsboard? if you are new platform user.

IoT Gateway architecture

Documentation

Thingsboard IoT Gateway documentation is hosted on thingsboard.io.

Gateway features

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 reconnect to Thingsboard cluster.
  • Simple yet powerful mapping of incoming data and messages to unified format.

Architecture

The IoT Gateway is built on top of Java, however is different from similar projects that leverage OSGi technology. The idea is distantly similar to microservices architecture. There are other programming languages (C, C++, Python, Javascript, Go..) that may be more suitable for application development that 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/adaptors and other. 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.

IoT use cases

Smart energy Smart energy monitoring demo

Smart farming Smart farming

Fleet tracking Fleet tracking

Getting Started

Connect to your OPC-UA server or MQTT broker in minutes by following this guide.

Project Roadmap

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 active development stage and you should expect following major features in next releases:

  • Ability to configure devices connected through the Gateway using Thingsboard Attributes feature.
  • Ability to control devices connected through the Gateway using Thingsboard RPC feature.
  • Ability to configure Gateway distantly from Thingsboard Dashboards.
  • Client-side load balancing based on information about Thingsboard cluster.
  • Ability to visualize collected device data on the Gateway Web UI.
  • Configurable edge analytics.

Support

Licenses

This project is released under Apache 2.0 License.

thingsboard-gateway's People

Contributors

ashvayka avatar ikulikov avatar volodymyr-babak avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.