ebaauw / homebridge-nb

Homebridge plugin for Nuki Bridge
Apache License 2.0
51 stars 3 forks source link

lock state not updating properly after last update #133

Closed switey closed 4 months ago

switey commented 5 months ago

hello, lock stopped showing its current state properly ever since last update

this happens after regular lock/unlock actions via button presses as well as lock'n'go it works both ways, ie: lock stuck on "locked" even though lock button has been pressed to unlock the door lock stuck on "unlocked" after unlocking via homekit and being auto-relocked after 1 min (internal nuki lock setting) I can confirm that clicking "identify" fixes current state shown in homekit I can confirm that nuki app shows lock state properly at all times

here's homebridge log of events described above 8:00:24 nuki locked is being unlocked via homekit app and remains unlocked at time of me writing this, 24 minutes later

[4/6/2024, 8:00:24 AM] [Nuki] Zamek: Lock Target State: changed to 0 (from 1) [4/6/2024, 8:00:24 AM] [Nuki] Nuki_Bridge_689A091E: request 331: GET /lockAction?nukiId=3C8862ED&deviceType=4&action=1 [4/6/2024, 8:00:26 AM] [homebridge-ezviz] Updating info for Salon Sleep Mode [4/6/2024, 8:00:26 AM] [Nuki] Nuki_Bridge_689A091E: request 331: 200 OK [4/6/2024, 8:00:26 AM] [Nuki] Zamek: Lock Current State: set to 0 (from 1) [4/6/2024, 8:00:32 AM] [Nuki] Nuki_Bridge_689A091E: event: {"deviceType":4,"nukiId":1015571181,"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96} [4/6/2024, 8:00:38 AM] [Nuki] Nuki_Bridge_689A091E: event: {"deviceType":4,"nukiId":1015571181,"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96} [4/6/2024, 8:00:46 AM] [Nuki] Nuki_Bridge_689A091E: request 332: GET /callback/list [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: request 332: 200 OK [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: request 333: GET /info [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: request 333: 200 OK [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47189,"currentTime":"2024-04-06T06:01:01+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-62,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-61,"paired":true}]} [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:01:01" (from "Sat Apr 06 2024 08:00:00") [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: request 334: GET /list [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: request 334: 200 OK [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:00:47 AM] [Nuki] Zamek: Last Updated: set to "Sat Apr 06 2024 08:00:51" (from "Sat Apr 06 2024 01:35:55") [4/6/2024, 8:00:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:01:41 AM] [Nuki] nuki server: request 11: GET /bridges [4/6/2024, 8:01:42 AM] [Nuki] nuki server: request 11: 200 OK [4/6/2024, 8:01:42 AM] [Nuki] 192.168.0.199: request 1: GET /info [4/6/2024, 8:01:42 AM] [Nuki] 192.168.0.199: request 1: 401 Unauthorized [4/6/2024, 8:01:42 AM] [Nuki] discovery: [{"bridgeId":1754925342,"ip":"192.168.0.199","port":8080,"dateUpdated":"2024-04-05T16:56:50Z"}] [4/6/2024, 8:01:42 AM] [homebridge-midea-platform] [Sypialnia AC] Status unchanged [4/6/2024, 8:01:45 AM] [homebridge-midea-platform] [Sypialnia AC] Status unchanged [4/6/2024, 8:01:46 AM] [Nuki] Nuki_Bridge_689A091E: request 335: GET /callback/list [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: request 335: 200 OK [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: request 336: GET /info [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: request 336: 200 OK [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47249,"currentTime":"2024-04-06T06:02:01+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-55,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-64,"paired":true}]} [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:02:01" (from "Sat Apr 06 2024 08:01:01") [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: request 337: GET /list [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: request 337: 200 OK [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:01:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:02:37 AM] [homebridge-ezviz] Updating info for Salon Sleep Mode [4/6/2024, 8:02:46 AM] [Nuki] Nuki_Bridge_689A091E: request 338: GET /callback/list [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: request 338: 200 OK [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: request 339: GET /info [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: request 339: 200 OK [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47309,"currentTime":"2024-04-06T06:03:01+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-55,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-61,"paired":true}]} [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:03:01" (from "Sat Apr 06 2024 08:02:01") [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: request 340: GET /list [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: request 340: 200 OK [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:02:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:03:46 AM] [Nuki] Nuki_Bridge_689A091E: request 341: GET /callback/list [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: request 341: 200 OK [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: request 342: GET /info [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: request 342: 200 OK [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47369,"currentTime":"2024-04-06T06:04:01+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-59,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-53,"paired":true}]} [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:04:01" (from "Sat Apr 06 2024 08:03:01") [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: request 343: GET /list [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: request 343: 200 OK [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:03:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:04:46 AM] [Nuki] Nuki_Bridge_689A091E: request 344: GET /callback/list [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: request 344: 200 OK [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: request 345: GET /info [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: request 345: 200 OK [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47430,"currentTime":"2024-04-06T06:05:02+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-56,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-53,"paired":true}]} [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:05:02" (from "Sat Apr 06 2024 08:04:01") [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: request 346: GET /list [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: request 346: 200 OK [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:04:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:05:46 AM] [Nuki] Nuki_Bridge_689A091E: request 347: GET /callback/list [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: request 347: 200 OK [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: request 348: GET /info [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: request 348: 200 OK [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47490,"currentTime":"2024-04-06T06:06:02+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-59,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-53,"paired":true}]} [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:06:02" (from "Sat Apr 06 2024 08:05:02") [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: request 349: GET /list [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: request 349: 200 OK [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:05:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:06:46 AM] [Nuki] Nuki_Bridge_689A091E: request 350: GET /callback/list [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: request 350: 200 OK [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: request 351: GET /info [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: request 351: 200 OK [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47550,"currentTime":"2024-04-06T06:07:02+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-50,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-52,"paired":true}]} [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:07:02" (from "Sat Apr 06 2024 08:06:02") [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: request 352: GET /list [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: request 352: 200 OK [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:06:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}} [4/6/2024, 8:07:46 AM] [Nuki] Nuki_Bridge_689A091E: request 353: GET /callback/list [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: request 353: 200 OK [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: subscription: {"id":0,"url":"http://192.168.0.8:49329/notify/689A091E"} [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: request 354: GET /info [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: request 354: 200 OK [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1754925342},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":47611,"currentTime":"2024-04-06T06:07:47+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-50,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-53,"paired":true}]} [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Updated: set to "Sat Apr 06 2024 08:07:47" (from "Sat Apr 06 2024 08:07:02") [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: Last Boot: set to "Fri Apr 05 2024 18:54:16" (from "Fri Apr 05 2024 18:54:32") [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: request 355: GET /list [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: request 355: 200 OK [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":4,"nukiId":1015571181,"name":"Augustowska","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":96,"timestamp":"2024-04-06T06:00:51+00:00"}} [4/6/2024, 8:07:47 AM] [Nuki] Nuki_Bridge_689A091E: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T05:59:43+00:00"}}

ebaauw commented 5 months ago

I can confirm that clicking "identify" fixes current state shown in homekit

So the issue is really that the cached lock state on the Nuki bridge isn’t updated. This is either a firmware bug in the smart lock, or a communication issue between the smart lock and the bridge. You might want to check the signal strength in the Connection State in the Nuki app, or move the bridge closer to the smart lock. Also double-check that the smart lock and bridge are on the latest (non-beta) firmware.

I can confirm that nuki app shows lock state properly at all times

The app probably connects to the smart lock directly over Bluetooth. Does it also show the correct state when away from home? Or at least, outside of the Bluetooth range of the smart lock? Or when you disable Bluetooth on your phone?

here's homebridge log of events described above

The bridge reports the smart lock state as unlocked. I fear there nothing I can do in Homebridge NB, except forcing the bridge to update its cached state every time Homebridge NB polls the bridge. Nuki explicitly warn against this, as it will drain the smart lock battery very quickly.

switey commented 5 months ago

yeah, nuki app shows lock state correctly even with wifi and bluetooth off the bridge and lock are 1,5 m away from each other, the signal strength is good

a new thing is I've started seeing warnings in homebridge log after using homekit to change lock state

[4/6/2024, 10:06:20 AM] [Nuki] Zamek: Lock Target State: changed to 0 (from 1) [4/6/2024, 10:06:20 AM] [Nuki] Nuki_Bridge_52A47FE9: request 6: GET /lockAction?nukiId=3C8862ED&deviceType=[object Object]&action=1 [4/6/2024, 10:06:23 AM] [Nuki] Nuki_Bridge_52A47FE9: request 6: 200 OK [4/6/2024, 10:06:23 AM] [Nuki] Zamek: Lock Current State: set to 0 (from 1) (node:316) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 childBridgeMetadataResponse listeners added to [HomebridgeIpcService]. Use emitter.setMaxListeners() to increase limit [4/6/2024, 10:06:31 AM] [homebridge-ezviz] Updating info for Salon Sleep Mode (node:316) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 disconnect listeners added to [Socket]. Use emitter.setMaxListeners() to increase limit (node:316) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 childBridgeStatusUpdate listeners added to [HomebridgeIpcService]. Use emitter.setMaxListeners() to increase limit (node:316) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 end listeners added to [Socket]. Use emitter.setMaxListeners() to increase limit [4/6/2024, 10:06:36 AM] [Nuki] flush cachedAccessories [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 7: GET /callback/list [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 7: 200 OK [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: subscription: {"id":0,"url":"http://192.168.0.8:53376/notify/52A47FE9"} [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 8: GET /info [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 8: 200 OK [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: bridge: {"bridgeType":1,"ids":{"hardwareId":1013065235,"serverId":1386512361},"versions":{"firmwareVersion":"2.17.0","wifiFirmwareVersion":"2.4.0"},"uptime":466,"currentTime":"2024-04-06T08:07:03+00:00","wlanConnected":true,"serverConnected":true,"scanResults":[{"deviceType":2,"nukiId":930999314,"name":"Nuki_Opener_377DEC12","rssi":-55,"paired":true},{"deviceType":4,"nukiId":1015571181,"name":"Nuki_3C8862ED","rssi":-52,"paired":true}]} [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: Last Updated: set to "Sat Apr 06 2024 10:07:03" (from "Sat Apr 06 2024 10:06:03") [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 9: GET /list [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: request 9: 200 OK [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: device: {"deviceType":4,"nukiId":1015571181,"name":"Zamek","firmwareVersion":"4.2.6","lastKnownState":{"mode":2,"state":3,"stateName":"unlocked","batteryCritical":false,"batteryCharging":false,"batteryChargeState":98,"timestamp":"2024-04-06T08:06:20+00:00"}} [4/6/2024, 10:07:06 AM] [Nuki] Zamek: Last Updated: set to "Sat Apr 06 2024 10:06:20" (from "Sat Apr 06 2024 10:04:44") [4/6/2024, 10:07:06 AM] [Nuki] Nuki_Bridge_52A47FE9: device: {"deviceType":2,"nukiId":930999314,"name":"Domofon","firmwareVersion":"1.10.1","lastKnownState":{"mode":2,"state":1,"stateName":"online","batteryCritical":false,"ringactionTimestamp":"2024-04-05T23:34:28+00:00","ringactionState":false,"timestamp":"2024-04-06T07:59:29+00:00"}}

ebaauw commented 5 months ago

I think the event listener warnings are caused by Homebridge itself. How many child bridges did you configure? More that 10?

switey commented 5 months ago

4 child bridges including homebridge nb

switey commented 5 months ago

testing numerous scenarios I've found that opening nuki app triggers an update on lock state for homebridge-nb

the moment nuki app is opened on my phone these log messages appear

[4/6/2024, 3:01:45 PM] [Nuki] Zamek: Lock Current State: set to 1 (from 0) [4/6/2024, 3:01:45 PM] [Nuki] Zamek: Lock Target State: set to 1 (from 0)

this happens both on local network with bluetooth on and with bluetooth and wifi disabled

switey commented 5 months ago

further testing lead me to conclusion that it is a nuki firmware bug, here's the message posted on nuki developers forum

Problem: Nuki Smart Lock stopped updating bridge on its current state. In the following scenarios:

pressing the lock button to lock or unlock the door being auto-locked after staying unlocked being auto-locked after initiating lock’n’go Calling http://[IP]:8080/info?token=[TOKEN] doesn’t show actual lock state until one of the following happens:

Nuki app gets opened on my smartphone- calling http://[IP]:8080/lockState?nukiId=[ID]&deviceType=4&token=[TOKEN] This doesn’t happen (meaning the lock state gets updated to the bridge properly) when:

using the app to lock or unlock door calling http://[IP]:8080/[lock/unlock]?nukiId=[ID]&deviceType=4&token=[TOKEN] it seems that it is some kind of internal firmware bug which needs to be fixed it’s a shame given that my lock 4.0 is brand new and there are some many things that are wrong with it, starting with inability to add it to homekit natively via matter. I’ve started to use homebridge as a way of working around it but it relies on api and buggy firmware

ebaauw commented 4 months ago

Closing as there's nothing more we can do in Homebridge NB.