Page 1 of 1

Asking for help for OTA ESP32 with a Cellular Modem and AWS

Posted: Tue Apr 30, 2024 5:47 am
by kenn.tran
Hi,

Recently, I've been trying to test out the OTA of ESP32 with AWS, I've used the esp-aws-iot library to test out the examples for both MQTT and HTTP OTA. So far, I've been able to connect to AWS and done Jobs (OTA) by using these examples, however, the challenge is about doing OTA via Serial Line with a cellular modem.

As I understand, the esp-aws-iot library has their own network_interface to handle the connection to Internet and TLS/SSL connection, and for my challenge, I have to re-do/redirect the connection to Serial Line/AT commands to handle the connection and get the firmware from AWS.

At the moment, I don't know where to start or is this possible to do?! Do you guys have any ideas for this? Anyone has done this before?
Please helppp !!! :?

Technical points:
- Tested with ESP-IDF ver.4.4
- ESP-WROOM-32E
- ESP-AWS-IOT library
- AWS IoT core (Things/S3)

Thank everyone!

Re: Asking for help for OTA ESP32 with a Cellular Modem and AWS

Posted: Mon May 06, 2024 8:53 am
by kenn.tran
Please help!!!

Do you guys have any clue or contact where I can ask about this? :cry:

Re: Asking for help for OTA ESP32 with a Cellular Modem and AWS

Posted: Mon May 06, 2024 12:48 pm
by InterBilly
Doing OTA is fairly easy and it doesn't really matter where the data is coming from. I made a project using CAN bus that copies the firmware from one ESP32 to another, maybe it can be of use to you. I think I got the significant parts copied here, not sure as it is a while back.

Code: Select all

// get target partition
const esp_partition_t *target = esp_partition_find_first(ESP_PARTITION_TYPE_APP, ESP_PARTITION_SUBTYPE_APP_OTA_0, NULL);

// init ota
retv = esp_ota_begin(target, OTA_SIZE_UNKNOWN, (esp_ota_handle_t*)&update_handle);

// write to partition
while(more_data)
	retv = esp_ota_write((esp_ota_handle_t*)update_handle, (const void *)otc_data, otc_seg_bytes_total);

// finalize
retv = esp_ota_end(update_handle);

// set boot partition
retv = esp_ota_set_boot_partition(target);

// reboot
esp_restart();


Re: Asking for help for OTA ESP32 with a Cellular Modem and AWS

Posted: Mon May 13, 2024 10:43 am
by kenn.tran
Hi @InterBilly,

Thank you for your comment.

I agree with you about ESP OTA is fairy easy, however, customizing the software to integrate with ESP AWS Iot and cellular have been the issue to me.

I'm looking for a solution/ example handle the AWS connection with my cellular modem.

If you have any information, please feel free to discuss.