dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.9k stars 498 forks source link

Philips SMART Button pairs but Button starts to blink after 10s #7664

Closed thisIsLoading closed 6 months ago

thisIsLoading commented 6 months ago

Does the issue really belong here?

Is there already an existing issue for this?

Describe the bug

when pairing my smart button i get this in the logs (see below)

the button stops blinking, everything seems fine. BUT, after 10s sharp the button starts blinking green, red and orange and then only orange as if it were in pairing mode again, all on its own.

its as if there is like a disconnect

after mayb 5min it stops blinking but stays disconnected from deconz.

this is my stick:

image

maybe i do something wrong?

Steps to reproduce the behavior

  1. go to switches
  2. click add new switch
  3. Philips -> Smart Button
  4. press and hold the smart button until it blinks read
  5. release button and wait for the pairing ok message
  6. wait 10s and button starts blinking again

Expected behavior

button keeps connection

Screenshots

No response

Environment

Bus 004 Device 003: ID 05e3:0626 Genesys Logic, Inc. Hub Bus 004 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. Hub Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 010: ID 0403:6015 Future Technology Devices International, Ltd Bridge(I2C/SPI/UART/FIFO) Bus 003 Device 009: ID 0764:0601 Cyber Power System, Inc. PR1500LCDRT2U UPS Bus 003 Device 006: ID 045e:0800 Microsoft Corp. Wireless keyboard (All-in-One-Media) Bus 003 Device 004: ID 05e3:0610 Genesys Logic, Inc. Hub Bus 003 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. RTS5411 Hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 002: ID 0bda:9210 Realtek Semiconductor Corp. RTL9210 M.2 NVME Adapter Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

deCONZ Logs

deconz | 23:39:38:291 APS-DATA.indication from unknown node 0x001788010B9E2145 deconz | 23:39:38:291 CTRL create node 0x001788010B9E2145, nwk: 0xF6DF deconz | 23:39:38:307 device announce 0x001788010B9E2145 (0xF6DF) mac capabilities 0x80 deconz | 23:39:38:307 set fast probe address to 0x001788010B9E2145 (0xF6DF) deconz | 23:39:38:307 FP indication 0x0000 / 0x0013 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:307 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:307 device announce 0x001788010B9E2145 (0xF6DF) mac capabilities 0x80 deconz | 23:39:38:307 DEV Tick.Join: event/device.anounce deconz | 23:39:38:307 DEV Tick: fast poll 0x001788010B9E2145, mac capabilities: 0x80 deconz | 23:39:38:311 ZDP get node descriptor for 0xF6DF deconz | 23:39:38:366 FP indication 0x0000 / 0x0013 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:366 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:366 device announce 0x001788010B9E2145 (0xF6DF) mac capabilities 0x80 deconz | 23:39:38:366 FP indication 0x0000 / 0x0013 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:366 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:366 device announce 0x001788010B9E2145 (0xF6DF) mac capabilities 0x80 deconz | 23:39:38:366 DEV Tick.Join: event/device.anounce deconz | 23:39:38:830 DB UPDATE device_descriptors SET data = x'0240800b10528000002c800000', timestamp = 1710272378 WHERE device_id = (SELECT id FROM devices WHERE mac = '00:17:88:01:0b:9e:21:45') AND endpoint = 0 AND type = 2 deconz | 23:39:38:830 DB INSERT INTO device_descriptors (device_id, endpoint, type, data, timestamp) SELECT id, 0, 2, x'0240800b10528000002c800000', 1710272378 FROM devices WHERE mac = '00:17:88:01:0b:9e:21:45' deconz | 23:39:38:848 FP indication 0x0000 / 0x8002 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:848 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:38:848 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8002 deconz | 23:39:38:848 ZDP get active endpoints for 0xF6DF deconz | 23:39:38:854 [2] get active endpoints for 0x001788010b9e2145 deconz | 23:39:38:854 ZDP get active endpoints for 0xF6DF deconz | 23:39:39:262 FP indication 0x0000 / 0x8005 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:262 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:262 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8005 deconz | 23:39:39:262 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) clear timeout on cluster 0x8005 deconz | 23:39:39:262 ZDP get simple descriptor 0x01 for 0xF6DF deconz | 23:39:39:268 [3] get simple descriptor 0x01 for 0x001788010b9e2145 deconz | 23:39:39:268 ZDP get simple descriptor 0x01 for 0xF6DF deconz | 23:39:39:278 FP indication 0x0000 / 0x8005 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:278 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:278 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8005 deconz | 23:39:39:283 wait response fastEnddeviceProbe() 0x001788010B9E2145, elapsed 15 ms deconz | 23:39:39:310 FP indication 0x0000 / 0x8005 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:310 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:310 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8005 deconz | 23:39:39:316 wait response fastEnddeviceProbe() 0x001788010B9E2145, elapsed 47 ms deconz | 23:39:39:578 DB UPDATE device_descriptors SET data = x'0104013008010500000100030000fc00100819000000030004000600080005000010', timestamp = 1710272379 WHERE device_id = (SELECT id FROM devices WHERE mac = '00:17:88:01:0b:9e:21:45') AND endpoint = 1 AND type = 4 deconz | 23:39:39:578 DB INSERT INTO device_descriptors (device_id, endpoint, type, data, timestamp) SELECT id, 1, 4, x'0104013008010500000100030000fc00100819000000030004000600080005000010', 1710272379 FROM devices WHERE mac = '00:17:88:01:0b:9e:21:45' deconz | 23:39:39:593 FP indication 0x0000 / 0x8004 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:593 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:593 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8004 deconz | 23:39:39:593 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) clear timeout on cluster 0x8004 deconz | 23:39:39:598 [4.1] Get manufacturer code deconz | 23:39:39:623 FP indication 0x0000 / 0x8004 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:623 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:623 ZDP indication search sensors 0x001788010B9E2145 (0xF6DF) cluster 0x8004 deconz | 23:39:39:628 [4.1] Get manufacturer code deconz | 23:39:39:873 FP indication 0x0104 / 0x0000 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:873 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:39:878 [4.1] Get model ID deconz | 23:39:40:161 FP indication 0x0104 / 0x0000 (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:40:161 ... (0x001788010B9E2145 / 0xF6DF) deconz | 23:39:40:193 DEV found DDF for 0x001788010B9E2145, path: /usr/share/deCONZ/devices/philips/rom001_smart_button.json deconz | 23:39:40:791 SC config/allowtouchlink: not synced

Additional context

No response

thisIsLoading commented 6 months ago

i believe i have found the issue by coincidence:

as the button was basically trying to join all night, its battery was drained in the morning, so i had to replace it. with a new battery, i could pair it and then it was persistent and it worked.

then i was curious, removed the device and tried to re-join with the same issue as before, the device paired fine and after 10s sharp it disconnected by itself and started blinking.

again, i removed the battery, put it back in, paired it again and it sticked.

so, it seems as if the issue is with the button that you can not just pair to a new device without basically hard-resetting it by removing the battery first.

posting that for the curious googler in the future.