Firmware Update App issues on 700 chip with GBL file

Continuing the discussion from 2.2.4 - Device Firmware Update App:

Was trying to update a firmware using the built in App when I was on 2.2.4 and on both a ZEN76 and ZEN77 using the provided GBL files I was getting a FirmwareUpdateMdStatusReport(status:4)

The release post for the app I linked to says it will work with GBL files.

I checked back with Zooz and they confirmed the files were correct, so I thought what the heck I would try the old Binary driver. Sure enough, that worked using firmwareTarget:0 (slightly modified to work with secure devices). hubitat/zwaveBinaryUpdater.groovy at master · djdizzyd/hubitat · GitHub

I have since updated my hub to 2.2.5.120 so I guess I will try the app again for the ZEN76 I need to update still, but not having very high hopes..

Very odd.. I have one of these.. I’ll try to re-produce

I sent you a DM with the update files in case you need the ones I am using.

1 Like

Heads up I was only able to get the ZEN77 to update. For the 76 I get the same error as above using the app, using the driver I was getting back a status 1 which was an error, and I tried it again just now and am getting the status 4 on the driver as well.

@bcopeland should the CRC put out in the debugging for the Binary updater driver match the CRC of the file locally on my drive? I am getting "45be" in debugging and the file on disk is "2144DF1C" so totally different.

What are you using for your crc calculation?

Just put it in a zip file with 7Zip. That was the easiest thing I have on hand and I trust it. Unless the driver is calculating a different type of CRC. Will see if I can find the old app I used to use to calculate a bunch of different ones on windows.

It is.. Z-Wave expects a specific variant of 16-bit crc

The checksum MUST be calculated using the CRC-CCITT polynomial using initialization value equal to 0x1D0F and 0x1021 (normal representation).

I tried the driver again last night and now it suddenly worked. Got a final status back of 255 and the firmware is updated. I think mostly all I changed in the code was some of the logging so I could see what was going on better, nothing major. So maybe this device is just being feisty.

Never was able to get the app to work though on either devices.

I'm seeing the same error on an C7 when trying to upgrade the firmware on a ZEN74 from 1.02 to 10.0. I've done lots of power-off of the HE for 30 seconds, turning the breaker off to the switch, removing and re-adding the firmware updater but every time the same result. S2 authentication is enabled. I've tried the old update method but I get the sleepy device error and couldn't upload. If there is a specific version of the binary updater needed to upgrade S2 devices I've not yet found it.

I should add that my z-wave firmware is up to date and the platform version is 2.2.7.128.

I excluded the ZEN74 and added it back with no security. I was then able to use the Hubitat device firmware updater to successfully update the switch. It completed with FirmwareUpdateMdStatusReport(status:255) rather than the previous status:4.

Now to exclude and add it back with security and update my rules.

1 Like

There is no real need to have a switch paired securely. It doesn't really help anything to do so. I would just leave it paired the way it is.

2 Likes

I understand that, but I also work in Information Security and I can't leave well enough alone.