Repository navigation
After upgrading from 2.9 to 2.13 network got slow #32864
Description
What happened?
Previously when pressing button and sending mqtt messages to switch off/on lights it worked almost instantly. Now after the update to the latest version there is considerable delay, multiple seconds. here you can see some logs
[2026-08-17 09:03:34] debug: z2m:mqtt: Received MQTT message on 'zigbee2mqtt/0x001788010821cd6f/set' with data '{"state":"OFF"}'
[2026-08-17 09:03:34] debug: z2m: Publishing 'set' 'state' to '0x001788010821cd6f'
[2026-08-17 09:03:34] debug: zh:controller:endpoint: ZCL command 0x001788010821cd6f/11 genOnOff.off({}, {"timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"reservedBits":0,"writeUnd>
[2026-08-17 09:03:34] debug: zh:zstack: sendZclFrameToEndpointInternal 0x001788010821cd6f:56095/11 (0,0,2)
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: <-- [254,1,100,1,0,100,254,3,68,128,0,1,30,216,254,25,68,129,0,0,6,0,198,48,1,1,0,3,0,43,52,180,0,0,5,24,6,11,0,0,198,48,29,127,254,27,68,129,0,0,6,0,198,48,1,1,0,7,0,72,163,180,0,0,7,24,2>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext [254,1,100,1,0,100,254,3,68,128,0,1,30,216,254,25,68,129,0,0,6,0,198,48,1,1,0,3,0,43,52,180,0,0,5,24,6,11,0,0,198,48,29,127,254,27,68,129,0,0,6,0,198,48,1,1,0,7,0,72,163,180,>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --> parsed 1 - 3 - 4 - 1 - [0] - 100
[2026-08-17 09:03:39] debug: zh:zstack:znp: <-- SRSP: AF - dataRequest - {"status":0}
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext [254,3,68,128,0,1,30,216,254,25,68,129,0,0,6,0,198,48,1,1,0,3,0,43,52,180,0,0,5,24,6,11,0,0,198,48,29,127,254,27,68,129,0,0,6,0,198,48,1,1,0,7,0,72,163,180,0,0,7,24,245,10,0,>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --> parsed 3 - 2 - 4 - 128 - [0,1,30] - 216
[2026-08-17 09:03:39] debug: zh:zstack:znp: <-- AREQ: AF - dataConfirm - {"status":0,"endpoint":1,"transid":30}
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext [254,25,68,129,0,0,6,0,198,48,1,1,0,3,0,43,52,180,0,0,5,24,6,11,0,0,198,48,29,127,254,27,68,129,0,0,6,0,198,48,1,1,0,7,0,72,163,180,0,0,7,24,245,10,0,0,16,0,198,48,29,109,254>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --> parsed 25 - 2 - 4 - 129 - [0,0,6,0,198,48,1,1,0,3,0,43,52,180,0,0,5,24,6,11,0,0,198,48,29] - 127
[2026-08-17 09:03:39] debug: zh:zstack:znp: <-- AREQ: AF - incomingMsg - {"groupid":0,"clusterid":6,"srcaddr":12486,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":3,"securityuse":0,"timestamp":11809835,"transseqnumber":0,"le>
[2026-08-17 09:03:39] debug: zh:controller: Received payload: clusterID=6, address=12486, groupID=0, endpoint=1, destinationEndpoint=1, wasBroadcast=false, linkQuality=3, frame={"header":{"frameControl":{"frameType":0,"manufacturerSpecific">
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext [254,27,68,129,0,0,6,0,198,48,1,1,0,7,0,72,163,180,0,0,7,24,245,10,0,0,16,0,198,48,29,109,254,28,68,129,0,0,4,11,198,48,1,1,0,14,0,173,147,181,0,0,8,24,249,10,11,5,41,0,0,198>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --> parsed 27 - 2 - 4 - 129 - [0,0,6,0,198,48,1,1,0,7,0,72,163,180,0,0,7,24,245,10,0,0,16,0,198,48,29] - 109
[2026-08-17 09:03:39] debug: zh:zstack:znp: <-- AREQ: AF - incomingMsg - {"groupid":0,"clusterid":6,"srcaddr":12486,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":7,"securityuse":0,"timestamp":11838280,"transseqnumber":0,"le>
[2026-08-17 09:03:39] debug: zh:controller: Received payload: clusterID=6, address=12486, groupID=0, endpoint=1, destinationEndpoint=1, wasBroadcast=false, linkQuality=7, frame={"header":{"frameControl":{"frameType":0,"manufacturerSpecific">
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext [254,28,68,129,0,0,4,11,198,48,1,1,0,14,0,173,147,181,0,0,8,24,249,10,11,5,41,0,0,198,48,29,138]
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --> parsed 28 - 2 - 4 - 129 - [0,0,4,11,198,48,1,1,0,14,0,173,147,181,0,0,8,24,249,10,11,5,41,0,0,198,48,29] - 138
[2026-08-17 09:03:39] debug: zh:zstack:znp: <-- AREQ: AF - incomingMsg - {"groupid":0,"clusterid":2820,"srcaddr":12486,"srcendpoint":1,"dstendpoint":1,"wasbroadcast":0,"linkquality":14,"securityuse":0,"timestamp":11899821,"transseqnumber":0>
[2026-08-17 09:03:39] debug: zh:controller: Received payload: clusterID=2820, address=12486, groupID=0, endpoint=1, destinationEndpoint=1, wasBroadcast=false, linkQuality=14, frame={"header":{"frameControl":{"frameType":0,"manufacturerSpeci>
[2026-08-17 09:03:39] debug: zh:zstack:unpi:parser: --- parseNext []
Any idea what could cause this? It has been now couple of days which should had have time to heal the network.
What did you expect to happen?
No significant difference to timings compared to 2.9.
How to reproduce it (minimal and precise)
send mqtt message to turn on light. It takes significantly longer than before.
Zigbee2MQTT version
2.13.0
Adapter firmware version
20250321
Adapter
Texas Instruments, Inc. CC1352R1 Launchpad
Setup
Z2M running plain on raspberry pi for years. Also just upgraded to node 26.
Linux raspberrypi 6.12.47+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.47-1+rpt1 (2025-09-16) aarch64 GNU/Linux
Debian GNU/Linux 13
Device database.db entry
No response
Debug log
No response
Notes
No response
Activity
ristoavila commentedon Aug 17, 2026
Moving to nodejs 24 and rolling back to 2.9 fixed the problem. Net work reactions are ok again.
I also noticed that with nodejs26 and 2.13.0 running systemctl stop zigbee2mqtt would wait until it kills all the processe. After rolling back to 2.9 it will exit fine with out killing the processes.
ristoavila commentedon Aug 17, 2026
hmm maybe it was slow because of the nodejs26 now with nodejs 24 also the 2.13.0 seems to work accordingly.
kref commentedon Aug 18, 2026
upstream issue serialport/bindings-cpp#239
Nerivec commentedon Aug 18, 2026
Latest Node 26.7 appears to also solve the serialport issue, if you want to check and report back 😉
ristoavila commentedon Aug 18, 2026
backtracking the node version it it showed node_version":"v26.7.0" on the time of testing. I used nodesource got get the debian package for rpi.
Nerivec commentedon Aug 28, 2026
Closing in favor of #32580
ristoavila commentedon Aug 31, 2026
case 32580 doesn't really seem to be a duplicate of this. Starting was just fine.
Nerivec commentedon Aug 31, 2026
It is the same node.js problem, which, really, is tracked in upstream library since not Z2M-specific, but 32580 is pinned in Z2M repo; avoids spreading feedback.