Koenkk / zigbee2mqtt

Zigbee 🐝 to MQTT bridge 🌉, get rid of your proprietary Zigbee bridges 🔨
https://www.zigbee2mqtt.io
GNU General Public License v3.0
12.15k stars 1.68k forks source link

OTA update broke support for Xiaomi SSM-U01 - UNSUPPORTED_ATTRIBUTE #19902

Open Kugelfang666 opened 11 months ago

Kugelfang666 commented 11 months ago

What happened?

I‘m using several Xiaomi SSM-U01 ZigBee relays.

Yesterday I updated my devices from DEC 30 2021 to 20231025 (screenshot attached)

For the updated devices I‘m now finding this error in the logs (see below)

Would be great to know how to resolve / mitigate this issue

IMG_0434

What did you expect to happen?

No response

How to reproduce it (minimal and precise)

No response

Zigbee2MQTT version

1.33.2

Adapter firmware version

20230507

Adapter

TubesZB Ethernet version

Debug log

Failed to configure 'Garage Deckenlampen', attempt 1 (Error: ConfigureReporting XXREDACTEDXX/1 genDeviceTempCfg([{"attribute":"currentTemperature","minimumReportInterval":300,"maximumReportInterval":3600,"reportableChange":1}], {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (Status 'UNSUPPORTED_ATTRIBUTE') at Endpoint.checkStatus (/app/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:421:28) at Endpoint.configureReporting (/app/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:762:22) at processTicksAndRejections (node:internal/process/task_queues:96:5) at Object.deviceTemperature (/app/node_modules/zigbee-herdsman-converters/src/lib/reporting.ts:106:5) at Object.configure (/app/node_modules/zigbee-herdsman-converters/src/devices/xiaomi.ts:2740:13) at Configure.configure (/app/lib/extension/configure.ts:117:13) at Immediate.<anonymous> (/app/lib/extension/configure.ts:69:17))

erinaceinae commented 11 months ago

There might be a problem with the firmware. I updated it today, the same version and wall switch stopped working.

Edit: It looks the firmware file was for another HW version. After update a measured voltage is always 24.17V, current measurement is not working. I suppose GPIO for the wall switch changed and that's why it's not possible switch light from the wall switch. I tried to downgrade to previous version but with no success. OTA process starts, progress bar jump from 0% to 100%, after some time it shows "Device 'XXXX' was updated from 'null' to 'null" - firmware version remain, no change in module behavior. I'm not sure but probably it's partialy bricked :(

BlastyCZ commented 11 months ago

I have the same problem with voltage and current but power is working correctly... My wall switch is working fine. What is your wiring diagram? I use this one Screenshot_20231129-174706

erinaceinae commented 11 months ago

@BlastyCZ I have the same wiring. I tried manualy short S0 and S1 and nothing happen. Probably there are different HW versions, maybe firmware can detect the HW version by checking some of the GPIOs. Maybe this firmware didn't detect HW revision.

Edit: I checked and S1 and L are probably shorted inside the module. My connection diagram is the Diagram 1 but I have three switches connected in parallel. image I tried to short S0 with S1 with short piece of wire and it works but when I have longer wire to other switches - it don't :) (It worked before for 2 years before OTA).

Any idea how can I downgrade it to previous version?

brhahlen commented 11 months ago

I have the same issue here. Would be good to know how to revert to the previous version.

zigbee2mqtt  | Zigbee2MQTT:error 2023-12-01 15:02:39: Failed to configure 'switch_bathroom_fan', attempt 2 (Error: ConfigureReporting 0x54ef44100026e5de/1 genDeviceTempCfg([{"attribute":"currentTemperature","minimumReportInterval":300,"maximumReportInterval":3600,"reportableChange":1}], {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":true,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (Status 'UNSUPPORTED_ATTRIBUTE')
zigbee2mqtt  |     at Endpoint.checkStatus (/app/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:421:28)
zigbee2mqtt  |     at Endpoint.configureReporting (/app/node_modules/zigbee-herdsman/src/controller/model/endpoint.ts:762:22)
zigbee2mqtt  |     at Object.deviceTemperature (/app/node_modules/zigbee-herdsman-converters/src/lib/reporting.ts:106:5)
zigbee2mqtt  |     at Object.configure (/app/node_modules/zigbee-herdsman-converters/src/devices/xiaomi.ts:2884:13)
zigbee2mqtt  |     at Configure.configure (/app/lib/extension/configure.ts:117:13))
Otnow commented 11 months ago

It's a pity that this firmware version turned out to be problematic.

By analogy with another device, I can suggest trying to roll back the firmware version to 0.0.0.0023 using modified firmware (only the version number in the header has been changed to 99), but at your own risk, because device may become bricked:

20220121143603_lumi.switch.n0agl1_0.0.0.0023_20211230_0717A1_modded_to_v99.ota.zip

erinaceinae commented 11 months ago

@Otnow Thanks - I downgraded firmware using your modified file and it worked :) Wallswitch works, voltage and current measurements seems to be okay. Edit: I had to re-pair the device since it was switching on/off randomly, now it works fine.

w-marco commented 11 months ago

FWIW (i'm using ZHA though), for me this firmware version works on my variant of the Module.

Voltage is reported as 23V instead of 230V (it was just at 0 with the version before forever) but power works now which always reported 0 before.

It didn't break anything and on/off also still works.

rjaros87 commented 8 months ago

Does anyone have 0.0.0.0021 ota firmware file? :)

jrhansen commented 3 months ago

So... did anyone have the courage to install the newly found update (I don't know how to see the version)?

Kugelfang666 commented 3 months ago

After Rolling back I never considered looking into this again

jrhansen commented 2 months ago

FWIW: I have now successfully updated nine devices previously running firmwares: