AWS IoT

AWS IoT Core provides secure, bi-directional communication for Internet-connected devices to connect to the AWS Cloud over MQTT.

MQTT is a messaging protocol designed for IoT devices and applications operating on a publish/subscribe model. It’s lightweight, efficient, reliable, and allows for real-time communication. MQTT is well-suited for environments with limited resources, where efficient use of power and bandwidth is necessary.

Neuron supports MQTT as one of its communication protocols. The Neuron AWS IoT plugin is based on the MQTT plugin to provide easy access to AWS IoT Core.

Add Application

To create a northbound node and connect it to AWS IoT Core to upload data, navigate to North Apps and click Add Application.

  • Name: The name of this application node, for example, “aws-iot”.
  • Plugin: Select the AWS IoT plugin.

Configure Application

See the table below for the configuration parameters.

ParameterDescription
Client IDMQTT client id for communication, a required field.
QoS LevelMQTT QoS level for message delivery, optional, default QoS 0.
Upload FormatJSON format of reported data, a required field:

- values-format, data are split into values and errors sub-objects.
- tags-format, tag data are put in a single array.

Same as the MQTT plugin, see MQTT Upstream/Downstream Data Format
Write Request TopicMQTT topic to which the plugin subscribes for write requests. Same as the MQTT plugin, see MQTT Upstream/Downstream Data Format (since 2.4.5)
Write Response TopicMQTT topic to which the plugin sends write responses.
Device Data EndpointAWS IoT device data endpont.
Root CA CertificateAWS IoT data endpoint root CA certificate.
Device CertificateDevice Certificate corresponding to a thing object in the AWS IoT console.
Private KeyPrivate Key corresponding to a thing object in the AWS IoT console.

Add Subscription

After plugin configuration, data forwarding can be enabled via southbound device subscriptions.

Click the device card or row on the North Apps page, then Add Subscription on the Group List page. And set the following:

  • South device: Select the southbound device you want to subscribe to, for example, ‘modbus-tcp-1’.
  • Group: Select a group from the southbound device, for example, ‘group-1’.
  • Topic: Specify the reporting topic, for example ‘/neuron/mqtt/upload’.

Select the desired southbound device (e.g., ‘modbus-tcp-1’) and group (e.g., ‘group-1’). Lastly, specify the reporting topic, such as ‘/neuron/mqtt/upload’.

Neuron version 2.4.0 MQTT subscribe interface

The exact format of the data reported is controlled by the Upload Format parameter, and the behavior is the same as that of the MQTT plugin. For more detailed information, see MQTT Upstream/Downstream Data Format

Tutorial

Bridging Data to AWS IoT using Neuron demonstrates how to use the AWS IoT plugin to connect to AWS IoT Core.