From 0c3636cc69cbc88b672279e00f83fa8d2510d5bd Mon Sep 17 00:00:00 2001 From: tyeth Date: Wed, 16 Oct 2024 19:31:56 +0100 Subject: [PATCH 1/4] Add support for Adafruit Metro ESP32-S3 Also add normal + debug CI builds for Metro S2+S3 --- examples/Wippersnapper_NoFS/.metroesp32s2_debug.test.skip | 2 ++ examples/Wippersnapper_NoFS/.metroesp32s3.test.skip | 1 + examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip | 2 ++ examples/Wippersnapper_demo/.metroesp32s2_debug.test.skip | 2 ++ examples/Wippersnapper_demo/.metroesp32s3.generate | 1 + examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip | 2 ++ examples/wippersnapper_debug/.metroesp32s2_debug.generate | 1 + examples/wippersnapper_debug/.metroesp32s3.test.skip | 1 + examples/wippersnapper_debug/.metroesp32s3_debug.generate | 1 + src/Wippersnapper_Boards.h | 7 +++++++ src/provisioning/tinyusb/Wippersnapper_FS.cpp | 2 +- 11 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 examples/Wippersnapper_NoFS/.metroesp32s2_debug.test.skip create mode 100644 examples/Wippersnapper_NoFS/.metroesp32s3.test.skip create mode 100644 examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip create mode 100644 examples/Wippersnapper_demo/.metroesp32s2_debug.test.skip create mode 100644 examples/Wippersnapper_demo/.metroesp32s3.generate create mode 100644 examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip create mode 100644 examples/wippersnapper_debug/.metroesp32s2_debug.generate create mode 100644 examples/wippersnapper_debug/.metroesp32s3.test.skip create mode 100644 examples/wippersnapper_debug/.metroesp32s3_debug.generate diff --git a/examples/Wippersnapper_NoFS/.metroesp32s2_debug.test.skip b/examples/Wippersnapper_NoFS/.metroesp32s2_debug.test.skip new file mode 100644 index 000000000..139597f9c --- /dev/null +++ b/examples/Wippersnapper_NoFS/.metroesp32s2_debug.test.skip @@ -0,0 +1,2 @@ + + diff --git a/examples/Wippersnapper_NoFS/.metroesp32s3.test.skip b/examples/Wippersnapper_NoFS/.metroesp32s3.test.skip new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/examples/Wippersnapper_NoFS/.metroesp32s3.test.skip @@ -0,0 +1 @@ + diff --git a/examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip b/examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip new file mode 100644 index 000000000..139597f9c --- /dev/null +++ b/examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip @@ -0,0 +1,2 @@ + + diff --git a/examples/Wippersnapper_demo/.metroesp32s2_debug.test.skip b/examples/Wippersnapper_demo/.metroesp32s2_debug.test.skip new file mode 100644 index 000000000..139597f9c --- /dev/null +++ b/examples/Wippersnapper_demo/.metroesp32s2_debug.test.skip @@ -0,0 +1,2 @@ + + diff --git a/examples/Wippersnapper_demo/.metroesp32s3.generate b/examples/Wippersnapper_demo/.metroesp32s3.generate new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/examples/Wippersnapper_demo/.metroesp32s3.generate @@ -0,0 +1 @@ + diff --git a/examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip b/examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip new file mode 100644 index 000000000..139597f9c --- /dev/null +++ b/examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip @@ -0,0 +1,2 @@ + + diff --git a/examples/wippersnapper_debug/.metroesp32s2_debug.generate b/examples/wippersnapper_debug/.metroesp32s2_debug.generate new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/examples/wippersnapper_debug/.metroesp32s2_debug.generate @@ -0,0 +1 @@ + diff --git a/examples/wippersnapper_debug/.metroesp32s3.test.skip b/examples/wippersnapper_debug/.metroesp32s3.test.skip new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/examples/wippersnapper_debug/.metroesp32s3.test.skip @@ -0,0 +1 @@ + diff --git a/examples/wippersnapper_debug/.metroesp32s3_debug.generate b/examples/wippersnapper_debug/.metroesp32s3_debug.generate new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/examples/wippersnapper_debug/.metroesp32s3_debug.generate @@ -0,0 +1 @@ + diff --git a/src/Wippersnapper_Boards.h b/src/Wippersnapper_Boards.h index b119329a1..37e3db870 100644 --- a/src/Wippersnapper_Boards.h +++ b/src/Wippersnapper_Boards.h @@ -51,6 +51,13 @@ #define STATUS_NEOPIXEL_PIN 45 #define STATUS_NEOPIXEL_NUM 1 #define USE_PSRAM ///< Board has PSRAM, use it for dynamic memory allocation +#elif defined(ARDUINO_METRO_ESP32S3) +#define BOARD_ID "metroesp32s3" +#define USE_TINYUSB +#define USE_STATUS_NEOPIXEL +#define STATUS_NEOPIXEL_PIN 46 +#define STATUS_NEOPIXEL_NUM 1 +#define USE_PSRAM ///< Board has PSRAM, use it for dynamic memory allocation #elif defined(ARDUINO_MAGTAG29_ESP32S2) #define BOARD_ID "magtag" #define USE_TINYUSB diff --git a/src/provisioning/tinyusb/Wippersnapper_FS.cpp b/src/provisioning/tinyusb/Wippersnapper_FS.cpp index 3d2473748..d99c6098b 100644 --- a/src/provisioning/tinyusb/Wippersnapper_FS.cpp +++ b/src/provisioning/tinyusb/Wippersnapper_FS.cpp @@ -14,7 +14,7 @@ */ #if defined(ARDUINO_MAGTAG29_ESP32S2) || defined(ARDUINO_METRO_ESP32S2) || \ - defined(ARDUINO_FUNHOUSE_ESP32S2) || \ + defined(ARDUINO_METRO_ESP32S3) || defined(ARDUINO_FUNHOUSE_ESP32S2) || \ defined(ADAFRUIT_PYPORTAL_M4_TITANO) || \ defined(ADAFRUIT_METRO_M4_AIRLIFT_LITE) || defined(ADAFRUIT_PYPORTAL) || \ defined(ARDUINO_ADAFRUIT_FEATHER_ESP32S2) || \ From 92286c87eeb6f3868bb96c4f113063c42ce1740a Mon Sep 17 00:00:00 2001 From: tyeth Date: Wed, 16 Oct 2024 20:41:41 +0100 Subject: [PATCH 2/4] Add platformIO entry + CI entries for Metro-S3/2 --- .github/workflows/build-clang-doxy.yml | 3 +++ platformio.ini | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/.github/workflows/build-clang-doxy.yml b/.github/workflows/build-clang-doxy.yml index 1afce174e..db3f4c8b3 100644 --- a/.github/workflows/build-clang-doxy.yml +++ b/.github/workflows/build-clang-doxy.yml @@ -159,6 +159,7 @@ jobs: [ "magtag", "metroesp32s2", + "metroesp32s3", "feather_esp32s2", "feather_esp32s2_tft", "feather_esp32s2_reverse_tft", @@ -570,6 +571,8 @@ jobs: "feather_esp32s3_4mbflash_2mbpsram_debug", "feather_esp32s3_tft_debug", "wippersnapper_feather_esp32s3_reverse_tft_debug", + "metroesp32s2_debug", + "metroesp32s3_debug", ] steps: - uses: actions/setup-python@v5 diff --git a/platformio.ini b/platformio.ini index f0bba3b3d..a17425c17 100644 --- a/platformio.ini +++ b/platformio.ini @@ -262,6 +262,15 @@ build_flags = -DARDUINO_METRO_ESP32S2 -DBOARD_HAS_PSRAM board_build.partitions = tinyuf2-partitions-4MB.csv extra_scripts = pre:rename_usb_config.py +; Adafruit Metro ESP32-S3 +[env:adafruit_metro_esp32s3] +extends = common:esp32 +board = adafruit_metro_esp32s3 +build_flags = -DARDUINO_METRO_ESP32S3 -DBOARD_HAS_PSRAM +;set partition to tinyuf2-partitions-16MB.csv as of idf 5.1 +board_build.partitions = tinyuf2-partitions-16MB.csv +extra_scripts = pre:rename_usb_config.py + ; Adafruit Funhouse ESP32-S2 [env:adafruit_funhouse_esp32s2] extends = common:esp32 From 9d3442c72dd498adfc0211b36b6178704d277e59 Mon Sep 17 00:00:00 2001 From: tyeth Date: Mon, 21 Oct 2024 13:20:42 +0100 Subject: [PATCH 3/4] Correct build targets for S2/S3 debug --- .github/workflows/build-clang-doxy.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-clang-doxy.yml b/.github/workflows/build-clang-doxy.yml index db3f4c8b3..4314a4370 100644 --- a/.github/workflows/build-clang-doxy.yml +++ b/.github/workflows/build-clang-doxy.yml @@ -159,7 +159,7 @@ jobs: [ "magtag", "metroesp32s2", - "metroesp32s3", + "metro_esp32s3", "feather_esp32s2", "feather_esp32s2_tft", "feather_esp32s2_reverse_tft", @@ -572,7 +572,7 @@ jobs: "feather_esp32s3_tft_debug", "wippersnapper_feather_esp32s3_reverse_tft_debug", "metroesp32s2_debug", - "metroesp32s3_debug", + "metro_esp32s3_debug", ] steps: - uses: actions/setup-python@v5 From 3086e0d362e185788b46afed0c4b43098766ea15 Mon Sep 17 00:00:00 2001 From: tyeth Date: Mon, 21 Oct 2024 14:00:40 +0100 Subject: [PATCH 4/4] Rename Metro-S3 build targets to match ci-arduino --- .../{.metroesp32s3.test.skip => .metro_esp32s3.test.skip} | 0 ...etroesp32s3_debug.test.skip => .metro_esp32s3_debug.test.skip} | 0 .../{.metroesp32s3.generate => .metro_esp32s3.generate} | 0 ...etroesp32s3_debug.test.skip => .metro_esp32s3_debug.test.skip} | 0 .../{.metroesp32s3.test.skip => .metro_esp32s3.test.skip} | 0 ....metroesp32s3_debug.generate => .metro_esp32s3_debug.generate} | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename examples/Wippersnapper_NoFS/{.metroesp32s3.test.skip => .metro_esp32s3.test.skip} (100%) rename examples/Wippersnapper_NoFS/{.metroesp32s3_debug.test.skip => .metro_esp32s3_debug.test.skip} (100%) rename examples/Wippersnapper_demo/{.metroesp32s3.generate => .metro_esp32s3.generate} (100%) rename examples/Wippersnapper_demo/{.metroesp32s3_debug.test.skip => .metro_esp32s3_debug.test.skip} (100%) rename examples/wippersnapper_debug/{.metroesp32s3.test.skip => .metro_esp32s3.test.skip} (100%) rename examples/wippersnapper_debug/{.metroesp32s3_debug.generate => .metro_esp32s3_debug.generate} (100%) diff --git a/examples/Wippersnapper_NoFS/.metroesp32s3.test.skip b/examples/Wippersnapper_NoFS/.metro_esp32s3.test.skip similarity index 100% rename from examples/Wippersnapper_NoFS/.metroesp32s3.test.skip rename to examples/Wippersnapper_NoFS/.metro_esp32s3.test.skip diff --git a/examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip b/examples/Wippersnapper_NoFS/.metro_esp32s3_debug.test.skip similarity index 100% rename from examples/Wippersnapper_NoFS/.metroesp32s3_debug.test.skip rename to examples/Wippersnapper_NoFS/.metro_esp32s3_debug.test.skip diff --git a/examples/Wippersnapper_demo/.metroesp32s3.generate b/examples/Wippersnapper_demo/.metro_esp32s3.generate similarity index 100% rename from examples/Wippersnapper_demo/.metroesp32s3.generate rename to examples/Wippersnapper_demo/.metro_esp32s3.generate diff --git a/examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip b/examples/Wippersnapper_demo/.metro_esp32s3_debug.test.skip similarity index 100% rename from examples/Wippersnapper_demo/.metroesp32s3_debug.test.skip rename to examples/Wippersnapper_demo/.metro_esp32s3_debug.test.skip diff --git a/examples/wippersnapper_debug/.metroesp32s3.test.skip b/examples/wippersnapper_debug/.metro_esp32s3.test.skip similarity index 100% rename from examples/wippersnapper_debug/.metroesp32s3.test.skip rename to examples/wippersnapper_debug/.metro_esp32s3.test.skip diff --git a/examples/wippersnapper_debug/.metroesp32s3_debug.generate b/examples/wippersnapper_debug/.metro_esp32s3_debug.generate similarity index 100% rename from examples/wippersnapper_debug/.metroesp32s3_debug.generate rename to examples/wippersnapper_debug/.metro_esp32s3_debug.generate