This commit is contained in:
technyon
2023-04-29 20:45:55 +02:00
parent 11e11ab935
commit cbcf04d5c8
2 changed files with 15 additions and 24 deletions

View File

@@ -3,8 +3,7 @@
#include <vector> #include <vector>
#define preference_started_before "run" #define preference_started_before "run"
#define preference_device_id_lock "deviceId" #define preference_deviceId "deviceId"
#define preference_device_id_opener "deviceIdOp"
#define preference_mqtt_broker "mqttbroker" #define preference_mqtt_broker "mqttbroker"
#define preference_mqtt_broker_port "mqttport" #define preference_mqtt_broker_port "mqttport"
#define preference_mqtt_user "mqttuser" #define preference_mqtt_user "mqttuser"
@@ -58,7 +57,7 @@ class DebugPreferences
private: private:
std::vector<char*> _keys = std::vector<char*> _keys =
{ {
preference_started_before, preference_device_id_lock, preference_device_id_opener, preference_mqtt_broker, preference_mqtt_broker_port, preference_started_before, preference_deviceId, preference_mqtt_broker, preference_mqtt_broker_port,
preference_mqtt_user, preference_mqtt_password, preference_mqtt_log_enabled, preference_lock_enabled, preference_mqtt_user, preference_mqtt_password, preference_mqtt_log_enabled, preference_lock_enabled,
preference_mqtt_lock_path, preference_opener_enabled, preference_mqtt_opener_path, preference_mqtt_lock_path, preference_opener_enabled, preference_mqtt_opener_path,
preference_lock_max_keypad_code_count, preference_opener_max_keypad_code_count, preference_mqtt_ca, preference_lock_max_keypad_code_count, preference_opener_max_keypad_code_count, preference_mqtt_ca,

View File

@@ -190,26 +190,11 @@ void setup()
networkOpener->initialize(); networkOpener->initialize();
} }
uint32_t deviceIdLock = preferences->getUInt(preference_device_id_lock); uint32_t deviceId = preferences->getUInt(preference_deviceId);
uint32_t deviceIdOpener = preferences->getUInt(preference_device_id_opener); if(deviceId == 0)
delay(1000);
Serial.print("### ");
Serial.print(deviceIdLock);
Serial.print(" | ");
Serial.println(deviceIdOpener);
if(deviceIdLock == 0 && deviceIdOpener == 0)
{ {
deviceIdLock = getRandomId(); deviceId = getRandomId();
preferences->putUInt(preference_device_id_lock, deviceIdLock); preferences->putUInt(preference_deviceId, deviceId);
deviceIdOpener = getRandomId();
preferences->putUInt(preference_device_id_opener, deviceIdOpener);
}
else if(deviceIdLock != 0 && deviceIdOpener == 0)
{
deviceIdOpener = deviceIdLock;
preferences->putUInt(preference_device_id_opener, deviceIdOpener);
} }
initEthServer(network->networkDeviceType()); initEthServer(network->networkDeviceType());
@@ -226,14 +211,21 @@ void setup()
Log->println(lockEnabled ? F("NUKI Lock enabled") : F("NUKI Lock disabled")); Log->println(lockEnabled ? F("NUKI Lock enabled") : F("NUKI Lock disabled"));
if(lockEnabled) if(lockEnabled)
{ {
nuki = new NukiWrapper("NukiHub", deviceIdLock, bleScanner, networkLock, gpio, preferences); nuki = new NukiWrapper("NukiHub", deviceId, bleScanner, networkLock, gpio, preferences);
nuki->initialize(firstStart); nuki->initialize(firstStart);
// if(preferences->getBool(preference_gpio_locking_enabled))
// {
// Gpio::init(nuki);
// }
} }
Log->println(openerEnabled ? F("NUKI Opener enabled") : F("NUKI Opener disabled")); Log->println(openerEnabled ? F("NUKI Opener enabled") : F("NUKI Opener disabled"));
if(openerEnabled) if(openerEnabled)
{ {
nukiOpener = new NukiOpenerWrapper("NukiHub", deviceIdOpener, bleScanner, networkOpener, gpio, preferences); nukiOpener = new NukiOpenerWrapper("NukiHub", deviceId, bleScanner, networkOpener, gpio, preferences);
nukiOpener->initialize(); nukiOpener->initialize();
} }