From a9f1923255f7ca9b81191fce9dd7f827e1c8da28 Mon Sep 17 00:00:00 2001 From: samuelbles07 Date: Fri, 19 Dec 2025 14:57:31 +0700 Subject: [PATCH] Update how to compile Update workflow compile deps --- .github/workflows/check.yml | 2 ++ docs/howto-compile.md | 5 +++++ platformio.ini | 26 +++++++++++++------------- src/AgValue.h | 1 + src/AgWiFiConnector.cpp | 2 +- src/AgWiFiConnector.h | 6 +++--- 6 files changed, 25 insertions(+), 17 deletions(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index cf815db..0cbfc2a 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -78,6 +78,8 @@ jobs: examples/${{ matrix.example }} libraries: | - source-path: ./ + - name: NimBLE-Arduino + version: 2.3.7 cli-compile-flags: | - --warnings - none diff --git a/docs/howto-compile.md b/docs/howto-compile.md index 2bad278..70e08c4 100644 --- a/docs/howto-compile.md +++ b/docs/howto-compile.md @@ -26,6 +26,11 @@ Using library manager install the latest version (Tools ➝ Manage Libraries... - With **git** cli, execute this command `git clone --recursive https://github.com/airgradienthq/arduino.git AirGradient_Air_Quality_Sensor` - Restart Arduino IDE +#### Version >= 3.6.0 + +- Ensure `NimBLE-Arduino` by h2zero library version `2.3.7` is installed using Arduino library manager +- Follow steps of ">= 3.3.0" + 3. On tools tab, follow settings below ``` diff --git a/platformio.ini b/platformio.ini index 253c035..f99d494 100644 --- a/platformio.ini +++ b/platformio.ini @@ -16,7 +16,7 @@ build_flags = !echo '-D ARDUINO_USB_CDC_ON_BOOT=1 -D ARDUINO_USB_MODE=1 -D AG_LO board_build.partitions = partitions.csv monitor_speed = 115200 lib_deps = - aglib=symlink://../arduino + aglib=symlink://../arduino-dev EEPROM WebServer ESPmDNS @@ -28,18 +28,18 @@ lib_deps = DNSServer h2zero/NimBLE-Arduino@^2.1.0 -[env:esp8266] -platform = espressif8266 -board = d1_mini -framework = arduino -monitor_speed = 115200 -lib_deps = - aglib=symlink://../arduino - EEPROM - ESP8266HTTPClient - ESP8266WebServer - DNSServer - +; [env:esp8266] +; platform = espressif8266 +; board = d1_mini +; framework = arduino +; monitor_speed = 115200 +; lib_deps = +; aglib=symlink://../arduino +; EEPROM +; ESP8266HTTPClient +; ESP8266WebServer +; DNSServer +; monitor_filters = time [platformio] diff --git a/src/AgValue.h b/src/AgValue.h index 175bb88..33b44e2 100644 --- a/src/AgValue.h +++ b/src/AgValue.h @@ -9,6 +9,7 @@ #include #include #include +#include class Measurements { private: diff --git a/src/AgWiFiConnector.cpp b/src/AgWiFiConnector.cpp index a1612be..1538ea1 100644 --- a/src/AgWiFiConnector.cpp +++ b/src/AgWiFiConnector.cpp @@ -755,7 +755,7 @@ void WifiConnector::setupProvisionByBLE(const char *modelName) { NimBLECharacteristic *pManufCharacteristic = pServDeviceInfo->createCharacteristic("2A29", NIMBLE_PROPERTY::READ | NIMBLE_PROPERTY::READ_ENC); pManufCharacteristic->setValue("AirGradient"); - // Service and characteristics for wifi provisioning + // Service and characteristics for wifi provisioning NimBLEService *pServProvisioning = pServer->createService(BLE_SERVICE_UUID); auto characteristicCallback = new CharacteristicCallbacks(this); NimBLECharacteristic *pCredentialCharacteristic = diff --git a/src/AgWiFiConnector.h b/src/AgWiFiConnector.h index be45526..a838666 100644 --- a/src/AgWiFiConnector.h +++ b/src/AgWiFiConnector.h @@ -1,18 +1,18 @@ #ifndef _AG_WIFI_CONNECTOR_H_ #define _AG_WIFI_CONNECTOR_H_ +#include #include "AgOledDisplay.h" #include "AgStateMachine.h" #include "AirGradient.h" #include "AgConfigure.h" #include "Libraries/WiFiManager/WiFiManager.h" #include "Main/PrintLog.h" -#include "NimBLECharacteristic.h" -#include "NimBLEService.h" #include "esp32-hal.h" -#include #include +#include "NimBLECharacteristic.h" +#include "NimBLEService.h" // Provisioning Status Codes #define PROV_WIFI_CONNECT 0 // WiFi Connect