|This page is in notes format, and may not be of the same quality as other pages on this site.|
1. What Is A Device Shadow?
AWS introduces the concept of a device shadow A device shadow is a virtual, persistent copy of a embedded devices state which is stored in the cloud. The device shadow can be interacted with from IoT Core whether or not the actual device is connected or not. The devices shadow is represented as a JSON document. You can think of the device shadow as a cache of the device state which prevents the disruption of missed communications when the actual device goes temporarily offline, usually due to unstable internet connectivity (other services can still read/write to the shadowed device state). The actual device, when online, can get/update/delete it’s latest state as well as receive notifications when the state changes.
2. AWS Jobs
Jobs can be sent to devices using any of the following three protocols:
3. AWS IoT Device SDK For Embedded C (C-SDK)
The AWS IoT Device SDK For Embedded C (commonly shortened to C-SDK) that you can use/run on embedded devices to turn them into AWS IoT nodes that can connect to the AWS IoT Core. It is written in standard C and contains the following components:
AWS IoT Device Shadow
AWS IoT Jobs
AWS IoT Device Defender
AWS IoT Over-the-air Update
AWS IoT Fleet Provisioning
Most of these components have no dependencies other than the standard C library.
X-CUBE-AWS is a port of the AWS IoT Device SDK to the STM32L4, STM32H7 and STM32WB series of microcontrollers.
 STMicroelectronics. AWS IoT software expansion for STM32Cube (UM2178). Retrieved 2021-08-30, from https://www.st.com/en/embedded-software/x-cube-aws.html