From 9a26372dc1d33b7e3c046d5ab0426199d5701011 Mon Sep 17 00:00:00 2001 From: Konrad Iturbe Date: Thu, 13 Mar 2025 11:44:09 +0100 Subject: [PATCH] Add basic CI integration using PlatformIO in GitHub CI (#143) * Add a basic CI builder * Remove expressif step * Add more builders * Fix issue with Async Web Server being deprecated * Redd heltec_wifi_lora_32_V3_2 * Fix heltec_wifi_lora_32_V3 target --- .github/workflows/default-board-build.yaml | 22 +++++++++++++ .github/workflows/lilygo-t3s3-lr1121.yaml | 22 +++++++++++++ .github/workflows/lilygo-t3s3-sx1262.yaml | 22 +++++++++++++ platformio.ini | 38 ++++++++++++++-------- 4 files changed, 91 insertions(+), 13 deletions(-) create mode 100644 .github/workflows/default-board-build.yaml create mode 100644 .github/workflows/lilygo-t3s3-lr1121.yaml create mode 100644 .github/workflows/lilygo-t3s3-sx1262.yaml diff --git a/.github/workflows/default-board-build.yaml b/.github/workflows/default-board-build.yaml new file mode 100644 index 0000000..788db32 --- /dev/null +++ b/.github/workflows/default-board-build.yaml @@ -0,0 +1,22 @@ +name: Build heltec board + +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/cache@v4 + with: + path: | + ~/.cache/pip + ~/.platformio/.cache + key: ${{ runner.os }}-pio + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Install PlatformIO Core + run: pip install --upgrade platformio + - name: Build PlatformIO Project + run: pio run --environment heltec_wifi_lora_32_V3 diff --git a/.github/workflows/lilygo-t3s3-lr1121.yaml b/.github/workflows/lilygo-t3s3-lr1121.yaml new file mode 100644 index 0000000..7321fad --- /dev/null +++ b/.github/workflows/lilygo-t3s3-lr1121.yaml @@ -0,0 +1,22 @@ +name: Build Lilygo T3S3 LR1121 + +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/cache@v4 + with: + path: | + ~/.cache/pip + ~/.platformio/.cache + key: ${{ runner.os }}-pio + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Install PlatformIO Core + run: pip install --upgrade platformio + - name: Build PlatformIO Project + run: pio run --environment lilygo-T3S3-v1-2-lr1121-900 diff --git a/.github/workflows/lilygo-t3s3-sx1262.yaml b/.github/workflows/lilygo-t3s3-sx1262.yaml new file mode 100644 index 0000000..237016c --- /dev/null +++ b/.github/workflows/lilygo-t3s3-sx1262.yaml @@ -0,0 +1,22 @@ +name: Build Lilygo T3S3 SX1262 + +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/cache@v4 + with: + path: | + ~/.cache/pip + ~/.platformio/.cache + key: ${{ runner.os }}-pio + - uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Install PlatformIO Core + run: pip install --upgrade platformio + - name: Build PlatformIO Project + run: pio run --environment lilygo-T3S3-v1-2-sx1262 diff --git a/platformio.ini b/platformio.ini index 7fb8742..8da9cdc 100644 --- a/platformio.ini +++ b/platformio.ini @@ -71,7 +71,8 @@ board_build.f_cpu = 240000000 board_build.filesystem = littlefs lib_deps = ropg/Heltec_ESP32_LoRa_v3@^0.9.1 - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DHELTEC_POWER_BUTTON -DHELTEC @@ -95,7 +96,8 @@ board_build.filesystem = littlefs lib_deps = ropg/Heltec_ESP32_LoRa_v3@^0.9.1 bblanchon/ArduinoJson@^7.2.0 - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DHELTEC_POWER_BUTTON -DHELTEC @@ -121,7 +123,8 @@ board_build.filesystem = littlefs lib_deps = ropg/Heltec_ESP32_LoRa_v3@^0.9.1 bblanchon/ArduinoJson@^7.2.0 - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DHELTEC_POWER_BUTTON -DHELTEC @@ -147,7 +150,8 @@ board_build.f_cpu = 240000000 board_build.filesystem = littlefs lib_deps = ropg/Heltec_ESP32_LoRa_v3@^0.9.1 - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DHELTEC_POWER_BUTTON -DHELTEC @@ -169,7 +173,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_SX1262 @@ -195,7 +200,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_SX1262 @@ -227,7 +233,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_LR1121 @@ -256,7 +263,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_LR1121 @@ -513,7 +521,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_SX1280_PA @@ -529,7 +538,7 @@ build_flags = -DARDUINO_USB_MODE=1 -DSERIAL_OUT -[env:lilygo-T3-v1-6-xs1276] +[env:lilygo-T3-v1-6-sx1276] platform = espressif32 board = esp32dev framework = arduino @@ -541,7 +550,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_V1_6_SX1276 @@ -652,7 +662,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_SX1280_PA @@ -686,7 +697,8 @@ lib_deps = RadioLib U8g2 XPowersLib - ESP Async WebServer + ESP32Async/AsyncTCP + ESP32Async/ESPAsyncWebServer build_flags = -DLILYGO -DT3_S3_V1_2_LR1121