Is there a way to do this with OTA? (reboot, flash only a specific device, ping for information, etc)
Posted: Mon Jun 20, 2022 8:32 am
I have a bunch of ESP32s across the country that are all flashed with OTA.
Essentially, I upload a new bin file and JSON file on a web server and have ESP32 compare its version with the version from the JSON file and if it is lower than that it updates.
However, if I want to only update one of them, there is no way to do it without updating the other ones too.
I have their mac addresses somewhere, but is there a way to perhaps have them ping a web server so that I get exact mac addresses, and have it so that it firstly compares the mac address with mac address in json file and if it is the same mac address + it is a lower version that it updates?
Second, sometimes, they will lose internet connection and reboot seems to fix it
So, after getting their mac addresses or whatever is necessary to identify them one by one, is there a way to reboot only one of them?
(this is perhaps the most important function to me)
Thirdly, they all have 2 led indicators, first is if the important process is ongoing (it has a connection to the remote PC) and second is if it has wifi connection. I'd like to be able to see those indicators for each one of these one by one, if the process is ongoing and if it has wifi connection without someone being there physically.
So TLDR:
I need to have a list of all ESP32s, their current status (process is ongoing, wifi is found), ability to reboot one of them or even put them in provisioning mode and put a new update to only one of them.
Essentially, I upload a new bin file and JSON file on a web server and have ESP32 compare its version with the version from the JSON file and if it is lower than that it updates.
However, if I want to only update one of them, there is no way to do it without updating the other ones too.
I have their mac addresses somewhere, but is there a way to perhaps have them ping a web server so that I get exact mac addresses, and have it so that it firstly compares the mac address with mac address in json file and if it is the same mac address + it is a lower version that it updates?
Second, sometimes, they will lose internet connection and reboot seems to fix it
So, after getting their mac addresses or whatever is necessary to identify them one by one, is there a way to reboot only one of them?
(this is perhaps the most important function to me)
Thirdly, they all have 2 led indicators, first is if the important process is ongoing (it has a connection to the remote PC) and second is if it has wifi connection. I'd like to be able to see those indicators for each one of these one by one, if the process is ongoing and if it has wifi connection without someone being there physically.
So TLDR:
I need to have a list of all ESP32s, their current status (process is ongoing, wifi is found), ability to reboot one of them or even put them in provisioning mode and put a new update to only one of them.