Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

very bad network availability with nuki_hub 9.0x #627

Open
9 of 10 tasks
leo-b opened this issue Feb 13, 2025 · 0 comments
Open
9 of 10 tasks

very bad network availability with nuki_hub 9.0x #627

leo-b opened this issue Feb 13, 2025 · 0 comments

Comments

@leo-b
Copy link

leo-b commented Feb 13, 2025

PROBLEM DESCRIPTION

I am experiencing very bad network availability issues with nuki_hub versions 9.0x.
Pinging the device shows a high packet loss and web requests often block für many seconds or even timeout:

# ping nukihub2
PING nuki-hub2.ms14.kloburg.at (10.0.1.92) 56(84) bytes of data.
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=6 ttl=64 time=4212 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=7 ttl=64 time=3194 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=8 ttl=64 time=2172 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=9 ttl=64 time=1157 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=10 ttl=64 time=133 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=13 ttl=64 time=6978 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=14 ttl=64 time=5957 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=15 ttl=64 time=4942 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=16 ttl=64 time=3918 ms
64 bytes from nuki-hub2.ms14.kloburg.at (10.0.1.92): icmp_seq=17 ttl=64 time=2894 ms
[...]
--- nuki-hub2.ms14.kloburg.at ping statistics ---
815 packets transmitted, 295 received, 63.8037% packet loss, time 832733ms
rtt min/avg/max/mdev = 3.000/2265.762/9921.020/1694.991 ms, pipe 10

IMHO it looks like the networking code is blocked by some other task for some time and is not able to handle requests.?

