ioBroker / ioBroker.zigbee

Zigbee communcation with Hue, Xiaomi, Lighttify... via TI CC2xxx USB stick
MIT License
315 stars 190 forks source link

ZigBee Adapter crashes into Bootloop #1425

Closed ScumbagSteve closed 1 year ago

ScumbagSteve commented 2 years ago

Since a few weeks I have the problem that my ZigBee Adapter crashes completely and ioBroker shuts it down, because it detected a bootloop. I have to start manually again, after confirming the restart loop popup. Sometimes it happens 5 times a day, sometimes it doesn't happen a few days. It's incredibly annoying, because I have to open ioBroker, before I can use my lights. I have analyzed the log and the scheme seems to be the same every time. A device announced itself and then the "unhandled promise rejction" seems to crash with the famous "NWK_TABLE_FULL" error.

I have set the ZigBee network on a channel, where almost no WiFi traffic exists. It also happens when no one is at home, and therefore no WiFi traffic, or ZigBee traffic should exist (despit the normal "pings"). I therefore think, the network traffic (which seems to be assumed for this error message), is no the problem.

I have tried upgrading to the latest git version, and after it downgraded. All without effect. I currently assume it's because I went over 100 ZigBee devices in my network. I have removed a few to get below 100 and it seems to work now. I have the CC26X2R1 which should be able to handle >100 devices.

I have also upgraded Node + NPM to different versions, but also without effect.

Node.js:v14.19.1 NPM:6.14.16

Here is the error message scheme:

