ESP32 remote firmware update options

zazas321
Posts: 3
Joined: Mon Feb 01, 2021 9:41 am

ESP32 remote firmware update options

Postby zazas321 » Wed Apr 07, 2021 10:44 am

Hello. I am working with ESP32 device which will be used as a ultra low power tracking device. This device will be used somewhere far away from me, hence I am concerned about remote firmware update.

I have tested the OTAwebupdater example as such:
https://lastminuteengineers.com/esp32-o ... duino-ide/

and I can confirm that it works great, however, in my application, I cannot be sure that the device will have access to wifi therefore this may not work. My device also has GSM and GPS. Is it possible to do a firmware update through GPS?

Please any device is appreciated!

gbarry
Posts: 1
Joined: Wed Apr 07, 2021 7:05 pm

Re: ESP32 remote firmware update options

Postby gbarry » Wed Apr 07, 2021 7:21 pm

GPS is a broadcast only service. You can't put messages on it. It's also a very slow data rate, but that's a detail.
GSM could possibly be used, but coverage isn't a sure thing, much as WiFi would not be.

gfreund
Posts: 7
Joined: Thu Apr 01, 2021 10:59 pm

Re: ESP32 remote firmware update options

Postby gfreund » Sat Apr 10, 2021 8:12 am

GPS is a navigation system and no, you can't use it for any other communication. GSM (really GPRS) is very slow and therefore might not be suitable. Also basic GSM/GPRS is currently end-of-lived by the two US carriers that support it (AT&T and T-Mobile) so it might not work much longer. Want you need is a modem that supports LTE CAT-M and/or NB-IoT depending on the carrier you're planning to use and your region. For example any module based on the Qualcomm 9205 LTE chip such as Simcom 7080G or Quectel BG95-M3 would do just fine. Many of these modules already contain a GPS receiver for position etc. data.

As far as the update process is concerned you might want to look at https://docs.espressif.com/projects/esp ... m/ota.html. Works fine under Arduino. Essentially you need two OTA partitions, one to run your current image and one to update. Then you download your image onto the "spare" one and tell the ESP32 bootloader to "switch". There are ways to roll back the update should the new image run into problems.

Happy to answer more specific questions.

~G

Who is online

Users browsing this forum: No registered users and 14 guests