Until yesterday the problems only appeared after some uptime and I was having the impression that after a reboot of the lock, the problems would disappear for some time again. (I suspected it to be a BLE issue, see #619)
But since yesterday, the problems even outlast a reboot of the lock and the hub.

Looking at the MQTT log (without debugging enabled), I cannot see any suspicous entries. (See below.)

I have a second nuki_hub (connected to another lock) running 9.00 that doesn't show that problems.

REQUESTED INFORMATION

Make sure your have performed every step and checked the applicable boxes before submitting your issue. Thank you!

System Information

------------ NUKI HUB ------------
Device: ESP32
Version: 9.08
Build: 12974430884.10.1
Build type: Release
Build date: 2025-01-26
Updater version: 9.08
Updater build: 12974430884.10.1
Updater build date: 2025-01-23
Uptime (min): 75
Config version: 908
Last restart reason FW: NotApplicable
Last restart reason ESP: ESP_RST_POWERON: Reset due to power-on event.
Free internal heap: 64760
Total internal heap: 246356
PSRAM Available: No
Network task stack high watermark: 5240
Nuki task stack high watermark: 5020

------------ GENERAL SETTINGS ------------
Network task stack size: 12288
Nuki task stack size: 8192
Check for updates: No
Latest version: 9.08
Allow update from MQTT: No
Update Nuki Hub and Nuki devices time using NTP: No
Web configurator username: Not set
Web configurator password: Not set
Web configurator bypass for proxy IP: Not set
Web configurator authentication: Basic
Session validity (in seconds): 3600
Session validity remember (in hours): 720
Duo Push MFA enabled: No
Web configurator enabled: Yes
HTTP SSL: Disabled
Advanced menu enabled: No
Publish free heap over MQTT: No
Nuki connect debug logging enabled: No
Nuki communication debug logging enabled: No
Nuki readable data debug logging enabled: No
Nuki hex data debug logging enabled: No
Nuki command debug logging enabled: No
MQTT log enabled: Yes
Webserial enabled: No
Bootloop protection enabled: Yes

------------ NETWORK ------------
Network device: Built-in Wi-Fi
Network connected: Yes
IP Address: 10.0.1.92
SSID: ms14-iot
BSSID of AP: B2:B9:8A:60:14:91
ESP32 MAC address: C8:F0:9E:4E:7B:2C

------------ NETWORK SETTINGS ------------
Nuki Hub hostname: nuki-garten
DHCP enabled: No
Static IP address: 10.0.1.92
Static IP subnet: 255.255.255.0
Static IP gateway: 10.0.1.1
Static IP DNS server: 10.0.1.1
RSSI Publish interval (s): 10000
Find WiFi AP with strongest signal: Yes
Restart ESP32 on network disconnect enabled: No
Disable Network if not connected within 60s: No
MQTT Timeout until restart (s): 120

------------ MQTT ------------
MQTT connected: Yes
MQTT broker address: 10.0.1.1
MQTT broker port: 1883
MQTT username: ***
MQTT password: ***
MQTT base topic: nuki-garten
MQTT SSL: Disabled

------------ BLUETOOTH ------------
Bluetooth connection mode: New
Bluetooth TX power (dB): 9
Bluetooth command nr of retries: 3
Bluetooth command retry delay (ms): 200
Seconds until reboot when no BLE beacons received: 120

------------ QUERY / PUBLISH SETTINGS ------------
Lock/Opener state query interval (s): 1800
Publish Nuki device authorization log: No
Max authorization log entries to retrieve: 5
Battery state query interval (s): 1800
Most non-JSON MQTT topics disabled: Yes
Publish Nuki device config: Yes
Config query interval (s): 3600
Publish Keypad info: No
Keypad query interval (s): 1800
Enable Keypad control: Yes
Publish Keypad topic per entry: No
Publish Keypad codes: No
Allow checking Keypad codes: No
Max keypad entries to retrieve: 10
Publish timecontrol info: No
Keypad query interval (s): 1800
Enable timecontrol control: No
Publish timecontrol topic per entry: No
Max timecontrol entries to retrieve: 10
Enable authorization control: No
Publish authorization topic per entry: No
Max authorization entries to retrieve: 10

------------ HOME ASSISTANT ------------
Home Assistant auto discovery enabled: Yes
Home Assistant auto discovery topic: homeassistant/
Nuki Hub configuration URL for HA: http://10.0.1.92
Nuki Hub ID: 48908111638728

------------ NUKI LOCK ------------
Lock enabled: Yes
Lock Ultra enabled: No
Paired: Yes
Nuki Hub device ID: 4224542623
Nuki device ID: ***
Firmware version: 2.15.3
Hardware version: 11.2
Valid PIN set: Yes
Has door sensor: No
Has keypad: No
Timecontrol highest entries count: 0
Authorizations highest entries count: 0
Register as: Bridge

------------ HYBRID MODE ------------
Hybrid mode enabled: No
Force Lock ID: No
Force Lock Keypad: No
Force Lock Doorsensor: No

------------ NUKI LOCK ACL ------------
Lock: Allowed
Unlock: Allowed
Unlatch: Allowed
Lock N Go: Allowed
Lock N Go Unlatch: Allowed
Full Lock: Allowed
Fob Action 1: Allowed
Fob Action 2: Allowed
Fob Action 3: Allowed

------------ NUKI LOCK CONFIG ACL ------------
Name: Allowed
Latitude: Allowed
Longitude: Allowed
Auto Unlatch: Allowed
Pairing enabled: Allowed
Button enabled: Allowed
LED flash enabled: Allowed
LED brightness: Allowed
Timezone offset: Allowed
DST mode: Allowed
Fob Action 1: Allowed
Fob Action 2: Allowed
Fob Action 3: Allowed
Single Lock: Allowed
Advertising Mode: Allowed
Timezone ID: Allowed
Unlocked Position Offset Degrees: Allowed
Locked Position Offset Degrees: Allowed
Single Locked Position Offset Degrees: Allowed
Unlocked To Locked Transition Offset Degrees: Allowed
Lock n Go timeout: Allowed
Single button press action: Allowed
Double button press action: Allowed
Detached cylinder: Allowed
Battery type: Allowed
Automatic battery type detection: Allowed
Unlatch duration: Allowed
Auto lock timeout: Allowed
Auto unlock disabled: Allowed
Nightmode enabled: Allowed
Nightmode start time: Allowed
Nightmode end time: Allowed
Nightmode auto lock enabled: Allowed
Nightmode auto unlock disabled: Allowed
Nightmode immediate lock on start: Allowed
Auto lock enabled: Allowed
Immediate auto lock enabled: Allowed
Auto update enabled: Allowed
Reboot Nuki: Allowed
Motor speed: Disallowed
Enable slow speed during nightmode: Disallowed

------------ NUKI OPENER ------------
Opener enabled: No

------------ GPIO ------------

Retain Input GPIO MQTT state: No

TO REPRODUCE

Publish a rebootNuki command:
mosquitto_pub -t 'nuki-garten/configuration/action' -m '{ "rebootNuki": "1" }' -u nuki-garten -P "$(</etc/mosquitto/pw-nuki-garten.txt)"; echo "$? - $(date)"

ADDITIONAL CONTEXT

  • MQTT log: $ mosquitto_sub -t nuki-garten/# -F "%I %t: %p"
2025-02-13T18:46:07+0100 nuki-garten/lock/configuration/action: { "rebootNuki": "1" }
2025-02-13T18:46:34+0100 nuki-garten/lock/configuration/commandResult: {"rebootNuki":"success","general":"success"}
2025-02-13T18:46:34+0100 nuki-garten/lock/configuration/action: --
2025-02-13T18:46:35+0100 nuki-garten/maintenance/log: Updating Lock config based on timer or query
2025-02-13T18:46:43+0100 nuki-garten/maintenance/log: Unable to subscribe to USDIO characteristic
2025-02-13T18:46:45+0100 nuki-garten/maintenance/log: Lock config result: success
2025-02-13T18:46:45+0100 nuki-garten/lock/configuration/basicJson: {"nukiID":"179357f5","name":"Nuki MaLe Garten","autoUnlatch":0,"pairingEnabled":0,"buttonEnabled":1,"ledEnabled":0,"ledBrightness":1,"currentTime":"2025-02-13 17:46:45","timeZoneOffset":0,"dstMode":0,"hasFob":1,"fobAction1":"Intelligent","fobAction2":"Unlock","fobAction3":"Lock","singleLock":1,"advertisingMode":"Automatic","hasKeypad":0,"hasKeypadV2":0,"firmwareVersion":"2.15.3","hardwareRevision":"11.2","homeKitStatus":"Disabled","timeZone":"Europe/Berlin","deviceType":0,"wifiCapable":0,"threadCapable":0,"matterStatus":0,"productVariant":0}
2025-02-13T18:46:45+0100 nuki-garten/lock/info/firmwareVersion: 2.15.3
2025-02-13T18:46:45+0100 nuki-garten/lock/info/hardwareVersion: 11.2
2025-02-13T18:46:45+0100 nuki-garten/maintenance/log: Nuki Lock PIN is set
2025-02-13T18:46:45+0100 nuki-garten/maintenance/log: Nuki Lock PIN is valid
2025-02-13T18:46:46+0100 nuki-garten/maintenance/log: Lock advanced config result: success
2025-02-13T18:46:46+0100 nuki-garten/lock/configuration/advancedJson: {"totalDegrees":480,"unlockedPositionOffsetDegrees":82,"lockedPositionOffsetDegrees":-180,"singleLockedPositionOffsetDegrees":-80,"unlockedToLockedTransitionOffsetDegrees":150,"lockNgoTimeout":20,"singleButtonPressAction":"Intelligent","doubleButtonPressAction":"Lock n Go","detachedCylinder":0,"batteryType":"Accumulators","automaticBatteryTypeDetection":0,"unlatchDuration":1,"autoLockTimeOut":300,"autoUnLockDisabled":0,"nightModeEnabled":0,"nightModeStartTime":"22:00","nightModeEndTime":"06:00","nightModeAutoLockEnabled":1,"nightModeAutoUnlockDisabled":1,"nightModeImmediateLockOnStart":1,"autoLockEnabled":0,"immediateAutoLockEnabled":1,"autoUpdateEnabled":1,"rebootNuki":0}
2025-02-13T18:46:46+0100 nuki-garten/maintenance/log: Done retrieving lock config and advanced config
2025-02-13T18:46:48+0100 nuki-garten/maintenance/log: KeyTurnerStatusUpdated
2025-02-13T18:46:48+0100 nuki-garten/lock/statusUpdated: 1
2025-02-13T18:46:48+0100 nuki-garten/maintenance/log: Updating Lock state based on status, timer or query
2025-02-13T18:46:48+0100 nuki-garten/maintenance/log: Querying lock state
2025-02-13T18:46:48+0100 nuki-garten/lock/query/lockstateCommandResult: success
2025-02-13T18:46:48+0100 nuki-garten/lock/state: locked
2025-02-13T18:46:48+0100 nuki-garten/lock/hastate: locked
2025-02-13T18:46:48+0100 nuki-garten/lock/binaryState: locked
2025-02-13T18:46:48+0100 nuki-garten/lock/availability: online
2025-02-13T18:46:48+0100 nuki-garten/lock/battery/basicJson: {"critical":"0","charging":"0","level":78,"keypadCritical":"0","doorSensorCritical":"0"}
2025-02-13T18:46:48+0100 nuki-garten/lock/json: {"lock_state":"locked","lockngo_state":0,"trigger":"system","currentTime":"2025-02-13 17:46:48","timeZoneOffset":0,"nightModeActive":0,"last_lock_action":"Unknown","last_lock_action_trigger":"system","lock_completion_status":"success","door_sensor_state":"unavailable","auth_id":0,"auth_name":""}
2025-02-13T18:46:48+0100 nuki-garten/maintenance/log: Result (attempt 1): locked
2025-02-13T18:46:48+0100 nuki-garten/maintenance/log: Done querying lock state
2025-02-13T18:46:48+0100 nuki-garten/lock/statusUpdated: 0
2025-02-13T18:46:57+0100 nuki-garten/maintenance/uptime: 19
2025-02-13T18:46:58+0100 nuki-garten/maintenance/log: KeyTurnerStatusReset
2025-02-13T18:47:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:47:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:47:57+0100 nuki-garten/maintenance/uptime: 20
2025-02-13T18:48:57+0100 nuki-garten/maintenance/uptime: 21
2025-02-13T18:49:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:49:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:49:57+0100 nuki-garten/maintenance/uptime: 22
2025-02-13T18:50:57+0100 nuki-garten/maintenance/uptime: 23
2025-02-13T18:51:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:51:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:51:57+0100 nuki-garten/maintenance/uptime: 24
2025-02-13T18:52:57+0100 nuki-garten/maintenance/uptime: 25
2025-02-13T18:53:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:53:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:53:57+0100 nuki-garten/maintenance/uptime: 26
2025-02-13T18:54:57+0100 nuki-garten/maintenance/uptime: 27
2025-02-13T18:55:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:55:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:55:57+0100 nuki-garten/maintenance/uptime: 28
2025-02-13T18:56:57+0100 nuki-garten/maintenance/uptime: 29
2025-02-13T18:57:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:57:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:57:54+0100 nuki-garten/maintenance/log: Updating Lock battery state based on timer or query
2025-02-13T18:57:54+0100 nuki-garten/maintenance/log: Querying lock battery state
2025-02-13T18:57:57+0100 nuki-garten/maintenance/uptime: 30
2025-02-13T18:58:04+0100 nuki-garten/maintenance/log: Result (attempt 1): success
2025-02-13T18:58:04+0100 nuki-garten/lock/battery/advancedJson: {"batteryDrain":3599,"batteryVoltage":5.183,"critical":156,"lockAction":"Unknown","startVoltage":5.176,"lowestVoltage":3.678,"lockDistance":0.081,"startTemperature":15,"maxTurnCurrent":3.098,"batteryResistance":0.515}
2025-02-13T18:58:04+0100 nuki-garten/maintenance/log: Done querying lock battery state
2025-02-13T18:58:57+0100 nuki-garten/maintenance/uptime: 31
2025-02-13T18:59:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T18:59:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T18:59:57+0100 nuki-garten/maintenance/uptime: 32
2025-02-13T19:00:57+0100 nuki-garten/maintenance/uptime: 33
2025-02-13T19:01:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T19:01:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T19:01:57+0100 nuki-garten/maintenance/uptime: 34
2025-02-13T19:02:57+0100 nuki-garten/maintenance/uptime: 35
2025-02-13T19:03:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T19:03:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T19:03:57+0100 nuki-garten/maintenance/uptime: 36
2025-02-13T19:04:55+0100 nuki-garten/configuration/action: 
2025-02-13T19:04:57+0100 nuki-garten/maintenance/uptime: 37
2025-02-13T19:05:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T19:05:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T19:05:57+0100 nuki-garten/maintenance/uptime: 38
2025-02-13T19:06:57+0100 nuki-garten/maintenance/uptime: 39
2025-02-13T19:07:45+0100 nuki-garten/maintenance/log: networkTask is running
2025-02-13T19:07:45+0100 nuki-garten/maintenance/log: nukiTask is running
2025-02-13T19:07:57+0100 nuki-garten/maintenance/uptime: 40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant