What is the point of a factory app in an OTA setup?

maldus
Posts: 83
Joined: Wed Jun 06, 2018 1:41 pm

What is the point of a factory app in an OTA setup?

Postby maldus » Tue Sep 10, 2019 3:17 pm

Hello everyone,
the question should be pretty simple to answer but I'm currently having some difficulties. For context, I am studying OTA to implement an home appliance product that will probably have some kind of cloud functionality in the future and a correlated HTTP server to update its firmware; as of now however there is nothing defined yet so I just want to enable a Bluetooth OTA flashing feature and leave open a future update.

In this scenario, where the OTA technique itself might change, it is the OTA app itself that should proceed to write the new firmware so it occurred to me that a factory partition would be useless. Even if I wanted to keep it as a failsafe, what purpose would it fulfill? Once a new app is flashed control can only be ever passed back to the factory partition if the OTA partition calls `esp_ota_set_boot_partition`. If I mistakenly flash an OTA app without OTA capabilites itself the device will be "bricked" anyway (barring physical access to the serial bootloader).
On the other hand, if for whatever reason the new app is invalid the implemented callbacks mechanisms would return to the previously installed one, which will not be the partition app unless it's the very first update of the device.

What am I missing?


maldus
Posts: 83
Joined: Wed Jun 06, 2018 1:41 pm

Re: What is the point of a factory app in an OTA setup?

Postby maldus » Tue Sep 10, 2019 7:23 pm

As I said, simple question. I wonder how I missed it.

Thank you for the answer.

Who is online

Users browsing this forum: No registered users and 141 guests