Hi, this is my first post here on the forum, hoping to get some expert opinions on the best way to implement AWS OTA for my application.
I’m running RTOS on a STM32L475, which is connected to a SimCom SIM7080G LTE modem. The modem is full featured. I already managed to connect to AWS over MQTT with two way authentication, without having to write any code. The modem takes care of all of this.
The end goal is to implement AWS OTA. I’ve already figured out the PAL stuff. Now I am not sure how to setup the communication layer for OTA.
I’ve been doing a lot of reading and I see several possibilities. One approach could be to use the modems TCP function instead of the MQTT function, and implement RTOS coreMQTT, coreMQTTagent and MBedTLS on the STM32 instead. I then only need to customize the send and receive functions in the transport layer to work with the LTE modem.
Another approach would be to offload TLS and MQTT to the SimCom modem. I already have that working and that will save a fair amount of processing and space on the STM32. This has my preference. However, I do not know how to implement that. The OTA interface documentation only mentions publish, subscribe and unsubscribe commands (which all send data). But how data from an MQTT event/callback is supposed to be sent back into the OTA layer is not mentioned, so I do not know how I should code that.
Can anyone here shed some light on this?