Blue 2-1 firmware won't update from 2.15 to 2.18

I have two Blue Series 2-1 switches, one was on Firmware version 2.17 and the other is on 2.15. I am running the latest version of zigbee2mqtt with a ConBee II. I was able to update the one on 2.17 to 2.18, but the one on 2.15 will not update to 2.18. I also remember having an issue trying to update it to 2.17 but didn’t have to time then to look at it. When I try to update it, it progresses as expected up to 100% then sits for a few mins and finishes. But when I read the latest swBuildID it still shows up as 2.15. Here are my zigbee2mqtt logs for the update:

Info <small>2024-05-04 14:26:39</small>`Updating 'switch_bathroom' to latest firmware`
Info <small>2024-05-04 14:26:41</small>`Update of 'switch_bathroom' at 0.00%`
...
Info <small>2024-05-04 14:52:38</small>`Update of 'switch_bathroom' at 100.00%`
Info <small>2024-05-04 14:54:38</small>`Finished update of 'switch_bathroom'`
Info <small>2024-05-04 14:54:38</small>`Configuring 'switch_bathroom'`
Info <small>2024-05-04 14:54:38</small>`Device 'switch_bathroom' was updated from '{"dateCode":"20230602","softwareBuildID":"2.15"}' to '{"dateCode":"20230602","softwareBuildID":"2.15"}'`
Info <small>2024-05-04 14:54:39</small>`Successfully configured 'switch_bathroom'`

I have somewhat the same issue. I have about 13 switches and only 3 are showing the right firmware after update.

What I did notice is that the other 10 when I updated them they don’t report the right firmware and when I try and check for new firmware it tells me that there is no firmware update available even though the switch reports that is in 2.15

That might be a quirk of zigbee2mqtt storing the old version in cache, take a look at this post.

1 Like

Yup, saw the post after my post. Thanks!
Will give it a try.

I’ve done that and I still see 2.15 for almost all of my switches (except 1 that is on 2.18 and Z2M correctly shows that, and 1 that is on 2.14 that I can’t get to update even to 2.15).

I have some 2.15 switches that don’t show that they need an update, while some show the button to upgrade.

I’m on Z2M 1.38.0-1 and HA 2024.5.4

I continue to have this exact same problem…my switches are stuck on 2.15 and I cannot upgrade them using Z2M. Anyone else having this issue??

Here are my most recent logs from Z2M OTA upgrade attempt

info 2024-10-24 21:40:00z2m: Device 'Avery Bedroom Lights' was updated from '{"dateCode":"20230602","softwareBuildID":"2.15"}' to '{"dateCode":"20230602","softwareBuildID":"2.15"}'
info 2024-10-24 21:40:01z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/response/device/ota_update/update', payload '{"data":{"from":{"date_code":"20230602","software_build_id":"2.15"},"id":"Avery Bedroom Lights","to":{"date_code":"20230602","software_build_id":"2.15"}},"status":"ok","transaction":"jhqw4-3"}'

@stu1811 or @EricM_Inovelli - you’ve both been helpful in the past on these types of issues. Can you take a look above and let me know if you have any ideas, or if you need any further information to help diagnose? Thanks in advance!

If you click on “Update device firmware” does the switch go through the update process from 0-100%? Or does not not start? Or does it only go part way through and then stop?

Also, can you follow the steps at the bottom of this document?:

Blue Series • How to Update Firmware With Home Assistant (Zigbee2MQTT) | Inovelli Help Center

Hi @EricM_Inovelli - the switch goes through the update process from 0-100%, yes (or at least, I’ve never noticed it fail part way through…it just completes and then stays on the old firmware. I’m re-running it again to see if it actually says 100% in the logs, and will report back).

Yep, followed those instructions to both manually check the version via dev console and to reconfigure the switch, but no luck.

Assuming the logs confirm it gets to 100%, have you then tried factory reseting the switch and re-pairing it? Sometimes a factory reset can work wonders, and it shouldn’t involve having to re-do anything – the Blue should re-pair and drop right back in where it was before.

I don’t think I’ve done a factory reset…will give that a shot tomorrow, thanks @hydro311!

Confirming the update gets to 100%

info 2024-11-09 21:07:29 z2m: Update of 'Garage Ceiling Lights' at 100.00%

I did a factory reset (hold A + Config for 20 seconds) and then re-paired. On the re-pair, I got this error message:

2024-11-10 09:35:52z2m: Failed to configure 'Théo Bedroom Lights', attempt 1 (Error: ZCL command 0x040d84fffe05f42f/1 genOnOff.configReport([{"attribute":"onOff","minimumReportInterval":0,"maximumReportInterval":3600,"reportableChange":0}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Timeout - 7217 - 1 - 169 - 6 - 7 after 10000ms) at Object.start (/app/node_modules/zigbee-herdsman/src/utils/waitress.ts:59:23) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:640:47) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:542:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:672:28) at /app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:422:20 at Queue.execute (/app/node_modules/zigbee-herdsman/src/utils/queue.ts:36:20) at ZStackAdapter.sendZclFrameToEndpoint (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:420:16))

Then I tried to read the swBuildId and got this:

2024-11-10 09:38:25z2m: Publish 'set' 'read' to 'Théo Bedroom Lights' failed: 'Error: ZCL command 0x040d84fffe05f42f/1 genBasic.read(["swBuildId"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Timeout - 32658 - 1 - 170 - 0 - 1 after 10000ms)'

The switch was flashing blue for a while but now is solid again, but I can’t communicate with it from Z2M / HomeAssistant (it’s showing as Offline in Z2M). The switch does seem to turn on/off, but it’s connected to smart bulbs via Zigbee Group binding, so the lights aren’t actually turning on/off (but the LED on the switch goes bright when I turn it on and dim when I turn it off).

