|
| 1 | +# Thingsboard IoT Gateway |
| 2 | +[](https://gitter.im/thingsboard/chat?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) |
| 3 | + |
| 4 | +The Thingsboard **IoT Gateway** is an open-source solution that allows you to integrate devices connected to legacy and third-party systems with Thingsboard. |
| 5 | + |
| 6 | +Thingsboard is an open-source IoT platform for data collection, processing, visualization, and device management. See [**What is Thingsboard?**](https://thingsboard.io/docs/getting-started-guides/what-is-thingsboard/) if you are new platform user. |
| 7 | + |
| 8 | + |
| 9 | + |
| 10 | +### Documentation |
| 11 | + |
| 12 | +Thingsboard IoT Gateway documentation is hosted on [thingsboard.io](https://thingsboard.io/docs/iot-gateway/). |
| 13 | + |
| 14 | +### Gateway features |
| 15 | + |
| 16 | +Thingsboard IoT Gateway provides following features: |
| 17 | + |
| 18 | + - **OPC-UA** extension to collect data from devices that are connected to OPC-UA servers. |
| 19 | + - **MQTT** extension to collect data that is published to external MQTT brokers. |
| 20 | + - **Persistence** of collected data to guarantee data delivery in case of network and hardware failures. |
| 21 | + - **Automatic reconnect** to Thingsboard cluster. |
| 22 | + - Simple yet powerful **mapping** of incoming data and messages **to unified format**. |
| 23 | + |
| 24 | +### Architecture |
| 25 | + |
| 26 | +The IoT Gateway is built on top of **Java**, however is different from similar projects that leverage OSGi technology. |
| 27 | +The idea is distantly similar to microservices architecture. |
| 28 | +There are **other programming languages** (C, C++, Python, Javascript, Go..) that may be more suitable for application development that target IoT devices. |
| 29 | +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. |
| 30 | + |
| 31 | +The Gateway provides simple integration APIs, and encapsulates common Thingsboard related tasks: device provisioning, local data persistence and delivery, message converters/adaptors and other. |
| 32 | +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. |
| 33 | +Devices that support other protocols may be connected to gateway by implementing custom extensions. |
| 34 | + |
| 35 | +### Project Roadmap |
| 36 | + |
| 37 | +The initial Gateway release goal is to bring Thingsboard [data collection](/docs/user-guide/telemetry/) feature to OPC-UA and MQTT enabled devices. |
| 38 | +The Gateway project is currently in active development stage and you should expect following major features in next releases: |
| 39 | + |
| 40 | + - Ability to configure devices connected through the Gateway using Thingsboard [Attributes](/docs/user-guide/attributes) feature. |
| 41 | + - Ability to control devices connected through the Gateway using Thingsboard [RPC](/docs/user-guide/rpc/) feature. |
| 42 | + - Ability to configure Gateway distantly from Thingsboard [Dashboards](/docs/user-guide/visualization/). |
| 43 | + - Client-side load balancing based on information about Thingsboard cluster. |
| 44 | + - Ability to visualize collected device data on the Gateway Web UI. |
| 45 | + - Configurable edge analytics. |
| 46 | + |
| 47 | +### Getting Started |
| 48 | + |
| 49 | +Connect to your OPC-UA server or MQTT broker in minutes by following this [guide](https://thingsboard.io/docs/iot-gateway/getting-started). |
| 50 | + |
| 51 | +## Support |
| 52 | + |
| 53 | + - [Community chat](https://gitter.im/thingsboard/chat) |
| 54 | + - [Q&A forum](https://groups.google.com/forum/#!forum/thingsboard) |
| 55 | + - [Stackoverflow](http://stackoverflow.com/questions/tagged/thingsboard) |
| 56 | + |
| 57 | +## Licenses |
| 58 | + |
| 59 | +This project is released under [Apache 2.0 License](./LICENSE). |
0 commit comments