OTA update reliability + firmware update
Some users on the SmartThings community forum reported failed OTA updates when updating to the 2.0.4 release last week. After investigating, I was able to reproduce an intermittent failure scenario where one file would not download completely, corrupting the update.
To solve this in a clean and reliable way, I've implemented a verification step where each downloaded file from the OTA update is hashed and compared with a checksum from git before it is finalized. This approach works well, however it introduces a new firmware dependency on the crypto module.
A firmware update is included in this release
While not required, I recommend all users re-flash the firmware of their device(s) before applying this OTA update. The updated firmware file is firmware/konnected-security-2-0-5.bin
in this release. Unfortunately, it's not possible to update the firmware over the air, so a USB connection to your computer is necessary.
If you choose not to update the firmware, then your device will not be able to verify OTA updates automatically, and you risk corrupting your device during an OTA update. If this happens, you can manually re-load the source code on to the device by following this guide. Or, contact us at [email protected] for a replacement device if you purchased from us.
IF YOU'RE UPDATING FROM 2.0.3 AND EARLIER, THIS UPDATE REQUIRES TWO "CHECK FOR UPDATE" PROCESSES TO COMPLETE. The first time, the device will download the new OTA-updater code. The second time you check for updates it will actually update the software.