Any ideas what happened and how to fix?

Here’s some additional messages received (including the two above) in case it’s useful:

2024-11-10 09:35:52z2m: Failed to configure 'Théo Bedroom Lights', attempt 1 (Error: ZCL command 0x040d84fffe05f42f/1 genOnOff.configReport([{"attribute":"onOff","minimumReportInterval":0,"maximumReportInterval":3600,"reportableChange":0}], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Timeout - 7217 - 1 - 169 - 6 - 7 after 10000ms) at Object.start (/app/node_modules/zigbee-herdsman/src/utils/waitress.ts:59:23) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:640:47) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:542:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:619:24) at ZStackAdapter.sendZclFrameToEndpointInternal (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:672:28) at /app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:422:20 at Queue.execute (/app/node_modules/zigbee-herdsman/src/utils/queue.ts:36:20) at ZStackAdapter.sendZclFrameToEndpoint (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:420:16))
2024-11-10 09:38:25z2m: Publish 'set' 'read' to 'Théo Bedroom Lights' failed: 'Error: ZCL command 0x040d84fffe05f42f/1 genBasic.read(["swBuildId"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Timeout - 32658 - 1 - 170 - 0 - 1 after 10000ms)'
2024-11-10 09:38:50z2m: Publish 'set' 'read' to 'Théo Bedroom Lights' failed: 'Error: ZCL command 0x040d84fffe05f42f/1 genBasic.read(["swBuildId"], {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"reservedBits":0,"writeUndiv":false}) failed (Data request failed with error: 'MAC no ack' (233))'
2024-11-10 09:39:00z2m: Failed to configure 'Théo Bedroom Lights', attempt 2 (Error: Bind 0x040d84fffe05f42f/1 seMetering from '0x00124b0024c7ab5c/1' failed (AREQ - ZDO - bindRsp after 10000ms) at Object.start (/app/node_modules/zigbee-herdsman/src/utils/waitress.ts:59:23) at /app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:403:47 at Queue.execute (/app/node_modules/zigbee-herdsman/src/utils/queue.ts:36:20) at ZStackAdapter.sendZdo (/app/node_modules/zigbee-herdsman/src/adapter/z-stack/adapter/zStackAdapter.ts:311:16) at Endpoint.bind (/app/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:563:30) at Object.bind (/app/node_modules/zigbee-herdsman-converters/src/lib/reporting.ts:42:9) at configure (/app/node_modules/zigbee-herdsman-converters/src/devices/inovelli.ts:2194:13) at Object.configure (/app/node_modules/zigbee-herdsman-converters/src/index.ts:205:21) at Configure.configure (/app/lib/extension/configure.ts:130:13) at EventEmitter.wrappedCallback (/app/lib/eventBus.ts:206:17))

I did another factory reset and it seems to be working better than it was. I had to do a reconfigure, but no more errors and other than a few settings being different from before, I think it’s generally ok now. Gonna try a firmware upgrade to see what happens.

Tried a firmware upgrade after the factory reset … no luck. Still goes to 100% but stays on the previous version (this switch is on 2.14). I’ll try another switch that’s stuck on 2.15 to see if that is any different, though.

Tried the 2.15 switch…failed:

...
info 2024-11-10 17:32:32z2m: Update of 'Downstairs Landing Light' at 55.76%, ≈ 13 minutes remaining
info 2024-11-10 17:33:02z2m: Update of 'Downstairs Landing Light' at 57.71%, ≈ 12 minutes remaining
info 2024-11-10 17:33:41z2m: Update of 'Downstairs Landing Light' at 59.79%, ≈ 12 minutes remaining
info 2024-11-10 17:34:11z2m: Update of 'Downstairs Landing Light' at 60.72%, ≈ 12 minutes remaining
info 2024-11-10 17:34:41z2m: Update of 'Downstairs Landing Light' at 61.90%, ≈ 11 minutes remaining
info 2024-11-10 17:35:23z2m: Update of 'Downstairs Landing Light' at 63.32%, ≈ 11 minutes remaining
info 2024-11-10 17:35:59z2m: Update of 'Downstairs Landing Light' at 63.32%, ≈ 11 minutes remaining
info 2024-11-10 17:36:11z2m:mqtt: MQTT publish: topic 'zigbee2mqtt/bridge/response/device/ota_update/update', payload '{"data":{"id":"Downstairs Landing Light"},"error":"Update of 'Downstairs Landing Light' failed (Update failed with reason: 'ABORT')","status":"error","transaction":"6f7it-5"}'
error 2024-11-10 17:36:11z2m: Update of 'Downstairs Landing Light' failed (Update failed with reason: 'ABORT')

If the firmware update was indeed successful, I was hoping the factory reset would just shake things loose such that the updated firmware value would be indicated.

Tried the most recent one again and it upgraded. Going to try the same with my other lights and will report back where I net out. Thanks for the advice so far!

I tried again this weekend with doing a factory reset and firmware update, and took the extra step to pull the switch out of the wall and reinstall it temporarily next to my zigbee module, but with the same results as before.

I was getting similar errors when I was testing this weekend. I think some of the registers have changed in the newer firmware versions so zigbee2mqtt doesn’t work well with the older firmware. I rolled back zigbee2mqtt to version 1.35.0 and the errors went away.

So I’ve been able to upgrade all switches successfully except two: one is stuck on 2.14 and the other on 2.15. The only thing different about these switches and the rest are that a) they are set up in smart bulb mode and b) they are both binded and in a group with the smart bulbs that they control. I can’t imagine this changes anything, but thought I should mention it.

Is there anything else I can do to force these two switches to upgrade?