From 95b9dc3d2d0102ca7003ab010e06fa99b48086bb Mon Sep 17 00:00:00 2001 From: Mit4el Date: Fri, 14 Feb 2025 18:42:07 +0300 Subject: [PATCH] fix BLE --- include/MqttClient.h | 2 +- src/modules/sensors/Ble/Ble.cpp | 4 ++-- src/modules/sensors/Ble_part1/Ble_p1.cpp | 13 +++++++------ src/modules/sensors/Ble_part2/Ble_p2.cpp | 11 ++++++----- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/include/MqttClient.h b/include/MqttClient.h index 0085401f..9ab587dc 100644 --- a/include/MqttClient.h +++ b/include/MqttClient.h @@ -30,7 +30,7 @@ void publishWidgets(); void mqttCallback(char* topic, uint8_t* payload, size_t length); //void handleMqttStatus(bool send); -void handleMqttStatus(bool send, int state == -1); +void handleMqttStatus(bool send, int state = -1); const String getStateStr(int e); diff --git a/src/modules/sensors/Ble/Ble.cpp b/src/modules/sensors/Ble/Ble.cpp index 370287be..7dab51b5 100644 --- a/src/modules/sensors/Ble/Ble.cpp +++ b/src/modules/sensors/Ble/Ble.cpp @@ -181,7 +181,7 @@ void scanEndedCB(NimBLEScanResults results) //#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //class BleScan : public IoTItem, NimBLEScanCallbacks //#else -class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks +class BleScan : public IoTItem, NimBLEScanCallbacks //BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -205,7 +205,7 @@ public: return spr; } - void onResult(BLEAdvertisedDevice *advertisedDevice) + void onResult(const NimBLEAdvertisedDevice *advertisedDevice) override { JsonObject BLEdata = doc.to(); String mac_adress_ = advertisedDevice->getAddress().toString().c_str(); diff --git a/src/modules/sensors/Ble_part1/Ble_p1.cpp b/src/modules/sensors/Ble_part1/Ble_p1.cpp index 2aab9be7..c174a274 100644 --- a/src/modules/sensors/Ble_part1/Ble_p1.cpp +++ b/src/modules/sensors/Ble_part1/Ble_p1.cpp @@ -181,7 +181,7 @@ void scanEndedCB(NimBLEScanResults results) //#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //class BleScan : public IoTItem, NimBLEScanCallbacks //#else -class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks +class BleScan : public IoTItem, NimBLEScanCallbacks//BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -205,13 +205,13 @@ public: return spr; } - void onResult(BLEAdvertisedDevice *advertisedDevice) + void onResult(const NimBLEAdvertisedDevice *advertisedDevice) override { JsonObject BLEdata = doc.to(); String mac_adress_ = advertisedDevice->getAddress().toString().c_str(); mac_adress_.toUpperCase(); BLEdata["id"] = (char *)mac_adress_.c_str(); - + //SerialPrint("i", F("BLE"), "FOUND "+ mac_adress_); if (advertisedDevice->haveName()) { BLEdata["name"] = (char *)advertisedDevice->getName().c_str(); @@ -304,6 +304,7 @@ public: BleScan(String parameters) : IoTItem(parameters) { _scanDuration = jsonReadInt(parameters, "scanDuration"); + _scanDuration = _scanDuration * 1000; _filter = jsonReadStr(parameters, "filter"); jsonRead(parameters, "debug", _debug); @@ -342,13 +343,13 @@ public: //======================================================================================================= -void *getAPI_Ble(String subtype, String param) +void *getAPI_Ble_part1(String subtype, String param) { - if (subtype == F("BleScan")) + if (subtype == F("BleScan_p1")) { return new BleScan(param); } - else if (subtype == F("BleSens")) + else if (subtype == F("BleSens_p1")) { return new BleSens(param); } diff --git a/src/modules/sensors/Ble_part2/Ble_p2.cpp b/src/modules/sensors/Ble_part2/Ble_p2.cpp index f74b2419..bb815f0c 100644 --- a/src/modules/sensors/Ble_part2/Ble_p2.cpp +++ b/src/modules/sensors/Ble_part2/Ble_p2.cpp @@ -181,7 +181,7 @@ void scanEndedCB(NimBLEScanResults results) //#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //class BleScan : public IoTItem, NimBLEScanCallbacks //#else -class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks +class BleScan : public IoTItem, NimBLEScanCallbacks //BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -205,7 +205,7 @@ public: return spr; } - void onResult(BLEAdvertisedDevice *advertisedDevice) + void onResult(const NimBLEAdvertisedDevice *advertisedDevice) override { JsonObject BLEdata = doc.to(); String mac_adress_ = advertisedDevice->getAddress().toString().c_str(); @@ -304,6 +304,7 @@ public: BleScan(String parameters) : IoTItem(parameters) { _scanDuration = jsonReadInt(parameters, "scanDuration"); + _scanDuration = _scanDuration * 1000; _filter = jsonReadStr(parameters, "filter"); jsonRead(parameters, "debug", _debug); @@ -342,13 +343,13 @@ public: //======================================================================================================= -void *getAPI_Ble(String subtype, String param) +void *getAPI_Ble_part2(String subtype, String param) { - if (subtype == F("BleScan")) + if (subtype == F("BleScan_p2")) { return new BleScan(param); } - else if (subtype == F("BleSens")) + else if (subtype == F("BleSens_p2")) { return new BleSens(param); }