IoT edge gateways devices need a software ecosystem which complements features offered by state-of-the-art IoT Platforms. By nature, problems solved by Internet of Thing is huge and therefore building a software system which caters to all types of requirements is a tough nut to crack.
The goal of IoT Edge Middlewares is to support variety of use cases that may be required to support plethora of industries.
IoT Edge gateways are an aggregation point of group of sensors and actuators. In a typical IoT setup, an Edge Gateway senses data from sensor nodes and exposes them to IoT platform.
In order to provide a general purpose environment which is applicable to a large number of use cases, Edge Gateways need a general purpose middleware which facilitates communication between sensors and gateways and to cloud. Following are some of the most popular stacks for IoT Edge Gateways
|Foundation||Eclipse Foundation||Linux Foundation|
|Github Repo.||Kura||EdgeX Go|
|OS Support||Ubuntu Core,Raspbian, Linux (Ubuntu/Ubuntu Core, Yocto-based linux distribution), Windows.||Ubuntu Core,Raspbian, Linux (Ubuntu/Ubuntu Core, Yocto-based linux distribution), Windows.|
|Web based Administration Console allows user to do network, sensor related configurations.||EdgeX GUI is a work in progress. Checkout this Github repository.|
|Database support for local persistence||Supports H2, the Java SQL database for storing telemetry as well as configurations locally in IoT Gateway.||Supports MongoDB and Redis at the persistence layer.|
|IoT Cloud Platforms support|| Eurotech Everyware Cloud™ platform|
Amazon AWS IoT™ platform
Azure IoT Hub™ platform
Eclipse Kapua™ platform
Eclipse Hono™ platform
|Supports integration with Google IoT Core out of the box.|
User can write their own “Export Service” to integrate with other cloud platforms.
|Docker support||Docker Hub link||Docker Hub link|
|Remote Device Management Support||Supports remote diagnostics over pre-defined MQTT topics.|
|Field Protocol Support||Supports following field protocols to sense data from sensors. |
|Quality Assurance||Unit and Integration Tests are part of the main repository. As a developer, you should checkout Kura’s Github Wiki on testing|
|Contributors||Eurotech, Redhat||DellEMC, VMWare, Mainflux among other companies who fund development of EdgeX. See this list of member companies.|
|License||Eclipse Public License. This means that any developer/company using this project needs to disclose source code with the same license.||Apache 2.0. This does not warrant you to disclose source code. Developer/company only needs to preserve copyright and license notices|