Programming ESP32 with Rust: OTA firmware update

hongquan
Posts: 1
Joined: Sun Mar 31, 2024 7:02 am

Programming ESP32 with Rust: OTA firmware update

Postby hongquan » Sun Mar 31, 2024 7:04 am

We at AgriConnect have been using Rust to develop firmware for ESP32 (and even part of our IoT platform backend). From today we start a series to help fellows on the same journey. "Over-the-air firmware update" is the first sharing because it was the topic that one of the authors of esp-idf-hal suggested me to write.

For OTA firmware update, esp-idf-svc already provides API. What it lacks is a documentation how to use the API, how to prepare partitions to use with that API. This post will complement that.

Continue to read at https://quan.hoabinh.vn/post/2024/03/pr ... are-update

patkepa
Posts: 3
Joined: Tue May 13, 2025 3:02 pm

Re: Programming ESP32 with Rust: OTA firmware update

Postby patkepa » Fri Jul 18, 2025 2:42 pm

Hey, great read!

So basically I'm working on implementing a OTA loader into our software (similar as in your example)
But our main software is still currently C and will be for longest time.

Do you think, it'd be beneficial, to basically write our loader software in Rust (downloads update, flashes other partition, uses NVS to communicate by NVS if the update was succcesfully applied, then saves status to NVS, backs to rust loader, which then depending on sucess goes back to main program or tries to somehow recover from broken update), but keep the main codebase in C?
Would such division could perhaps create any issues?

Thanks!

Who is online

Users browsing this forum: No registered users and 1 guest