If a device is running for many months it might fall behind on the version of the firmware it is running.
As part of the ESP32 power up / activation process, the board does a firmware version check. If there is a newer firmware version it initiates an OTA firmware update. That only happens on startup. A board that has been running for a long time might be stranded on old version.
The sensor could handle this in several ways:
periodically do a firmware check on its own (once a day or once a week?)
subscribe to a MQTT topic - lets call it ForceFirmwareCheck - that let's the administrator/device owner to remotely tell a board to check for a firmware update. That would let us dynamically update sensors if there was a security or software flaw. We would not need to wait a day or week.
It would be easy to implement, the board already subscribes to other MQTT topics and the callback could be extended with another use case. The callback would just need to invoke OpenEEWDeviceActivation() function.
If a device is running for many months it might fall behind on the version of the firmware it is running. As part of the ESP32 power up / activation process, the board does a firmware version check. If there is a newer firmware version it initiates an OTA firmware update. That only happens on startup. A board that has been running for a long time might be stranded on old version.
The sensor could handle this in several ways:
It would be easy to implement, the board already subscribes to other MQTT topics and the callback could be extended with another use case. The callback would just need to invoke OpenEEWDeviceActivation() function.