2022-04-22 08:41:17.194  - [33mwarn[39m: zigbee.0 (983) Device '0x0017880102038054' announced itself
2022-04-22 08:41:17.198  - [31merror[39m: zigbee.0 (983) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
2022-04-22 08:41:17.198  - [31merror[39m: zigbee.0 (983) unhandled promise rejection: SREQ '--> ZDO - extRouteDisc - {"dstAddr":36166,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 08:41:17.198  - [31merror[39m: zigbee.0 (983) Error: SREQ '--> ZDO - extRouteDisc - {"dstAddr":36166,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
    at Object.func (/opt/iobroker/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:322:27)
    at Queue.executeNext (/opt/iobroker/node_modules/zigbee-herdsman/src/utils/queue.ts:32:32)
2022-04-22 08:41:17.199  - [31merror[39m: zigbee.0 (983) SREQ '--> ZDO - extRouteDisc - {"dstAddr":36166,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 08:41:17.203  - [32minfo[39m: zigbee.0 (983) cleaned everything up...
2022-04-22 08:41:17.284  - [32minfo[39m: zigbee.0 (983) Zigbee: disabling joining new devices.
2022-04-22 08:41:17.538  - [32minfo[39m: pushover.0 (479) Send pushover notification: {"message":"Availablenicht erreichbar. Starte neu..","title":"ioBroker","priority":"0"}
2022-04-22 08:41:17.703  - [32minfo[39m: zigbee.0 (983) terminating
2022-04-22 08:41:17.703  - [33mwarn[39m: zigbee.0 (983) Terminated (UNCAUGHT_EXCEPTION): Without reason
2022-04-22 08:41:18.256  - [31merror[39m: host.c4fec676c136 Caught by controller[0]: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
2022-04-22 08:41:18.257  - [31merror[39m: host.c4fec676c136 Caught by controller[1]: Error: SREQ '--> ZDO - extRouteDisc - {"dstAddr":36166,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 08:41:18.257  - [31merror[39m: host.c4fec676c136 Caught by controller[1]:     at Object.func (/opt/iobroker/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:322:27)
2022-04-22 08:41:18.257  - [31merror[39m: host.c4fec676c136 Caught by controller[1]:     at Queue.executeNext (/opt/iobroker/node_modules/zigbee-herdsman/src/utils/queue.ts:32:32)
2022-04-22 08:41:18.257  - [31merror[39m: host.c4fec676c136 instance system.adapter.zigbee.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
2022-04-22 08:41:18.257  - [32minfo[39m: host.c4fec676c136 Restart adapter system.adapter.zigbee.0 because enabled
2022-04-22 08:41:48.277  - [32minfo[39m: host.c4fec676c136 instance system.adapter.zigbee.0 started with pid 4768
2022-04-22 08:41:50.219  - [32minfo[39m: zigbee.0 (4768) starting. Version 1.6.16 in /opt/iobroker/node_modules/iobroker.zigbee, node: v12.22.7, js-controller: 3.3.22
2022-04-22 08:41:50.303  - [32minfo[39m: zigbee.0 (4768) Starting Zigbee  npm ...
2022-04-22 08:41:50.551  - [32minfo[39m: zigbee.0 (4768) Installed Version: iobroker.zigbee@1.6.16
2022-04-22 08:41:51.086  - [33mwarn[39m: zigbee.0 (4768) Extended PAN ID is reversed (expected=00124b00219fc35d, actual=5dc39f21004b1200)
2022-04-22 08:41:51.384  - [32minfo[39m: zigbee.0 (4768) Coordinator firmware version: {"type":"zStack3x0","meta":{"transportrev":2,"product":1,"majorrel":2,"minorrel":7,"maintrel":1,"revision":20220219}}
2022-04-22 08:41:51.390  - [32minfo[39m: zigbee.0 (4768) Unable to disable LED, unsupported function.
2022-04-22 08:41:51.394  - [32minfo[39m: zigbee.0 (4768)   --> transmitPower : normal
2022-04-22 08:41:51.416  - [32minfo[39m: zigbee.0 (4768) Currently 100 devices are joined:

22 09:00:08.770  - [33mwarn[39m: zigbee.0 (4768) Device '0x001788010219b64a' announced itself
2022-04-22 09:00:08.775  - [31merror[39m: zigbee.0 (4768) Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch().
2022-04-22 09:00:08.775  - [31merror[39m: zigbee.0 (4768) unhandled promise rejection: SREQ '--> ZDO - extRouteDisc - {"dstAddr":21200,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 09:00:08.775  - [31merror[39m: zigbee.0 (4768) Error: SREQ '--> ZDO - extRouteDisc - {"dstAddr":21200,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
    at Object.func (/opt/iobroker/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:322:27)
    at Queue.executeNext (/opt/iobroker/node_modules/zigbee-herdsman/src/utils/queue.ts:32:32)
2022-04-22 09:00:08.776  - [31merror[39m: zigbee.0 (4768) SREQ '--> ZDO - extRouteDisc - {"dstAddr":21200,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 09:00:08.792  - [32minfo[39m: zigbee.0 (4768) cleaned everything up...
2022-04-22 09:00:08.896  - [32minfo[39m: zigbee.0 (4768) Zigbee: disabling joining new devices.
2022-04-22 09:00:09.165  - [32minfo[39m: pushover.0 (479) Send pushover notification: {"message":"Availablenicht erreichbar. Starte neu..","title":"ioBroker","priority":"0"}
2022-04-22 09:00:09.291  - [32minfo[39m: zigbee.0 (4768) terminating
2022-04-22 09:00:09.292  - [33mwarn[39m: zigbee.0 (4768) Terminated (UNCAUGHT_EXCEPTION): Without reason
2022-04-22 09:00:09.846  - [31merror[39m: host.c4fec676c136 Caught by controller[0]: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
2022-04-22 09:00:09.847  - [31merror[39m: host.c4fec676c136 Caught by controller[1]: Error: SREQ '--> ZDO - extRouteDisc - {"dstAddr":21200,"options":0,"radius":30}' failed with status '(0xc7: NWK_TABLE_FULL)' (expected '(0x00: SUCCESS)')
2022-04-22 09:00:09.847  - [31merror[39m: host.c4fec676c136 Caught by controller[1]:     at Object.func (/opt/iobroker/node_modules/zigbee-herdsman/src/adapter/z-stack/znp/znp.ts:322:27)
2022-04-22 09:00:09.847  - [31merror[39m: host.c4fec676c136 Caught by controller[1]:     at Queue.executeNext (/opt/iobroker/node_modules/zigbee-herdsman/src/utils/queue.ts:32:32)
2022-04-22 09:00:09.847  - [31merror[39m: host.c4fec676c136 instance system.adapter.zigbee.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
2022-04-22 09:00:09.847  - [32minfo[39m: host.c4fec676c136 Restart adapter system.adapter.zigbee.0 because enabled
2022-04-22 09:00:12.097  - [32minfo[39m: host.c4fec676c136 instance system.adapter.ical.0 started with pid 4882
2022-04-22 09:00:12.998  - [32minfo[39m: host.c4fec676c136 instance system.adapter.ical.1 terminated with code 0 (NO_ERROR)
2022-04-22 09:00:39.865  - [32minfo[39m: host.c4fec676c136 instance system.adapter.zigbee.0 started with pid 4912
2022-04-22 09:00:41.780  - [32minfo[39m: zigbee.0 (4912) starting. Version 1.6.16 in /opt/iobroker/node_modules/iobroker.zigbee, node: v12.22.7, js-controller: 3.3.22
2022-04-22 09:00:41.837  - [32minfo[39m: zigbee.0 (4912) Starting Zigbee  npm ...
2022-04-22 09:00:42.074  - [32minfo[39m: zigbee.0 (4912) Installed Version: iobroker.zigbee@1.6.16
2022-04-22 09:00:42.469  - [33mwarn[39m: zigbee.0 (4912) Extended PAN ID is reversed (expected=00124b00219fc35d, actual=5dc39f21004b1200)
2022-04-22 09:00:42.686  - [32minfo[39m: zigbee.0 (4912) Coordinator firmware version: {"type":"zStack3x0","meta":{"transportrev":2,"product":1,"majorrel":2,"minorrel":7,"maintrel":1,"revision":20220219}}
2022-04-22 09:00:42.692  - [32minfo[39m: zigbee.0 (4912) Unable to disable LED, unsupported function.
2022-04-22 09:00:42.695  - [32minfo[39m: zigbee.0 (4912)   --> transmitPower : normal
2022-04-22 09:00:42.717  - [32minfo[39m: zigbee.0 (4912) Currently 100 devices are joined:
Ilovegym66 commented 2 years ago

Hi, the CC26X2R1 have not real limit, I'd in some cases more as 200 devices online, in the moment the Zigbee Adapter 1.6.18 running with 196 Devices fine: 2022-04-24 10:21:58.949 - info: zigbee.0 (507100) Coordinator firmware version: {"type":"zStack3x0","meta":{"transportrev":2,"product":1,"majorrel":2,"minorrel":7,"maintrel":1,"revision":20220219}} 2022-04-24 10:21:58.957 - info: zigbee.0 (507100) Unable to disable LED, unsupported function. 2022-04-24 10:21:58.962 - info: zigbee.0 (507100) --> transmitPower : high 2022-04-24 10:21:58.978 - info: zigbee.0 (507100) Currently 196 devices are joined:

Running in an LXC Debian 10, Node 14, iobroker@latest

asgothian commented 2 years ago

Since a few weeks I have the problem that my ZigBee Adapter crashes completely and ioBroker shuts it down, because it detected a bootloop. I have to start manually again, after confirming the restart loop popup. Sometimes it happens 5 times a day, sometimes it doesn't happen a few days. It's incredibly annoying, because I have to open ioBroker, before I can use my lights. I have analyzed the log and the scheme seems to be the same every time. A device announced itself and then the "unhandled promise rejction" seems to crash with the famous "NWK_TABLE_FULL" error.

I have set the ZigBee network on a channel, where almost no WiFi traffic exists. It also happens when no one is at home, and therefore no WiFi traffic, or ZigBee traffic should exist (despit the normal "pings"). I therefore think, the network traffic (which seems to be assumed for this error message), is no the problem.

I have tried upgrading to the latest git version, and after it downgraded. All without effect. I currently assume it's because I went over 100 ZigBee devices in my network. I have removed a few to get below 100 and it seems to work now. I have the CC26X2R1 which should be able to handle >100 devices.

I have also upgraded Node + NPM to different versions, but also without effect.

Node.js:v14.19.1 NPM:6.14.16

Adapter version and Node Version have no impact on this error. The response NWK_TABLE_FULL is considered a critical error in the zigbee-herdsman library. The response itself is generated by the Firmware on your Router. There are 4 possibilities.

A.