BLE improvements

This commit is contained in:
iranl
2025-06-20 09:27:10 +02:00
parent 01c72f2e3f
commit ef85bc105b
11 changed files with 79 additions and 54 deletions

View File

@@ -62,10 +62,10 @@ void NukiOpenerWrapper::initialize()
_nukiOpener.setDebugCommand(_preferences->getBool(preference_debug_command, false));
_nukiOpener.registerLogger(Log);
_nukiOpener.initialize(_preferences->getBool(preference_connect_mode, true));
_nukiOpener.initialize();
_nukiOpener.registerBleScanner(_bleScanner);
_nukiOpener.setEventHandler(this);
_nukiOpener.setConnectTimeout(3);
_nukiOpener.setConnectTimeout(2);
_nukiOpener.setDisconnectTimeout(2000);
_hassEnabled = _preferences->getBool(preference_mqtt_hass_enabled, false);
@@ -337,9 +337,17 @@ void NukiOpenerWrapper::update()
}
if(_statusUpdated || _nextLockStateUpdateTs == 0 || ts >= _nextLockStateUpdateTs || (queryCommands & QUERY_COMMAND_LOCKSTATE) > 0)
{
_statusUpdated = updateKeyTurnerState();
_nextLockStateUpdateTs = ts + _intervalLockstate * 1000;
_statusUpdated = updateKeyTurnerState();
_network->publishStatusUpdated(_statusUpdated);
if(_statusUpdated)
{
if (esp_task_wdt_status(NULL) == ESP_OK) {
esp_task_wdt_reset();
}
vTaskDelay(500 / portTICK_PERIOD_MS);
}
}
if(_network->mqttConnectionState() == 2)
{
@@ -517,6 +525,10 @@ bool NukiOpenerWrapper::updateKeyTurnerState()
Log->println("ms");
_nextLockStateUpdateTs = espMillis() + _retryDelay;
}
else
{
_nextLockStateUpdateTs = espMillis() + (_retryLockstateCount * 333);
}
_network->publishKeyTurnerState(_keyTurnerState, _lastKeyTurnerState);
return false;
}