Update Arduino core and BLE/WiFiManager libs. (#1310)

* Update Arduino core and BLE/WiFiManager libs.

* Add esp32-s3 and esp32-c3 environments.

* Update build script to use matrix.

* Update release build.

* Fix WiFiManager crash

* Use espressif32 version 3.5.0 for standard ESP32.

* Resolves BLE scan_evt timeout issue with latest version (5.2.0).

* ESP32C3 and ESP32S3 Env's use espressif32 version 5.2.0.

* Update LED pins for C3/S3 environments.
This commit is contained in:
h2zero authored and GitHub committed 2022-11-13 12:35:18 -06:00
1 parent 3d589ffa90
commit 9d7086558b
6 files changed
+121 -19

No files matched your search

+73 -6
View File
@@ -4,28 +4,95 @@ on: [push, pull_request]
jobs: jobs:
build: build:
strategy:
fail-fast: false
matrix:
environments:
- "rfbridge"
- "sonoff-rfbridge-direct"
- "esp32dev-all-test"
- "esp32dev-rf"
- "esp32dev-pilight-cc1101"
- "esp32dev-somfy-cc1101"
- "esp32dev-pilight-somfy-cc1101"
- "esp32dev-weatherstation"
- "esp32dev-gf-sun-inverter"
- "esp32dev-ir"
- "esp32dev-ble"
- "esp32dev-ble-openhab"
- "esp32dev-ble-mqtt-undecoded"
- "esp32dev-ble-aws"
- "esp32dev-ble-cont"
- "esp32feather-ble"
- "esp32-lolin32lite-ble"
- "esp32-olimex-gtw-ble-eth"
- "esp32-olimex-gtw-ble-poe"
- "esp32-olimex-gtw-ble-poe-iso"
- "esp32-wt32-eth01-ble-eth"
- "esp32-olimex-gtw-ble-wifi"
- "esp32-m5stick-ble"
- "esp32-m5stack-ble"
- "esp32-m5tough-ble"
- "esp32-m5stick-c-ble"
- "esp32-m5stick-cp-ble"
- "esp32-m5atom"
- "esp32dev-rtl_433"
- "heltec-rtl_433"
- "esp32dev-multi_receiver"
- "tinypico-ble"
- "ttgo-lora32-v1-868"
- "ttgo-lora32-v1-915"
- "ttgo-t-beam"
- "heltec-wifi-lora-32-868"
- "heltec-wifi-lora-32-915"
- "esp32dev-mqtt-fw-test"
- "nodemcuv2-all-test"
- "nodemcuv2-fastled-test"
- "nodemcuv2-2g"
- "nodemcuv2-ir"
- "nodemcuv2-rs232"
- "avatto-bakeey-ir"
- "nodemcuv2-rf"
- "nodemcuv2-rf-cc1101"
- "nodemcuv2-somfy-cc1101"
- "manual-wifi-test"
- "openhab-test"
- "nodemcuv2-mqtt-fw-test"
- "rf-wifi-gateway"
- "nodemcuv2-rf2"
- "nodemcuv2-rf2-cc1101"
- "nodemcuv2-pilight"
- "nodemcuv2-weatherstation"
- "sonoff-basic"
- "sonoff-basic-rfr3"
- "atmega-all-test"
- "uno-rf"
- "uno-fastled"
- "esp32dev-ble-datatest"
- "esp32s3-dev-c1-ble"
- "esp32c3-dev-m1-ble"
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build with PlatformIO name: Build with PlatformIO
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v4
with: with:
python-version: "3.7" python-version: "3.x"
- name: Install platformio - name: Install platformio
run: | run: |
python -m pip install --upgrade pip python -m pip install --upgrade pip
pip install platformio pip install platformio
- name: Run PlatformIO - name: Run PlatformIO
run: platformio run run: platformio run -e ${{ matrix.environments }}
documentation: documentation:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Create the documentation name: Create the documentation
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Node.js - name: Set up Node.js
uses: actions/setup-node@v1 uses: actions/setup-node@v3
with: with:
node-version: "14.x" node-version: "14.x"
- name: Install build dependencies - name: Install build dependencies
+5 -5
View File
@@ -9,9 +9,9 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Build and upload Assets to Release name: Build and upload Assets to Release
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v4
with: with:
python-version: "3.7" python-version: "3.7"
- name: Install platformio - name: Install platformio
@@ -44,13 +44,13 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
name: Create the documentation and deploy it to GitHub Pages name: Create the documentation and deploy it to GitHub Pages
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
- name: Set up Node.js - name: Set up Node.js
uses: actions/setup-node@v1 uses: actions/setup-node@v3
with: with:
node-version: "14.x" node-version: "14.x"
- name: Set up Python - name: Set up Python
uses: actions/setup-python@v2 uses: actions/setup-python@v4
with: with:
python-version: "3.7" python-version: "3.7"
- name: Install build dependencies - name: Install build dependencies
+1 -2
View File
@@ -32,7 +32,6 @@ Thanks to wolass https://github.com/wolass for suggesting me HM 10 and dinosd ht
#ifdef ZgatewayBT #ifdef ZgatewayBT
# include "FreeRTOS.h"
SemaphoreHandle_t semaphoreCreateOrUpdateDevice; SemaphoreHandle_t semaphoreCreateOrUpdateDevice;
SemaphoreHandle_t semaphoreBLEOperation; SemaphoreHandle_t semaphoreBLEOperation;
QueueHandle_t BLEQueue; QueueHandle_t BLEQueue;
@@ -46,8 +45,8 @@ QueueHandle_t BLEQueue;
# include <esp_bt.h> # include <esp_bt.h>
# include <esp_bt_main.h> # include <esp_bt_main.h>
# include <esp_wifi.h> # include <esp_wifi.h>
# include <stdatomic.h>
# include <atomic>
# include <vector> # include <vector>
# include "ZgatewayBLEConnect.h" # include "ZgatewayBLEConnect.h"
+1 -1
View File
@@ -44,7 +44,7 @@ void rtl_433_Callback(char* message) {
return; return;
} }
unsigned long MQTTvalue = (int)RFrtl_433_ESPdata["id"] + round(RFrtl_433_ESPdata["temperature_C"]); unsigned long MQTTvalue = (int)RFrtl_433_ESPdata["id"] + round((float)RFrtl_433_ESPdata["temperature_C"]);
String topic = String(subjectRTL_433toMQTT); String topic = String(subjectRTL_433toMQTT);
# if valueAsATopic # if valueAsATopic
String model = RFrtl_433_ESPdata["model"]; String model = RFrtl_433_ESPdata["model"];
+2 -2
View File
@@ -1192,8 +1192,8 @@ void setup_wifimanager(bool reset_settings) {
WiFiManagerParameter custom_mqtt_user("user", "mqtt user", mqtt_user, parameters_size); WiFiManagerParameter custom_mqtt_user("user", "mqtt user", mqtt_user, parameters_size);
WiFiManagerParameter custom_mqtt_pass("pass", "mqtt pass", mqtt_pass, parameters_size); WiFiManagerParameter custom_mqtt_pass("pass", "mqtt pass", mqtt_pass, parameters_size);
WiFiManagerParameter custom_mqtt_topic("topic", "mqtt base topic", mqtt_topic, mqtt_topic_max_size); WiFiManagerParameter custom_mqtt_topic("topic", "mqtt base topic", mqtt_topic, mqtt_topic_max_size);
WiFiManagerParameter custom_mqtt_secure("secure", "mqtt secure", "1", 1, mqtt_secure ? "type=\"checkbox\" checked" : "type=\"checkbox\""); WiFiManagerParameter custom_mqtt_secure("secure", "mqtt secure", "1", 2, mqtt_secure ? "type=\"checkbox\" checked" : "type=\"checkbox\"");
WiFiManagerParameter custom_mqtt_cert("cert", "mqtt broker cert", mqtt_cert.c_str(), 2048); WiFiManagerParameter custom_mqtt_cert("cert", "<br/>mqtt broker cert", mqtt_cert.c_str(), 2048);
WiFiManagerParameter custom_gateway_name("name", "gateway name", gateway_name, parameters_size); WiFiManagerParameter custom_gateway_name("name", "gateway name", gateway_name, parameters_size);
# endif # endif
//WiFiManager //WiFiManager
+39 -3
View File
@@ -100,7 +100,7 @@ arduinolog = https://github.com/1technophile/Arduino-Log.git#d13cd80
pubsubclient = PubSubClient@2.8 pubsubclient = PubSubClient@2.8
rc-switch = https://github.com/1technophile/rc-switch.git#98537e9 rc-switch = https://github.com/1technophile/rc-switch.git#98537e9
newremoteswitch = https://github.com/1technophile/NewRemoteSwitch.git#8eb980e newremoteswitch = https://github.com/1technophile/NewRemoteSwitch.git#8eb980e
ble = https://github.com/h2zero/NimBLE-Arduino.git#1.3.8 ble = https://github.com/h2zero/NimBLE-Arduino.git#1.4.1
irremoteesp = IRremoteESP8266@2.8.2 irremoteesp = IRremoteESP8266@2.8.2
irremote = https://github.com/z3t0/Arduino-IRremote.git#1c08a37 irremote = https://github.com/z3t0/Arduino-IRremote.git#1c08a37
lora = https://github.com/sandeepmistry/arduino-LoRa.git#f4a1d27 lora = https://github.com/sandeepmistry/arduino-LoRa.git#f4a1d27
@@ -118,7 +118,7 @@ htu21 = SparkFun HTU21D Humidity and Temperature Sensor Breakout@1.1.3
ahtx0 = Adafruit AHTX0 ahtx0 = Adafruit AHTX0
ina226 = https://github.com/jarzebski/Arduino-INA226.git#968a684 ina226 = https://github.com/jarzebski/Arduino-INA226.git#968a684
a6lib = https://github.com/h2zero/A6lib a6lib = https://github.com/h2zero/A6lib
wifimanager32 = https://github.com/tzapu/WiFiManager.git#c3ff582 wifimanager32 = https://github.com/tzapu/WiFiManager.git#9f5981e
wifimanager8266 = https://github.com/tzapu/WiFiManager.git#2.0.5-beta wifimanager8266 = https://github.com/tzapu/WiFiManager.git#2.0.5-beta
ethernet = Ethernet ethernet = Ethernet
esp8266_mdns = esp8266_mdns esp8266_mdns = esp8266_mdns
@@ -154,7 +154,8 @@ monitor_speed = 115200
[com] [com]
esp8266_platform = espressif8266@3.2.0 esp8266_platform = espressif8266@3.2.0
esp32_platform = espressif32@3.3.1 esp32_platform = espressif32@3.5.0
esp32_c3_s3_platform = espressif32@5.2.0
atmelavr_platform = atmelavr@3.3.0 atmelavr_platform = atmelavr@3.3.0
[com-esp] [com-esp]
@@ -1388,3 +1389,38 @@ build_flags =
'-DpubKnownBLEServiceData=true' '-DpubKnownBLEServiceData=true'
'-DpubBLEServiceUUID=true' '-DpubBLEServiceUUID=true'
'-DGateway_Name="OpenMQTTGateway_ESP32_BLE"' '-DGateway_Name="OpenMQTTGateway_ESP32_BLE"'
[env:esp32s3-dev-c1-ble]
platform = ${com.esp32_c3_s3_platform}
board = esp32-s3-devkitc-1
lib_deps =
${com-esp.lib_deps}
${libraries.wifimanager32}
${libraries.ble}
${libraries.decoder}
build_flags =
${com-esp.build_flags}
'-DZgatewayBT="BT"'
'-DLED_SEND_RECEIVE=12'
'-DLED_SEND_RECEIVE_ON=0'
'-DLED_INFO=13'
'-DLED_ERROR=14'
'-DGateway_Name="OpenMQTTGateway_ESP32_BLE"'
[env:esp32c3-dev-m1-ble]
platform = ${com.esp32_c3_s3_platform}
board = esp32-c3-devkitm-1
board_build.partitions = min_spiffs.csv
lib_deps =
${com-esp.lib_deps}
${libraries.wifimanager32}
${libraries.ble}
${libraries.decoder}
build_flags =
${com-esp.build_flags}
'-DZgatewayBT="BT"'
'-DLED_SEND_RECEIVE=2'
'-DLED_SEND_RECEIVE_ON=0'
'-DLED_INFO=6'
'-DLED_ERROR=7'
'-DGateway_Name="OpenMQTTGateway_ESP32_BLE"'