zwave-js / firmware-updates

The firmware update service for Z-Wave JS at https://firmware.zwave-js.io
https://zwave-js.github.io/firmware-updates/
MIT License
30 stars 32 forks source link

feat: add Inovelli LZW31 v1.52 (beta) and v1.57 #61

Closed badboybeyer closed 1 year ago

badboybeyer commented 1 year ago

reference manufacturers website for firmware details

badboybeyer commented 1 year ago

I noticed that both firmwares have the same checksum, despite having different names and version numbers. I loaded one into my switch and it reported 1.57. I also noticed that the production version is ahead of the beta version. I submitted a support request with the manufacturer to explain these oddities.

AlCalzone commented 1 year ago

Copying the check output here:

Error: firmwares/inovelli/LZW31.json, version 1.52, target 0 Integrity hash mismatch

Expected: sha256:e52ec035ba3111823fefbd8459b2ac2da19779fb87eeb9536e95e6e6f9a447b2
Got:      sha256:1a15dbc0143473b9af8e9bb7a8540e20b67d867362ff90b11e5dd1286f83c741

Error: firmwares/inovelli/LZW31.json, version 1.57, target 0 Integrity hash mismatch

Expected: sha256:4567da33054658cc52d2df43447c74b361813495ece3429d44a8c9bcd3106bb2
Got:      sha256:a994cb634cd0a69bed095a2586c192cde012343fd99088f26bd7b5d0b94472d7

Did you use https://github.com/zwave-js/firmware-integrity to generate the hashes?

badboybeyer commented 1 year ago

Nope, I used sha256sum. That seems to work for the .bin but not the .otz. See new commit.

AlCalzone commented 1 year ago

Yeah, essentially all files except bin are encoded (mostly Intel HEX), but the checksum operates on the raw/decoded firmware data.

AlCalzone commented 1 year ago

Tests look good. @InovelliUSA can you please confirm this is all correct?

InovelliUSA commented 1 year ago

Yes, it looks good to me. Firmware version 1.52 is sometimes requested because it is the only version that has basic scene control (the black series usually doesn't have scene control). It was removed after 1.52 because MCU flash storage was extremely low. So 1.57 as production and 1.52 as beta I think will be good here.