Connecting a device with IoT Edge

Azure IoT Edge is the Edge Gateway and Edge computer of Azure. In the previous section, we implemented a simple Edge Gateway with the Azure Device SDK and Node.js. Azure IoT Edge simplifies the development process and enhances the computation capabilities of the Edge, distributing business logic to devices through standard containers and monitoring them from the cloud.

The following screenshot summarizes the main features of Azure IoT Edge from three different perspectives—computation, gateway, and development:

Azure IoT Edge reference architecture

The preceding diagram can be explained as follows:

  • Computation: With Azure IoT Edge, we can deploy Azure Stream jobs and Azure ML Analytics on the Edge to perform simple or advanced actions. Azure IoT Edge runtime supports C#, Node.js, Java, Python, and C.
  • Gateway: Azure IoT Edge can connect sensors through MQTT, AMQP, and HTTP. However, it needs additional modules to support OPC UA, OPC DA, and Modbus.
  • Development: We can compile Azure IoT Edge with Visual Studio Code. Alternatively, we can use the Docker images built previously.

Azure IoT Edge also supports a store and forward feature on its offline mode. Azure IoT Edge allows us to save data locally for a long period of time, in case we have an intermittent connection.

The operating systems that are supported by Azure IoT Edge are the following:

  • Ubuntu Server 16.04 and 18.04
  • Windows 10 IoT and Windows 10 Server
  • Raspbian Stretch

Azure is also performing tests with CentOS and Debian.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset