Multiple enhancements shall be provided for firmware update:
a) Change the web firmware update so we can report status progress back. This should be done via web socket instead of POST, however POST shall still be supported for fallback.
b) Add a digest/checksum/crc to each individual file on the firmware file, so it can be checked.
c) In case we know that parts of the firmware are wrong (most notably /spiffs), use a fallback spiffs with a simple web interface for firmware upload.
d) Ensure the spiffs is the correct version by adding the build tag to a root file which can be checked on power-up.
e) The validity for spifss shall be stored in the nvram, invalidated when we start the process, and only validated after we check all digests/checksums/crc
Multiple enhancements shall be provided for firmware update: a) Change the web firmware update so we can report status progress back. This should be done via web socket instead of POST, however POST shall still be supported for fallback. b) Add a digest/checksum/crc to each individual file on the firmware file, so it can be checked. c) In case we know that parts of the firmware are wrong (most notably /spiffs), use a fallback spiffs with a simple web interface for firmware upload. d) Ensure the spiffs is the correct version by adding the build tag to a root file which can be checked on power-up. e) The validity for spifss shall be stored in the nvram, invalidated when we start the process, and only validated after we check all digests/checksums/crc