[RELEASE] Z-Wave Firmware Updater

I have a C-5, so I guess mine doesn't have the built-in version, right?

What I imported was the code from GitHub in the link you provided - I assume that is what you are referring to as the community version, right?

Right.

There are two versions of the updater. The first (original) version works on some types of firmware files, but has bugs on some types, and the second version works on the other types. See my post upthread for a discussion and links.

But even the updated version does not support installing from local files, right?

If for some reason I needed to install the updated version, do I need to uninstall the previous version and how do I do that? Sorry if this seems basic. I'm just learning how this whole community developed thing works.

Does anyone know if Leviton has updated firmware available on the internet that can be used with the community firmware updater?

Right. And both of the community versions are unsupported now that Bryan Copeland joined Hubitat staff.

Your alternative is to get a Z-Wave USB stick and use PC Controller, which is part of SiLabs free SimplicityStudio software. The USB stick method is much faster and supports all types.

I got this one from Digi-Key:

https://www.digikey.com/en/products/detail/silicon-labs/SLUSB001A/9867108

No, just give the drivers different names. I call the second one (the “new” one) the Z-Wave Binary Updater. It’s not basic, it’s confusing. You are encountering the same confusion all of us have had. It’s confusing to have two versions with the same name and the same version number.

The “right” way would be if the driver was supported for those of us with C-5 hubs, and if the two drivers were combined with the bugs fixed. But I don’t believe that’s going to happen. Bryan Copeland has said that any member of the community can pick them up, fix the bugs, and modify them going forward.

1 Like

So I actually did that - got an Aeotec Z-stick and the problem I'm having is that it's not finding over half of the devices for some reason. Of the 20 or so that it did find, 3 needed new firmware and were updated perfectly. But for some reason it can't find about 40 of the devices despite Hubitat seeing them just fine.

Hence, I thought a Hubitat-based solution might help to find and update those remaining devices.

My only other option is to exclude, include again and then search for the problem devices. Which will take a long while.

Might a dropbox account or google drive allow you to load from a URL?

1 Like

Yep, that works.

1 Like

I see a lot of people are asking about the firmware updates for the Leviton devices. Any idea what was fixed or changed? Is it worthwhile to try and update my devices?

I was having problems with the dashboard buttons for the Levitown switch not receiving correct and updated status information from the switches. Also they would jam in the sending mode and not refresh until I refresh the entire dashboard. This problem I was able to fix when I was able to update the firmware on the Levitown switch to 1.20. However, I’m still having trouble finding about nine of my switches to update them.

1 Like

I looked at Leviton's firmware update files. They all seem to end in .dll extension except for one executible. I think I read somewhere that the file has to be in *.ota or *.hex format to use this, correct?

Please see my post up thread explaining the types of files that the two versions of the driver can handle. Neither type can handle .exe or .dll files. There is discussion about how to extract/create a .hex file from an .exe file.

I have a Zooz Zen16 that I am trying to update from Version 1.0 to 1.03. When I put the C:\ZEN16.otz in the URL, the device hangs on the following:

Current States

  • currentFirmwareVersion : 1.0
  • firmwareFragmentSize : 40
  • firmwareUpdateProgress : Downloading firmware...
  • lockedBy : None
  • firmwareUploadPercent : null
  • manufacturerId : null
  • firmwareTarget : null

I got the file from Zooz and Im not sure what I am doing wrong. Thanks!!

I believe it works via a valid URL and not a local file system

1 Like

Unclear what hub you have. If you have a C-7, you can use the built-in Device Firmware Updater app, which allows you to upload the file to the hub’s internal file system and flash from there.

https://docs.hubitat.com/index.php?title=Device_Firmware_Updater

If you are using the driver version on a C-5 or earlier, you should be able to use the URL that Zooz supplied in their email. That’s what I did when I updated my ZEN-16 on my C-5. I have also subsequently used the Device Firmware Updater app on my C-7 to do the same thing, but, with the DFU app, I first uploaded the file through the app, rather than using the URL.

The driver version (be aware that there are two versions, for different firmware file types, see my posts upthread) will not update a ZEN-16 that is securely paired. You would need to exclude, factory reset the device, and include again without security. Also, I have never been able to update my ZEN-16 unless it was about a foot from the hub (whether C-5 or C-7).

Thanks to all who tried to help with my issue.

I didn't seem to be able to update the firmware with Hubitat so I followed Zooz's instructions at

https://www.support.getzooz.com/kb/article/253-how-to-perform-an-ota-firmware-update-on-zooz-devices/

Below is my conversation with Zooz Support (witch is excellent, by the way) and the issue was resolved.

Me: I am stuck on step 10 in your firmware update guide. Please see screenshot and advise. Thanks. I’m using your file for the ZEN16 to try to update.

Zooz Support: Could you try changing the fragment size to 20 to see if that helps? If it doesn't, could you try downgrading the suite software, using the same 20 fragment size?

Me: Changing to 20 worked!! Thank you!

1 Like

The difference between your unsuccessful attempts and my successful updates (using updater device driver on C-5 and Updater app on C-7) is that I see from your screenshot that your ZEN16 is paired S2, whereas mine is paired without security. I don’t see that you mentioned that point.

Your are correct, I didn't mention that fact because I thought there was only one way to pair. I honestly didn't know how to pair without security on the Hubitat. I now assume that the Zooz method paired with security but changing the fragment size let it update.

That being said, I have had multiple issues with Hubitat (HE) from Rule Machine slow downs and fails to freezes. I wanted to migrate the ZEN16 over to Home Assistant (HA), which works much better probably because it is running on a laptop and not the underpowered Hubitat, IMO. HA has a steep learning curve but it was so frustrating dealing with the issues with HE.

Thanks for your input and help. I appreciate it very much!

I have noticed that for some reason the newest PC Controller within Simplicity Studio (5.51 for me) does not correct the fragment size on some of the Zooz devices when you do the "get" but the older standalone 5.39 version does. As you have found manually setting it to 20 does the trick. The newer 700 series devices have a fragment size of 28 apparently and the newest PC controller figures those out just not the older ones with a fragment size of 20, Strange.

Also you are not alone with the update App/Driver. I have rarely gotten them to work correctly so I just gave up and use the stick and PC controller usually.

That's my plan too. I'm sticking with the stick (pun intended, lol).