I'm using the Device Firmware Update App for the first time, to bump my (S2-paired) Zooz ZEN74 from 2.20 to 2.40, but the process is taking for - ev - er. Transmitting the 146k .gbl file at this rate will take at least 10 hours!
After reading the relevant docs, and seeing this {1} and this{2} earlier posts about excruciatingly slow OTA updates, I wanna assume this isn't crazy unusual, but. . . ?
So I was hoping @bcopeland could maybe chime in to help set my expectations? Part of me is kinda happy the process goes slowly, cuz it gave me a chance to Abort when I accidentally started sending the f/w intended for a 700-series ZEN74 to my device, which is 800LR. But that process was nearly 30% complete after only a few minutes, making this attempt seem almost frozen by comparison.
EDIT 1: Discussion {1} linked above clarified things a bit, namely that the Updater app will fail every time when sending .GBL data to S2-included devices (why doesn't the app warn users about this known issue?), and made good suggestions about device placement along with alternative methods.
EDIT 2: I excluded then re-included the ZEN74 without security, and am about to take another stab at the OTA f/w update. Success! Process took exactly 16 minutes. Still shows "2.20" in device details, so figure it's time to power-cycle the switch at the breaker box. (Yep, that did the trick. Showing "2.40" now.)
As I see it looks to depend on the device brand and type. I just updated some Shelly Wave devices where one type takes 20(!) hours and the next type just one for a similar file size. I tried on a C7 and C8 with the same results. The slow devices where all within 2-3 meters of the Hubs, one of the fast 30 meters via a repeating node. With the slow ones the hub just send one packet per ten seconds, if you then have over 6000 packets it comes to the 20 hours. The fast ones did 5-10 packets per second. All devices in this sample have an 800 chip, the oldest where the fastest. In the past i updated other devices, 700 and 800 series, but none where are slow as these Shelly's. All devices are included without security.
Just adding my experience for comparison. I've updated 10 of my various Inovelli red series switches last week, each took between 30 seconds to a minute to update. All were successful - C-8 Pro, running JS, none encrypted, all reporting 100kbps speed, mix of 700 and 800 series.
I've been on JS for a while, but recently had to go back to ZIP/legacy due to some show-stopper device-level reporting issues on JS lately.
A few months ago(?), Bryan fixed the native Updater tool, and it works awesome on JS for all devices (S2, mesh, LR, etc). After recently going back to ZIP, I attempted a Zen17 update, and it never even got going -- maybe if I waited longer, it would've done the super slow update. I went back to JS just to do that Z17 update, and it went lickety-split
ETA - Bobby, if I replied to your post, that wasn't my specific intent -- I meant to reply to OP or just to topic in general, but I may have screwed that up!
Good to have all these data points to draw from. I would argue that the (native) Firmware Updater tool should refuse to attempt updates on S2-included devices, if that remains verboten. Maybe even include some language about how long the overall process might take, so users don't think they're bricking something important.
Happily for me, the 10-hour scare in the OP turned into a 15-minute thing and all is well. I look forward to trying the other version of the app by @bcopeland who hasn't really chimed in yet on this or the other two linked threads. His insights would be most welcome.
I've had all of my ZW devices S2 for a long time (several years now - well before JS), and although the updater had issues with S2 long ago, that eventually did get fixed.
But perhaps the more recent fixes to patch LR-device updates in JS broke something once again for S2 devices on ZIP?
I am in process of putting together my new home. On a C8Pro Zooz 800 LR Zen76 and 77 take about 1-2 mins to update. I am on JS but I didn’t think I was until searched what the “switch to legacy” meant on the zwave details page last week. And i originally was doing all LR (never did that before bc my old house was C7 based). I switched to mesh bc I found out LR could not support associations. And I have connected everything with no security. I know, I know, I have ready S2 does not have any impact and it has better error detection, but I went back to my comfort zone. And I have recently connected a couple outlier switches with LR where I don’t need associations.
And I learned something reading this thread. I thought LR did not support FW updates. Never too old to learn
Oh. Zen32 take 2x longer for some reason. They also take longer to bootstrap.
The general idea is to do the firmware update with as few complications as possible, while also preserving you device apps & rules settings. Device Swap is your friend, unless you're dealing with parent/child devices (doesn't work, hint, hint, gopher.ny).
My bad, I've copied here most of what's relevant and reformatted the bulleting that messed up the original post as best I can. Now for the brief "boiler-plate" formalities.
"WARNING" - I do not represent Hubitat, nor do I make any claims of warranty towards their products, methods, or updating software. These instructions are strictly 'USE AT YOUR OWN RISK.' Always have a backup and UPS available when updating firmwares.
Now, per the posting from Jul 2023:
Here's the write-up on updating firmwares so you can evaluate and mod it for inclusion in the help menu. Oops, copy and paste converted the numbers to bullets, I don't have a fix for that, but the steps should be 1 thru 9 and sub-steps a-z etc...
Solution for upgrade Z-wave firmware failures:
This applies to devices that are already in “Secure” mode, S0 – S2. Mixing of a mesh network of 500 and 700 chipset devices creates a communication speed issue when upgrading “Secure” devices. In short, it slows down the ability to upgrade the firmware to the point of “time-out” failure.
The following procedure should give you a plausible fix with as little aggravation as possible and without breaking apps or rules.
Go to Devices page and then Add Device
a. From there you’re going to add a <> Virtual Device matching the Device "type" you intend to firmware upgrade. Give it a temporary name that you’ll use in the next part.
Go to Settings and go to Swap Apps Device
a. Select the Device you’re upgrading as your “old” device.
b. Select your new virtual device as the “new” device.
c. Click “Swap old device in all apps”.
Go to Settings and then the Z-Wave Details page.
a. Use Z-Wave Exclude to put the hub in Exclusion Mode.
b. Without triggering any other Z-wave devices during this process, use your device’s specific Exclude procedure to then remove the device from the hub.
Go to Devices page and then Add Device
a. Proceed with add Z-wave device and then Start Z-Wave Inclusion
b. Without triggering any other Z-wave devices during this process, use your device’s specific Inclusion procedure to then add the device to the hub.
c. When prompted for security mode, select “without”, or unsecured. This will add the device in “unsecured” mode.
d. Give the device the previously used name.
Go to Apps page and proceed to Device Firmware Updater if it’s listed or add it from the + Add Built-in App.
a. Add to the Firmware File Manager whichever firmware file (usually a .GBL) you are going to use for your specific device.
b. In the same page, proceed to Update Z-Wave Firmware
c. Select Device to update
d. Select the Firmware Target
e. Select the Firmware File
f. Click Start Firmware Update –WARNING!!! (do not disrupt the hub or power to the updating device or you could “brick” your device)
g. Wait for the update to finish, which should typically take <30 minutes.
h. If it fails at this point, then check the device to see if it’s still functional, power cycle it if not and try the update after a hub reboot. If it’s still not functioning, then either the device is probably faulty or you used the wrong firmware during the update.
If firmware update is successful, congrats, you can proceed further.
Repeat steps 3 and 4, but at 4 c, you can proceed with putting your device back in “Secure” mode S0 – S2. Continue with step 4 d. Skip 5-7 and continue to Step 8.
Go to Settings and go to Swap Apps Device
a. Select your added virtual device as the “old” device.
b. Select your updated device as your “new” device.
c. Click “Swap old device in all apps”.
Got to Devices page.
a. Select your previously added virtual device.
b. At the bottom the page, click Remove Device and click Remove in the dialog box.
Congratulations, you have upgraded your firmware and without breaking the devices, or your apps or rules.