zigbee2mqtt
zigbee2mqtt copied to clipboard
SNZB-02D: Failed to interview - Error: Interview failed because can not get node descriptor
What happened?
I use Zigbee2MQTT as an addon with Home Assistant OS on RasbPi 4. I tried to pair a Sonoff SNZB-02D Smart Temperature Humidity Sensor.
It failed to pair and the device is listed as not supported.
Another SNZB-02D (the same delivery) paired successfully.
I tried several things:
- Tried to delete the device after fail (which fails too)
- Forcefully deleted the device before the next try
- Connect the adapter with extension cable to the pi
- Place the Sensor very close to the adapter
- Reset the Sensor by removing the battery several times
- Replaced the battery
- Tried to keep the Sensor alive by tapping the pairing button every 2 to 3 seconds
- Tried to pair via a Philips Hue bulb in another room
- Restarted Home Assistent and the whole pi
- Un- and re-pugged the adapter
What did you expect to happen?
I expected the device to pair successfully since it's supported.
How to reproduce it (minimal and precise)
- Start pairing mode in z2m frontend
- Hold pair button on the sensor for about 5 seconds until the pairing symbol starts to blink
- Wait for the error message
Zigbee2MQTT version
1.33.0
Adapter firmware version
20210708
Adapter
Sonoff_Zigbee_3.0_USB_Dongle_Plus / zStack3x0
Debug log
Whole herdsman debug log [click to expand]
Zigbee2MQTT:debug 2023-09-18 22:25:45: Received MQTT message on 'zigbee2mqtt/bridge/request/device/remove' with data '{"block":false,"force":true,"id":"0x94deb8fffe360fce","transaction":"jhruq-9"}' Zigbee2MQTT:info 2023-09-18 22:25:45: Removing device '0x94deb8fffe360fce' (block: false, force: true) 2023-09-18T20:25:45.233Z zigbee-herdsman:controller:database:log Writing database to '/config/zigbee2mqtt/database.db' Zigbee2MQTT:debug 2023-09-18 22:25:45: Clearing Home Assistant discovery topic for '0x94deb8fffe360fce' Zigbee2MQTT:info 2023-09-18 22:25:45: MQTT publish: topic 'zigbee2mqtt/0x94deb8fffe360fce', payload '' Zigbee2MQTT:info 2023-09-18 22:25:45: Successfully removed device '0x94deb8fffe360fce' (block: false, force: true) Zigbee2MQTT:info 2023-09-18 22:25:45: MQTT publish: topic 'zigbee2mqtt/bridge/response/device/remove', payload '{"data":{"block":false,"force":true,"id":"0x94deb8fffe360fce"},"status":"ok","transaction":"jhruq-9"}' 2023-09-18T20:25:51.652Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 32 - 2 - 4 - 129 - [0,0,25,0,157,1,1,13,0,141,0,181,226,3,0,0,12,17,106,1,0,134,18,5,8,9,16,0,0,157,1,29] - 194 2023-09-18T20:25:51.653Z zigbee-herdsman:adapter:zStack:znp:AREQ AF - dataRequest - {"dstaddr":413,"destendpoint":1,"srcendpoint":1,"clusterid":25,"transid":248,"options":0,"radius":30,"len":4,"data":{"type":"Buffer","data":[25,156,2,152]}} 2023-09-18T20:25:51.668Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,14,36,1,157,1,1,1,25,0,248,0,30,4,25,156,2,152,83] 2023-09-18T20:25:51.669Z zigbee-herdsman:adapter:zStack:unpi:parser --- parseNext [] 2023-09-18T20:25:51.672Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 4 - 1 - [0] - 100 2023-09-18T20:25:51.672Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 3 - 2 - 4 - 128 - [0,1,248] - 62 2023-09-18T20:25:52.153Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - mgmtPermitJoinReq - {"addrmode":15,"dstaddr":65532,"duration":254,"tcsignificance":0} 2023-09-18T20:25:58.432Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,5,37,54,15,252,255,254,0,228] 2023-09-18T20:25:58.440Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 54 - [0] - 82 2023-09-18T20:25:58.441Z zigbee-herdsman:adapter:zStack:znp:SRSP UTIL - ledControl - {"ledid":3,"mode":1} 2023-09-18T20:25:58.441Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,2,39,10,3,1,45] 2023-09-18T20:25:58.443Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 3 - 2 - 5 - 182 - [0,0,0] - 240 2023-09-18T20:25:58.443Z zigbee-herdsman:adapter:zStack:znp:AREQ parsed 1 - 3 - 7 - 10 - [0] - 108 2023-09-18T20:25:58.445Z zigbee-herdsman:adapter:zStack:znp:SRSP AF - dataRequestExt - {"dstaddrmode":2,"dstaddr":"0x000000000000fffd","destendpoint":242,"dstpanid":0,"srcendpoint":242,"clusterid":33,"transid":249,"options":0,"radius":30,"len":6,"data":{"type":"Buffer","data":[25,157,2,11,254,0]}} 2023-09-18T20:25:58.445Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,26,36,2,2,253,255,0,0,0,0,0,0,242,0,0,242,33,0,249,0,30,6,0,25,157,2,11,254,0,143] 2023-09-18T20:25:58.455Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 4 - 2 - [0] - 103 2023-09-18T20:25:58.455Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 3 - 2 - 4 - 128 - [0,242,249] - 204 2023-09-18T20:25:58.460Z zigbee-herdsman:adapter:zStack:znp:AREQ parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:10.182Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:26:10.329Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:26:10.338Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:26:10.339Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:10.959Z zigbee-herdsman:adapter:zStack:znp:AREQ parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:11.760Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:26:20.342Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:26:20.346Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:26:20.346Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:26:23.348Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:26:23.352Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:26:23.353Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:25.498Z zigbee-herdsman:adapter:zStack:znp:AREQ parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:26.299Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:26:33.359Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:26:33.362Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:26:33.363Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:26:43.366Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:26:43.370Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:26:43.371Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:46.111Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:26:46.374Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:26:46.380Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:26:46.382Z zigbee-herdsman:adapter:zStack:znp:SRSP parsed 12 - 2 - 5 - 202 - [250,237,206,15,54,254,255,184,222,148,0,0] - 144 2023-09-18T20:26:46.906Z zigbee-herdsman:adapter:zStack:znp:AREQ ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:26:56.387Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:26:56.391Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:26:56.391Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:27:06.396Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:27:06.400Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:27:06.400Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:27:09.404Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:27:09.408Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:27:09.409Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:27:19.414Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:27:19.418Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:27:19.419Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:27:29.422Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:27:29.426Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:27:29.427Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:27:32.429Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:27:32.433Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:27:32.434Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:27:42.439Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:27:42.443Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:27:42.445Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:27:52.449Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:27:52.452Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:27:52.453Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:27:55.458Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:27:55.462Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:27:55.463Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:28:05.466Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:28:05.470Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:28:05.471Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - extRouteDisc - {"dstAddr":60922,"options":0,"radius":30} 2023-09-18T20:28:15.474Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,69,250,237,0,30,109] 2023-09-18T20:28:15.477Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 69 - [0] - 33 2023-09-18T20:28:15.480Z zigbee-herdsman:adapter:zStack:znp:SRSP ZDO - nodeDescReq - {"dstaddr":60922,"nwkaddrofinterest":60922} 2023-09-18T20:28:18.483Z zigbee-herdsman:adapter:zStack:unpi:writer --> frame [254,4,37,2,250,237,250,237,35] 2023-09-18T20:28:18.487Z zigbee-herdsman:adapter:zStack:unpi:parser parsed 1 - 3 - 5 - 2 - [0] - 102 2023-09-18T20:28:18.488Z zigbee-herdsman:adapter:zStack:znp:SRSP
The last lines:
2023-09-18T20:28:28.498Z zigbee-herdsman:controller:device:log Interview - quirks check for 'undefined'-'undefined'-'Unknown'
2023-09-18T20:28:28.499Z zigbee-herdsman:controller:device:log Interview - quirks did not match
2023-09-18T20:28:28.501Z zigbee-herdsman:controller:device:log Interview - failed for device '0x94deb8fffe360fce' with error 'Error: Interview failed because can not get node descriptor ('0x94deb8fffe360fce')
at Device.interviewInternal (/app/node_modules/zigbee-herdsman/src/controller/model/device.ts:598:19)
at Device.interview (/app/node_modules/zigbee-herdsman/src/controller/model/device.ts:488:13)
at Controller.onDeviceJoined (/app/node_modules/zigbee-herdsman/src/controller/controller.ts:579:17)'
2023-09-18T20:28:28.501Z zigbee-herdsman:controller:database:log Writing database to '/config/zigbee2mqtt/database.db'
2023-09-18T20:28:28.510Z zigbee-herdsman:controller:error Interview failed for '0x94deb8fffe360fce with error 'Error: Interview failed because can not get node descriptor ('0x94deb8fffe360fce')'
Zigbee2MQTT:error 2023-09-18 22:28:28: Failed to interview '0x94deb8fffe360fce', device has not successfully been paired
Zigbee2MQTT:info 2023-09-18 22:28:28: MQTT publish: topic 'zigbee2mqtt/bridge/event', payload '{"data":{"friendly_name":"0x94deb8fffe360fce","ieee_address":"0x94deb8fffe360fce","status":"failed"},"type":"device_interview"}'
Is there anything else I can try? Or have I got a defective device?
I have similar issues with all the Sonoff devices. Its really hit and miss. sometimes it joins as unknown and other times it just doesn't join at all. No idea what's going on :(
Brandnew climate sensor SNZB-02D is also giving me headaches. Pairing works just fine but it won't provide any updates past the first partial one that rarely includes temperature and humidity, but most of the times just linkstatus and battery.
Logs to show it asking for OTA:
2023-10-18 18:00:04Device 'bla climate' announced itself info 2023-10-18 18:00:04MQTT publish: topic 'zigbee2mqtt/bridge/event', payload '{"data":{"friendly_name":"bla climate","ieee_address":"0x30fb10fffe6f1d3a"},"type":"device_announce"}' info 2023-10-18 18:00:04MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"message":"announce","meta":{"friendly_name":"bla climate"},"type":"device_announced"}' debug 2023-10-18 18:00:06Retrieving state of 'bla climate' after reconnect debug 2023-10-18 18:00:07Received Zigbee message from 'bla climate', type 'attributeReport', cluster 'genPowerCfg', data '{"batteryPercentageRemaining":200}' from endpoint 1 with groupID 0 info 2023-10-18 18:00:07MQTT publish: topic 'zigbee2mqtt/bla climate', payload '{"battery":100,"humidity":null,"linkquality":111,"temperature":null}' debug 2023-10-18 18:00:07Received Zigbee message from 'bla climate', type 'commandQueryNextImageRequest', cluster 'genOta', data '{"fieldControl":0,"fileVersion":4105,"imageType":2053,"manufacturerCode":4742}' from endpoint 1 with groupID 0 debug 2023-10-18 18:00:07Device 'bla climate' requested OTA debug 2023-10-18 18:00:08Responded to OTA request of 'bla climate' with 'NO_IMAGE_AVAILABLE'
This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days
Exactly the same error here with SNZB-02, the one without display. Logs are simple:
Info 2024-05-13 13:36:08Interview for '0x00124b002a6cce6b' started
Info 2024-05-13 13:36:08Device '0x00124b002a6cce6b' joined
Info 2024-05-13 13:36:08Starting interview of '0x00124b002a6cce6b'
Error 2024-05-13 13:42:11Interview failed for '0x00124b002a6cce6b with error 'Error: Interview failed because can not get node descriptor ('0x00124b002a6cce6b')'
Error 2024-05-13 13:42:11Failed to interview '0x00124b002a6cce6b', device has not successfully been paired
I was having this same issue and tried several times to pair a SNZB-02D sensor. I ended up replacing the battery with a brand new Panasonic CR2450 that I had in my drawer (even though the battery indicator showed it being 100%, but these are lithium batteries and they don't report accurately), and pressed the button for 5 seconds. It paired and the interview completed successfully! After the interview was complete, I put the no-name factory battery back in, and it seems to keep working.
This is a trick I learned for Aqara devices, and it appears that it may also be needed for Sonoff devices.