Arduino Core 3 (#407)

* Add and remove libs and components for Arduino Core 3

* Arduino Core 3

* Add back Solo1

* Change ESP32-S3 to 4MB build

* Update README.md

* Fix retain and number of retries

* Fix rolling log

* Fix defaults

* Fix BleScanner on Solo1

* Export settings

* Import settings

* Fix HA Battery voltage

* Change submodule

* Update espMqttClient and AsyncTCP

* Webserial and MQTT/Network reconnecting

* Update nuki_ble

---------

Co-authored-by: iranl <iranl@github.com>
This commit is contained in:
iranl
2024-07-05 18:45:39 +02:00
committed by GitHub
parent 193ebb5f91
commit 6b0100fd61
236 changed files with 16390 additions and 9740 deletions

View File

@@ -0,0 +1,9 @@
name: Arduino Lint
on: [push, pull_request]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: arduino/arduino-lint-action@v1

View File

@@ -0,0 +1,62 @@
name: Build with Arduino IDE
on:
- push
- pull_request
jobs:
build-for-esp8266:
runs-on: ubuntu-latest
strategy:
matrix:
fqbn:
- esp8266:esp8266:generic
steps:
- uses: actions/checkout@v3
- uses: arduino/compile-sketches@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
fqbn: ${{ matrix.fqbn }}
enable-deltas-report: true
platforms: |
- name: esp8266:esp8266
source-url: https://arduino.esp8266.com/stable/package_esp8266com_index.json
sketch-paths: |
- examples/largepayload-esp8266
- examples/simple-esp8266
- examples/simpleAsync-esp8266
- examples/tls-esp8266
libraries: |
- name: espMqttClient
source-path: ./
- name: ESPAsyncTCP
source-url: https://github.com/me-no-dev/ESPAsyncTCP.git
build-for-esp32:
runs-on: ubuntu-latest
strategy:
matrix:
fqbn:
- esp32:esp32:esp32
steps:
- uses: actions/checkout@v3
- uses: arduino/compile-sketches@v1
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
fqbn: ${{ matrix.fqbn }}
enable-deltas-report: true
platforms: |
- name: esp32:esp32
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
sketch-paths: |
- examples/simple-esp32
- examples/simpleAsync-esp32
- examples/tls-esp32
libraries: |
- name: espMqttClient
source-path: ./
- name: AsyncTCP
source-url: https://github.com/me-no-dev/AsyncTCP.git

View File

@@ -0,0 +1,90 @@
name: Build with Platformio
on: [push, pull_request]
jobs:
build-for-esp8266:
runs-on: ubuntu-latest
strategy:
matrix:
example: [
examples/largepayload-esp8266/largepayload-esp8266.ino,
examples/ota-esp8266/ota-esp8266.ino,
examples/simple-esp8266/simple-esp8266.ino,
examples/simpleAsync-esp8266/simpleAsync-esp8266.ino,
examples/tls-esp8266/tls-esp8266.ino
]
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cache/pip
~/.platformio/.cache
key: ${{ runner.os }}-pio
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install PlatformIO Core
run: pip install --upgrade platformio
- name: Download external libraries
run: pio pkg install --global --library me-no-dev/ESPAsyncTCP
- name: Build PlatformIO examples
run: pio ci --lib="." --board=d1_mini
env:
PLATFORMIO_CI_SRC: ${{ matrix.example }}
build-for-esp32:
runs-on: ubuntu-latest
strategy:
matrix:
example: [
examples/notask-esp32/notask-esp32.ino,
examples/simple-esp32/simple-esp32.ino,
examples/simpleAsync-esp32/simpleAsync-esp32.ino,
examples/tls-esp32/tls-esp32.ino
]
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cache/pip
~/.platformio/.cache
key: ${{ runner.os }}-pio
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install PlatformIO Core
run: pip install --upgrade platformio
- name: Download external libraries
run: pio pkg install --global --library me-no-dev/AsyncTCP
- name: Build PlatformIO examples
run: pio ci --lib="." --board=lolin32
env:
PLATFORMIO_CI_SRC: ${{ matrix.example }}
build-for-linux:
runs-on: ubuntu-latest
strategy:
matrix:
example: [
examples/simple-linux/main.cpp
]
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: |
~/.cache/pip
~/.platformio/.cache
key: ${{ runner.os }}-pio
- uses: actions/setup-python@v4
with:
python-version: '3.9'
- name: Install PlatformIO Core
run: pip install --upgrade platformio
- name: Build PlatformIO examples
run: pio ci --lib="." --project-conf="./examples/simple-linux/platformio.ini"
env:
PLATFORMIO_CI_SRC: ${{ matrix.example }}

View File

@@ -0,0 +1,22 @@
name: Cppcheck
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install platformio
- name: Cppcheck
run: |
pio check --fail-on-defect=medium --fail-on-defect=high --flags "--inline-suppr --enable=warning --enable=style --enable=performance --suppress=unusedFunction --suppress=preprocessorErrorDirective" --skip-packages

View File

@@ -0,0 +1,22 @@
name: cpplint
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install cpplint
- name: Linting
run: |
cpplint --repository=. --recursive --filter=-whitespace/line_length,-build/include ./src

View File

@@ -0,0 +1,29 @@
name: Test with Platformio
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
sudo apt update && sudo apt install -y valgrind
python -m pip install --upgrade pip
pip install platformio
- name: Start Mosquitto
uses: namoshek/mosquitto-github-action@v1
with:
version: '2.0'
ports: '1883:1883'
config: ${{ github.workspace }}/.github/etc/mosquitto.conf
- name: Test
run: |
pio test -e native -v