diff --git a/config_allfeatures.cmake b/config_allfeatures.cmake index 903d0c4..1067dee 100644 --- a/config_allfeatures.cmake +++ b/config_allfeatures.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS # -DFEATURE_MOSFETS -DFEATURE_WEBSERVER -DFEATURE_OTA - -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/config_comred.cmake b/config_comred.cmake index ccc2f1e..ec64278 100644 --- a/config_comred.cmake +++ b/config_comred.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS # -DFEATURE_MOSFETS -DFEATURE_WEBSERVER -DFEATURE_OTA - -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/config_feedc0de.cmake b/config_feedc0de.cmake index 57eb17e..9aa3a22 100644 --- a/config_feedc0de.cmake +++ b/config_feedc0de.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS -DFEATURE_MOSFETS -DFEATURE_WEBSERVER -DFEATURE_OTA - -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/config_mick.cmake b/config_mick.cmake index 6d64e6c..ec66fda 100644 --- a/config_mick.cmake +++ b/config_mick.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS # -DFEATURE_MOSFETS -DFEATURE_WEBSERVER -DFEATURE_OTA - -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/config_nofeatures.cmake b/config_nofeatures.cmake index ad3afa9..ef2944f 100644 --- a/config_nofeatures.cmake +++ b/config_nofeatures.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS # -DFEATURE_MOSFETS # -DFEATURE_WEBSERVER # -DFEATURE_OTA -# -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/config_peter.cmake b/config_peter.cmake index c77d6d5..2824838 100644 --- a/config_peter.cmake +++ b/config_peter.cmake @@ -39,7 +39,6 @@ set(BOBBYCAR_BUILDFLAGS # -DFEATURE_MOSFETS -DFEATURE_WEBSERVER -DFEATURE_OTA - -DFEATURE_BLE # -DFEATURE_BLUETOOTH # -DFEATURE_BMS # -DFEATURE_GAMETRAK diff --git a/main/accessors/settingsaccessors.h b/main/accessors/settingsaccessors.h index 1ae9169..212f7cc 100644 --- a/main/accessors/settingsaccessors.h +++ b/main/accessors/settingsaccessors.h @@ -38,9 +38,7 @@ struct FieldWeakMaxAccessor : public RefAccessorSaveSettings { int16_t struct PhaseAdvMaxAccessor : public RefAccessorSaveSettings { int16_t &getRef() const override { return profileSettings.limits.phaseAdvMax; } }; // Bluetooth Low Energy -#ifdef FEATURE_BLE struct BleEnabledAccessor : public NewSettingsAccessor { ConfigWrapper &getConfig() const override { return configs.bleSettings.bleEnabled; } }; -#endif // Cloud struct CloudEnabledAccessor : public NewSettingsAccessor { ConfigWrapper &getConfig() const override { return configs.cloudSettings.cloudEnabled; } }; diff --git a/main/ble_bobby.cpp b/main/ble_bobby.cpp index 6a77fd7..4ef81d3 100644 --- a/main/ble_bobby.cpp +++ b/main/ble_bobby.cpp @@ -15,7 +15,6 @@ #include "utils.h" #include "newsettings.h" -#ifdef FEATURE_BLE namespace { constexpr const char * const TAG = "BOBBYBLE"; @@ -105,6 +104,9 @@ void initBle() void handleBle() { + if (!configs.feature.ble.value) + return; + if (configs.bleSettings.bleEnabled.value) { if (!pServer) @@ -293,5 +295,3 @@ void WiFiListCallbacks::onRead(NimBLECharacteristic *pCharacteristic) pCharacteristic->setValue(json); } } // namespace - -#endif diff --git a/main/ble_bobby.h b/main/ble_bobby.h index 0e59cc2..06cc769 100644 --- a/main/ble_bobby.h +++ b/main/ble_bobby.h @@ -1,7 +1,5 @@ #pragma once -#ifdef FEATURE_BLE - // esp-idf includes #include @@ -15,5 +13,3 @@ extern BLECharacteristic *getwifilist; void initBle(); void handleBle(); - -#endif diff --git a/main/bletexthelpers.h b/main/bletexthelpers.h index 359eb0a..4622c9d 100644 --- a/main/bletexthelpers.h +++ b/main/bletexthelpers.h @@ -4,7 +4,6 @@ #include "textinterface.h" #include "ble_bobby.h" -#ifdef FEATURE_BLE struct BleServerPeerDevicesText : public virtual espgui::TextInterface { public: std::string text() const override @@ -26,4 +25,3 @@ public: return text; } }; -#endif diff --git a/main/displays/menus/blesettingsmenu.cpp b/main/displays/menus/blesettingsmenu.cpp index 237e3e4..f42d95c 100644 --- a/main/displays/menus/blesettingsmenu.cpp +++ b/main/displays/menus/blesettingsmenu.cpp @@ -15,7 +15,6 @@ #include "displays/menus/settingsmenu.h" #include "bobbycheckbox.h" -#ifdef FEATURE_BLE namespace { constexpr char TEXT_BLESETTINGS[] = "BLE settings"; constexpr char TEXT_ENABLED[] = "Enabled"; @@ -51,4 +50,3 @@ void BleSettingsMenu::back() { espgui::switchScreen(); } -#endif diff --git a/main/displays/menus/blesettingsmenu.h b/main/displays/menus/blesettingsmenu.h index 0143c5e..2030627 100644 --- a/main/displays/menus/blesettingsmenu.h +++ b/main/displays/menus/blesettingsmenu.h @@ -3,8 +3,6 @@ // local includes #include "displays/bobbymenudisplay.h" -#ifdef FEATURE_BLE - class BleSettingsMenu : public BobbyMenuDisplay { public: @@ -14,4 +12,3 @@ public: void back() override; }; -#endif diff --git a/main/displays/menus/settingsmenu.cpp b/main/displays/menus/settingsmenu.cpp index f30ae66..d1e0b9e 100644 --- a/main/displays/menus/settingsmenu.cpp +++ b/main/displays/menus/settingsmenu.cpp @@ -10,9 +10,7 @@ // local includes #include "utils.h" #include "icons/wifi.h" -#if defined(FEATURE_BLUETOOTH) || defined(FEATURE_BLE) #include "icons/bluetooth.h" -#endif #include "icons/time.h" #include "icons/hardware.h" #include "icons/buzzer.h" @@ -92,17 +90,12 @@ SettingsMenu::SettingsMenu() #ifdef FEATURE_BLUETOOTH constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); #endif -#ifdef FEATURE_BLE - constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); -#endif + if (configs.feature.ble.value) + constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::bluetooth>>>(); if (configs.feature.cloud.value) - { constructMenuItem, SwitchScreenAction>>(); - } if (configs.feature.udpcloud.value) - { constructMenuItem, SwitchScreenAction>>(); - } #ifdef FEATURE_OTA constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&bobbyicons::update>>>(); #endif diff --git a/main/icons/bluetooth.cpp b/main/icons/bluetooth.cpp index a0a3e35..62f1721 100644 --- a/main/icons/bluetooth.cpp +++ b/main/icons/bluetooth.cpp @@ -1,7 +1,6 @@ #include "bluetooth.h" namespace bobbyicons { -#if defined(FEATURE_BLUETOOTH) || defined(FEATURE_BLE) const espgui::Icon<24, 24> bluetooth{{ 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x120F, 0x1A50, 0x0000, 0x01CF, 0x2AB1, 0x3B12, 0x4333, 0x4333, 0x3AF2, 0x2AB1, 0x01EF, // 0x0010 (16) pixels 0x0000, 0x1A50, 0x1210, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1210, 0x018E, 0x0007, 0x2AB1, // 0x0020 (32) pixels @@ -40,5 +39,4 @@ const espgui::Icon<24, 24> bluetooth{{ 0x19ED, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // 0x0230 (560) pixels 0x00A6, 0x21EC, 0x2A6F, 0x32B1, 0x32B1, 0x2A6F, 0x19EC, 0x00A6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // 0x0240 (576) pixels }, "bluetooth"}; -#endif } // namespace bobbyicons diff --git a/main/icons/bluetooth.h b/main/icons/bluetooth.h index 75697e1..30dc125 100644 --- a/main/icons/bluetooth.h +++ b/main/icons/bluetooth.h @@ -3,7 +3,5 @@ #include "icon.h" namespace bobbyicons { -#if defined(FEATURE_BLUETOOTH) || defined(FEATURE_BLE) extern const espgui::Icon<24, 24> bluetooth; -#endif } // namespace bobbyicons diff --git a/main/newsettings.h b/main/newsettings.h index b34759b..4ae157d 100644 --- a/main/newsettings.h +++ b/main/newsettings.h @@ -313,6 +313,7 @@ public: ConfigWrapper udpcloud {false, DoReset, {}, "f_udpcloud" }; ConfigWrapper dnsannounce {false, DoReset, {}, "f_dnsannounce" }; ConfigWrapper ntp {false, DoReset, {}, "f_ntp" }; + ConfigWrapper ble {false, DoReset, {}, "f_ble" }; ConfigWrapper gschissene_diode {false, DoReset, {}, "f_gschissDiode" }; } feature; @@ -605,14 +606,15 @@ public: x(espnow.syncTimeWithOthers) \ x(espnow.syncBlink) \ \ - x(feature.gschissene_diode) \ x(feature.ledstrip) \ x(feature.webserver_disable_lock) \ x(feature.garage) \ x(feature.udpcloud) \ x(feature.cloud) \ x(feature.dnsannounce) \ - x(feature.ntp) + x(feature.ntp) \ + x(feature.ble) \ + x(feature.gschissene_diode) //x(bleSettings.bleEnabled) #define FEATURES(x) \ @@ -622,7 +624,8 @@ public: x(feature.udpcloud) \ x(feature.cloud) \ x(feature.dnsannounce) \ - x(feature.ntp) + x(feature.ntp) \ + x(feature.ble) //x(feature.gschisseneDiode) template diff --git a/main/taskmanager.cpp b/main/taskmanager.cpp index 236491d..b229ea8 100644 --- a/main/taskmanager.cpp +++ b/main/taskmanager.cpp @@ -48,9 +48,7 @@ #ifdef FEATURE_OTA #include "ota.h" #endif -#ifdef FEATURE_BLE #include "ble_bobby.h" -#endif #ifdef FEATURE_WEBSERVER #include "webserver.h" #endif @@ -113,9 +111,7 @@ BobbySchedulerTask schedulerTasksArr[] { #ifdef FEATURE_OTA BobbySchedulerTask { "ota", initOta, handleOta, 50ms }, #endif -#ifdef FEATURE_BLE BobbySchedulerTask { "ble", initBle, handleBle, 100ms }, -#endif #ifdef FEATURE_WEBSERVER BobbySchedulerTask { "webserver", initWebserver, handleWebserver, 100ms }, #endif