From 2b668f08fa68daee5b6638ad1b30dafc15c2159c Mon Sep 17 00:00:00 2001 From: technyon Date: Fri, 25 Mar 2022 20:01:03 +0100 Subject: [PATCH] pairing and read lock state works --- Nuki.cpp | 26 ++++++++++++-------------- Nuki.h | 2 ++ lib/nuki_ble | 2 +- main.cpp | 6 +++--- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Nuki.cpp b/Nuki.cpp index 8ba5ac0..b9b9847 100644 --- a/Nuki.cpp +++ b/Nuki.cpp @@ -15,24 +15,22 @@ void Nuki::initialize() void Nuki::update() { if (!_paired) { + Serial.println(F("Nuki start pairing")); + if (_nukiBle.pairNuki()) { - Serial.println("Nuki paired"); + Serial.println(F("Nuki paired")); _paired = true; - - _nukiBle.updateKeyTurnerState(); - // nukiBle.requestConfig(false); - // nukiBle.requestConfig(true); - // nukiBle.requestBatteryReport(); - _nukiBle.requestKeyPadCodes(0, 2); - // nukiBle.requestLogEntries(0, 10, 0, true); - - //execute action - // nukiBle.lockAction(LockAction::lock, 0, 0); - // addKeypadEntry(); + } + else + { + return; } } - vTaskDelay( 1000 / portTICK_PERIOD_MS); + vTaskDelay( 100 / portTICK_PERIOD_MS); + _nukiBle.requestKeyTurnerState(&_keyTurnerState); + Serial.print(F("Nuki lock state: ")); + Serial.println((int)_keyTurnerState.lockState); - _nukiBle.updateKeyTurnerState(); + vTaskDelay( 20000 / portTICK_PERIOD_MS); } diff --git a/Nuki.h b/Nuki.h index cc288cc..57e1835 100644 --- a/Nuki.h +++ b/Nuki.h @@ -15,4 +15,6 @@ private: NukiBle _nukiBle; bool _paired = false; + KeyTurnerState _keyTurnerState; + }; diff --git a/lib/nuki_ble b/lib/nuki_ble index 51f2ab1..aa3fd59 160000 --- a/lib/nuki_ble +++ b/lib/nuki_ble @@ -1 +1 @@ -Subproject commit 51f2ab1e8c130c2448af14e782635fbfc042f92e +Subproject commit aa3fd59f98710ce6073501896ff348d486637ac1 diff --git a/main.cpp b/main.cpp index db34894..e8569ff 100644 --- a/main.cpp +++ b/main.cpp @@ -7,7 +7,7 @@ #define ESP32 Network network; -Nuki nuki("door", 0); +Nuki nuki("Main Door", 2020001); void networkTask(void *pvParameters) { @@ -28,13 +28,13 @@ void nukiTask(void *pvParameters) void setupTasks() { xTaskCreate(networkTask, "ntw", 2048, NULL, 1, NULL); -// xTaskCreate(nukiTask, "nuki", 1024, NULL, 1, NULL); + xTaskCreate(nukiTask, "nuki", 4096, NULL, 1, NULL); } void setup() { network.initialize(); -// nuki.initialize(); + nuki.initialize(); setupTasks(); }