diff --git a/src/modules/sensors/Ble/Ble.cpp b/src/modules/sensors/Ble/Ble.cpp index caaa3d53..370287be 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 +class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -218,13 +218,20 @@ public: } if (advertisedDevice->haveManufacturerData()) { +#if defined (esp32c6_4mb) || defined (esp32c6_8mb) char *manufacturerdata = BLEUtils::buildHexData(NULL, (uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#else + std::string manufacturerdata = NimBLEUtils::dataToHexString((uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#endif + BLEdata["manufacturerdata"] = manufacturerdata; + #if defined (esp32c6_4mb) || defined (esp32c6_8mb) free(manufacturerdata); + #endif } -#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) - if (advertisedDevice->haveRSSI()) -#endif +//#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) //&& !defined (esp32_4mb3f) +// if (advertisedDevice->haveRSSI()) +//#endif BLEdata["rssi"] = (int)advertisedDevice->getRSSI(); if (advertisedDevice->haveTXPower()) BLEdata["txpower"] = (int8_t)advertisedDevice->getTXPower(); @@ -302,11 +309,11 @@ public: BLEDevice::init(""); pBLEScan = BLEDevice::getScan(); // create new scan -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->setScanCallbacks(this); -#else - pBLEScan->setAdvertisedDeviceCallbacks(this); -#endif +//#else +// pBLEScan->setAdvertisedDeviceCallbacks(this); +//#endif pBLEScan->setActiveScan(false); // active scan uses more power, but get results faster pBLEScan->setInterval(100); pBLEScan->setWindow(99); // less or equal setInterval value @@ -321,11 +328,11 @@ public: if (_scanDuration > 0) { SerialPrint("i", F("BLE"), "Start Scanning..."); -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->start(_scanDuration, false); -#else - pBLEScan->start(_scanDuration, scanEndedCB, false); -#endif +//#else +// pBLEScan->start(_scanDuration, scanEndedCB, false); +//#endif } } } diff --git a/src/modules/sensors/Ble/modinfo.json b/src/modules/sensors/Ble/modinfo.json index 9a75dbd9..65e57602 100644 --- a/src/modules/sensors/Ble/modinfo.json +++ b/src/modules/sensors/Ble/modinfo.json @@ -65,13 +65,13 @@ "defActive": false, "usedLibs": { "esp32c6_4mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], "esp32c6_8mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], - "esp32_4mb3f": [ - "https://github.com/Mit4el/NimBLE-Arduino.git" + "esp32*": [ + "https://github.com/Mit4el/NimBLE-Arduino.git#release/2.2" ], "esp32s2_4mb": [ "exclude" diff --git a/src/modules/sensors/Ble_part1/Ble_p1.cpp b/src/modules/sensors/Ble_part1/Ble_p1.cpp index 534e7c4b..2aab9be7 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 +class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -218,13 +218,20 @@ public: } if (advertisedDevice->haveManufacturerData()) { +#if defined (esp32c6_4mb) || defined (esp32c6_8mb) char *manufacturerdata = BLEUtils::buildHexData(NULL, (uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#else + std::string manufacturerdata = NimBLEUtils::dataToHexString((uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#endif + BLEdata["manufacturerdata"] = manufacturerdata; + #if defined (esp32c6_4mb) || defined (esp32c6_8mb) free(manufacturerdata); + #endif } -#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) - if (advertisedDevice->haveRSSI()) -#endif +//#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) //&& !defined (esp32_4mb3f) +// if (advertisedDevice->haveRSSI()) +//#endif BLEdata["rssi"] = (int)advertisedDevice->getRSSI(); if (advertisedDevice->haveTXPower()) BLEdata["txpower"] = (int8_t)advertisedDevice->getTXPower(); @@ -302,11 +309,11 @@ public: BLEDevice::init(""); pBLEScan = BLEDevice::getScan(); // create new scan -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->setScanCallbacks(this); -#else - pBLEScan->setAdvertisedDeviceCallbacks(this); -#endif +//#else +// pBLEScan->setAdvertisedDeviceCallbacks(this); +//#endif pBLEScan->setActiveScan(false); // active scan uses more power, but get results faster pBLEScan->setInterval(100); pBLEScan->setWindow(99); // less or equal setInterval value @@ -321,11 +328,11 @@ public: if (_scanDuration > 0) { SerialPrint("i", F("BLE"), "Start Scanning..."); -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->start(_scanDuration, false); -#else - pBLEScan->start(_scanDuration, scanEndedCB, false); -#endif +//#else +// pBLEScan->start(_scanDuration, scanEndedCB, false); +//#endif } } } @@ -335,13 +342,13 @@ public: //======================================================================================================= -void *getAPI_Ble_part1(String subtype, String param) +void *getAPI_Ble(String subtype, String param) { - if (subtype == F("BleScan_p1")) + if (subtype == F("BleScan")) { return new BleScan(param); } - else if (subtype == F("BleSens_p1")) + else if (subtype == F("BleSens")) { return new BleSens(param); } diff --git a/src/modules/sensors/Ble_part1/modinfo.json b/src/modules/sensors/Ble_part1/modinfo.json index 0d2f484e..2ceaa1a0 100644 --- a/src/modules/sensors/Ble_part1/modinfo.json +++ b/src/modules/sensors/Ble_part1/modinfo.json @@ -65,13 +65,13 @@ "defActive": false, "usedLibs": { "esp32c6_4mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], "esp32c6_8mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], "esp32*": [ - "https://github.com/Mit4el/NimBLE-Arduino.git" + "https://github.com/Mit4el/NimBLE-Arduino.git#release/2.2" ], "esp32s2_4mb": [ "exclude" diff --git a/src/modules/sensors/Ble_part2/Ble_p2.cpp b/src/modules/sensors/Ble_part2/Ble_p2.cpp index 9c3be51d..f74b2419 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 +class BleScan : public IoTItem, BLEAdvertisedDeviceCallbacks //NimBLEScanCallbacks //#endif { private: @@ -218,13 +218,20 @@ public: } if (advertisedDevice->haveManufacturerData()) { +#if defined (esp32c6_4mb) || defined (esp32c6_8mb) char *manufacturerdata = BLEUtils::buildHexData(NULL, (uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#else + std::string manufacturerdata = NimBLEUtils::dataToHexString((uint8_t *)advertisedDevice->getManufacturerData().data(), advertisedDevice->getManufacturerData().length()); +#endif + BLEdata["manufacturerdata"] = manufacturerdata; + #if defined (esp32c6_4mb) || defined (esp32c6_8mb) free(manufacturerdata); + #endif } -#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) - if (advertisedDevice->haveRSSI()) -#endif +//#if !defined (esp32c6_4mb) && !defined (esp32c6_8mb) //&& !defined (esp32_4mb3f) +// if (advertisedDevice->haveRSSI()) +//#endif BLEdata["rssi"] = (int)advertisedDevice->getRSSI(); if (advertisedDevice->haveTXPower()) BLEdata["txpower"] = (int8_t)advertisedDevice->getTXPower(); @@ -302,11 +309,11 @@ public: BLEDevice::init(""); pBLEScan = BLEDevice::getScan(); // create new scan -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->setScanCallbacks(this); -#else - pBLEScan->setAdvertisedDeviceCallbacks(this); -#endif +//#else +// pBLEScan->setAdvertisedDeviceCallbacks(this); +//#endif pBLEScan->setActiveScan(false); // active scan uses more power, but get results faster pBLEScan->setInterval(100); pBLEScan->setWindow(99); // less or equal setInterval value @@ -321,11 +328,11 @@ public: if (_scanDuration > 0) { SerialPrint("i", F("BLE"), "Start Scanning..."); -#if defined (esp32c6_4mb) || defined (esp32c6_8mb) +//#if defined (esp32c6_4mb) || defined (esp32c6_8mb) //|| defined (esp32_4mb3f) pBLEScan->start(_scanDuration, false); -#else - pBLEScan->start(_scanDuration, scanEndedCB, false); -#endif +//#else +// pBLEScan->start(_scanDuration, scanEndedCB, false); +//#endif } } } @@ -335,13 +342,13 @@ public: //======================================================================================================= -void *getAPI_Ble_part2(String subtype, String param) +void *getAPI_Ble(String subtype, String param) { - if (subtype == F("BleScan_p2")) + if (subtype == F("BleScan")) { return new BleScan(param); } - else if (subtype == F("BleSens_p2")) + else if (subtype == F("BleSens")) { return new BleSens(param); } diff --git a/src/modules/sensors/Ble_part2/modinfo.json b/src/modules/sensors/Ble_part2/modinfo.json index 26241435..06f8fbf9 100644 --- a/src/modules/sensors/Ble_part2/modinfo.json +++ b/src/modules/sensors/Ble_part2/modinfo.json @@ -65,13 +65,13 @@ "defActive": false, "usedLibs": { "esp32c6_4mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], "esp32c6_8mb": [ - "https://github.com/h2zero/NimBLE-Arduino#c6-build" + "https://github.com/Mit4el/NimBLE-Arduino.git#c6-build" ], "esp32*": [ - "https://github.com/Mit4el/NimBLE-Arduino.git" + "https://github.com/Mit4el/NimBLE-Arduino.git#release/2.2" ], "esp32s2_4mb": [ "exclude"