Posted On: May 4, 2021

FreeRTOS version 202104.00 includes a new managed over-the-air update (OTA) library, coreMQTT-Agent library and the AWS IoT Device Defender custom metrics feature as generally available. Developers can use these libraries to update firmware, manage IoT device fleets, design multi-threaded applications, and monitor fleet metrics for their IoT devices.

The OTA library makes it easier to download and perform cryptographic verification of firmware updates. You can use the OTA library with your preferred MQTT library, HTTP library, and underlying operating system (e.g. FreeRTOS, Linux). The coreMQTT-Agent library manages the MQTT connection by serializing the access to the coreMQTT library and reducing implementation overhead (e.g., the need for repeated calls to the process loop from the application). This allows your multi-threaded applications to share the same MQTT connection, and enables you to design an embedded application without having to worry about thread safety. See coreMQTT-Agent demo that uses OTA, Device Shadow, and Device Defender in multiple threads. The Device Defender library enables you to send device metrics to the AWS IoT Device Defender service. This library also supports custom metrics, a feature that helps you monitor operational health metrics that are unique to your fleet or use case. For example, you can define a new metric to monitor the memory usage or CPU load on your devices. These libraries have been optimized for modularity and memory usage for constrained microcontrollers, and have undergone code quality checks (e.g. MISRA-C compliance, Coverity static analysis), and memory safety validation with the C Bounded Model Checker (CBMC) automated reasoning tool.

You can find more information on FreeRTOS libraries on FreeRTOS.org and get started by downloading the FreeRTOS source code from the Downloads page or GitHub.