IoT core integration with FreeRTOS or no OS


How will the IoT core SDK run on an embedded device with no OS or one that runs FreeRTOS? I see only examples for Linux and Windows with java and python, but what about embedded devices that have no OS or have FreeRTOS and use C++? Can these integrate with IoT Core?

asked a year ago489 views
1 Answer

Hi Mo. You can use any MQTT client to build a device that integrates with IoT Core. However, AWS offers several device software options that include support for advanced features like shadows and jobs, so you don't have to build those from scratch. The main device software options of interest in your case will be the AWS IoT Device SDK for Embedded C and the AWS IoT Device SDK for C++.

The embedded C SDK is intended for resource-constrained micro-controllers, with KBs of RAM. It's a collection of very lean and highly portable C libraries, that you can use with FreeRTOS, other micro-kernels or on bare metal systems. The embedded C SDK libraries are also distributed with our FreeRTOS releases (FreeRTOS and the embedded C SDK sub-module the same libraries). You choose libraries a-la-carte, including only the libraries you need for the features you intend to use. Therefore you have a lot of control over the memory footprint. Ballpark code size of each library is published in the documentation. For example, for the coreMQTT library:

The embedded C SDK demos are intended to built and run on POSIX systems using OpenSSL. They are just for getting to know the libraries without embedded hardware. In the recently deprecated amazon-freertos repository you can find reference integrations for various partner embedded hardware.

profile pictureAWS
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions