Azure IoT Edge as a translation gateway for TCP/IP based OBD-II device

Viewed 266

We want to use Azure IoT Edge as an identity translation gateway with the protocol translation gateway. Because we are working with an OBD-II device that strictly uses TCP/IP as communication protocol. We can only add IP, PORT, and APN in the device nothing else.

We want to use these devices with the Azure IoT Hub. As we know Azure IoT hub works only with MQTT, AMQP, and HTTPS.

We want to use Identity translation for:

  1. Creating IDs for these lots of devices from the IoT edge and register them in IoT Hub.
  2. If possible, we want to automatically make the device to Azure IoT Hub communication via IoT Edge.

We want to use protocol translation for:

  1. Acting as a medium to communicate between the Devices working on the TCP/IP and the Azure IoT Hub, which supports MQTT, AMQP, and HTTPS communication protocol.

We want to have a Bi-directional communication with the Azure IoT cloud. So we can send messages back to the devices when needed and do FOTA.

My Questions:

  1. Is there a module available for the TCP/IP implementation in this sample?
  2. Can this repository be used for production-level implementation for the above?
  3. Is there any full detailed documentation like this sample for implementing the actual asked for production level?
  4. Does this Implementation way provide two-way communication? Device to edge to cloud and then Cloud to edge to the device?
  5. Is this identity translation gateway in development and is actually not fully blown for the production purpose?
  6. Is there any working example or a full developer guide for Implementing Azure IoT Edge gateway as an Identity translation gateway with protocol translation gateway?
1 Answers

IoT Edge as a translation gateway (protocol translation and identity translation) is only supported by third-party modules. That custom or third-party module will be responsible for pre-processing the incoming messages and turn them into a format that can be understood by IoT Hub.

The IoT Edge runtime does not include protocol or identity translation capabilities. These patterns requires custom or third-party modules that are often specific to the hardware and protocol used. Azure Marketplace contains several protocol translation modules to choose from. For a sample that uses the identity translation pattern, see Azure IoT Edge LoRaWAN Starter Kit.

Ref: Device capabilities behind translation gateways

There is a full developer guide and best practices for implementing Azure IoT Edge as a transparent gateway in the following doc: Connect a downstream IoT Edge device to an Azure IoT Edge gateway

Like mentioned in the github repo you are referring to Azure IoT Edge Identity Translation Lite: Sample on implementing Identity Translation at the edge , that is a:

'lite' implementation of the Identity Translation pattern as it only supports the basic identity translation flows based on symmetric keys

Leverage github issues section and suggest pull requests there with your implementation - that sample started being implemented by Microsoft Engineers though it is not officially supported by IoT Edge runtime.

Related