Amazon FreeRTOS IoT Components
Amazon FreeRTOS devices connect to the AWS cloud using MQTT based messaging. Amazon FreeRTOS facilitates easy onboarding with standard, vendor-independent library interfaces. MQTT is a lightweight protocol with a small footprint, enabling efficient communication for constrained, microcontroller-based devices.
Edge of Cloud devices running Amazon FreeRTOS can connect to local gateways running AWS Greengrass. The local gateways connect to the AWS cloud, however the cloud connection does not need to be permanent. The local gateways collect data from the Edge of Cloud devices, which they then store, and transmit to the cloud when connectivity is achieved.
The Edge of Cloud devices use the Greengrass Discovery software to identify and connect to local gateways running AWS Greengrass.
Amazon FreeRTOS devices can connect to the local network via Wi-Fi using local connectivity libraries such as the Wi-Fi management library. This library implements an abstraction layer for Wi-Fi features such as setup, configuration, provisioning, security, and power management.
Amazon FreeRTOS manages a secure connection to the cloud using Transport Layer Security (TLS v1.2). The TLS library implements an abstraction layer for the TLS protocol which provides privacy and data integrity between two communicating applications. In order to connect to the AWS IoT Core MQTT broker, TLS client certificate authentication is required.
Amazon FreeRTOS provides an abstraction layer for cryptographic object management and private key signature operations as an important management feature. Cryptographic objects are kept either in dedicated storage or in the flash memory of the main microcontroller if dedicated storage is not available.
The Amazon FreeRTOS code signing feature will verify the signed image on the device to ensure the device code is not compromised during deployment and updates.
Amazon FreeRTOS supports the AWS IoT Core Device Shadow API. Device Shadows create a persistent, virtual version, or “shadow,” of each device that includes the device’s latest state so that applications or other devices can read its status and interact with the device.
Using the AWS IoT Device Management functionality with Amazon FreeRTOS devices provides an integrated Over The Air (OTA) update solution. Amazon FreeRTOS makes deploying OTA updates for microcontroller-based devices less memory intensive, by communicating those updates over a single TLS connection, shared with other AWS IoT Core communications.
From the AWS IoT Device Management console the firmware, the devices to update, the code signing method, and the update schedule can all be configured.