From cb98036b8ed69f12a53ce1114d88631bea38f1ad Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 09:57:30 -0400 Subject: [PATCH 1/7] Update library.deps --- library.deps | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.deps b/library.deps index 7668ac9b4..0d8aa3fc5 100644 --- a/library.deps +++ b/library.deps @@ -1 +1 @@ -depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S +depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED@3.10.1, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S From c0d1f94d5ae87e279788455d6bd659438edc9ec6 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 10:00:02 -0400 Subject: [PATCH 2/7] trigger arduino CI --- simple_strand_palettes/simple_strand_palettes.ino | 1 - 1 file changed, 1 deletion(-) diff --git a/simple_strand_palettes/simple_strand_palettes.ino b/simple_strand_palettes/simple_strand_palettes.ino index 6054840ca..a1c3b42aa 100644 --- a/simple_strand_palettes/simple_strand_palettes.ino +++ b/simple_strand_palettes/simple_strand_palettes.ino @@ -2,7 +2,6 @@ // // SPDX-License-Identifier: MIT - #include "FastLED.h" // ColorWavesWithPalettes From c317e915715273bf02a6aaccff74ef29e9b3ac40 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 10:36:52 -0400 Subject: [PATCH 3/7] build flag --- .github/workflows/arduino_cron.yml | 55 +++++++++++++++++++ library.deps | 2 +- .../simple_strand_palettes.ino | 12 +++- 3 files changed, 66 insertions(+), 3 deletions(-) diff --git a/.github/workflows/arduino_cron.yml b/.github/workflows/arduino_cron.yml index bdc40c050..ce2154e35 100644 --- a/.github/workflows/arduino_cron.yml +++ b/.github/workflows/arduino_cron.yml @@ -100,6 +100,61 @@ jobs: git clone --quiet https://github.com/pschatzmann/ESP32-A2DP /home/runner/Arduino/libraries/ESP32-A2DP git clone --quiet https://github.com/pschatzmann/arduino-audio-tools /home/runner/Arduino/libraries/arduino-audio-tools + - name: Configure build flags for FastLED + run: | + echo "Checking for FastLED usage in repository..." + + # Check if any sketch uses FastLED + USES_FASTLED=false + + # Find all .ino files and check for FastLED usage + while IFS= read -r sketch; do + if grep -q "#include.*FastLED" "$sketch" 2>/dev/null || grep -q "include.*FastLED" "$sketch" 2>/dev/null; then + echo "Found FastLED usage in: $sketch" + USES_FASTLED=true + break + fi + done < <(find . -name "*.ino" -type f) + + # If FastLED is used, create platform.local.txt files for ALL platforms + if [ "$USES_FASTLED" = true ]; then + echo "FastLED detected in repository, applying compile flag fix for all platforms" + + # Wait for Arduino CLI to be fully set up + sleep 2 + + # Find all platform.txt files and create corresponding platform.local.txt + if [ -d ~/.arduino15/packages ]; then + find ~/.arduino15/packages -name platform.txt -type f | while read platform_file; do + dir=$(dirname "$platform_file") + echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" + echo "Created platform.local.txt in $dir" + done + fi + + # Also check for Arduino cores in other possible locations + ARDUINO_DIRS=( + "$HOME/.arduino15" + "$HOME/Arduino" + "/usr/local/share/arduino" + "/usr/share/arduino" + ) + + for arduino_dir in "${ARDUINO_DIRS[@]}"; do + if [ -d "$arduino_dir/packages" ]; then + find "$arduino_dir/packages" -name platform.txt -type f 2>/dev/null | while read platform_file; do + dir=$(dirname "$platform_file") + if [ ! -f "$dir/platform.local.txt" ]; then + echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" + echo "Created platform.local.txt in $dir" + fi + done + fi + done + else + echo "No FastLED usage detected in repository" + fi + - name: test platforms run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} diff --git a/library.deps b/library.deps index 0d8aa3fc5..7668ac9b4 100644 --- a/library.deps +++ b/library.deps @@ -1 +1 @@ -depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED@3.10.1, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S +depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S diff --git a/simple_strand_palettes/simple_strand_palettes.ino b/simple_strand_palettes/simple_strand_palettes.ino index a1c3b42aa..1d22456b3 100644 --- a/simple_strand_palettes/simple_strand_palettes.ino +++ b/simple_strand_palettes/simple_strand_palettes.ino @@ -2,8 +2,16 @@ // // SPDX-License-Identifier: MIT -#include "FastLED.h" - +// Disable FastLED compile tests to avoid type conflicts +// Force type definitions before FastLED include +#include + +// If for some reason you are hitting this then use a BUILD define +// (not an include define) in your build flags section +// '-DFASTLED_USE_COMPILE_TESTS=0' +#ifdef FASTLED_USE_COMPILE_TESTS +#define FASTLED_USE_COMPILE_TESTS 0 +#endif // ColorWavesWithPalettes // Animated shifting color waves, with several cross-fading color palettes. // by Mark Kriegsman, August 2015 From 328eed427c6b95f89edc76ff68b755635ac65a76 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 10:44:34 -0400 Subject: [PATCH 4/7] Update arduino_cron.yml --- .github/workflows/arduino_cron.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/arduino_cron.yml b/.github/workflows/arduino_cron.yml index ce2154e35..84e93cc10 100644 --- a/.github/workflows/arduino_cron.yml +++ b/.github/workflows/arduino_cron.yml @@ -108,13 +108,13 @@ jobs: USES_FASTLED=false # Find all .ino files and check for FastLED usage - while IFS= read -r sketch; do + for sketch in $(find . -name "*.ino" -type f); do if grep -q "#include.*FastLED" "$sketch" 2>/dev/null || grep -q "include.*FastLED" "$sketch" 2>/dev/null; then echo "Found FastLED usage in: $sketch" USES_FASTLED=true break fi - done < <(find . -name "*.ino" -type f) + done # If FastLED is used, create platform.local.txt files for ALL platforms if [ "$USES_FASTLED" = true ]; then @@ -125,7 +125,7 @@ jobs: # Find all platform.txt files and create corresponding platform.local.txt if [ -d ~/.arduino15/packages ]; then - find ~/.arduino15/packages -name platform.txt -type f | while read platform_file; do + for platform_file in $(find ~/.arduino15/packages -name platform.txt -type f); do dir=$(dirname "$platform_file") echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" echo "Created platform.local.txt in $dir" @@ -142,7 +142,7 @@ jobs: for arduino_dir in "${ARDUINO_DIRS[@]}"; do if [ -d "$arduino_dir/packages" ]; then - find "$arduino_dir/packages" -name platform.txt -type f 2>/dev/null | while read platform_file; do + for platform_file in $(find "$arduino_dir/packages" -name platform.txt -type f 2>/dev/null); do dir=$(dirname "$platform_file") if [ ! -f "$dir/platform.local.txt" ]; then echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" From 50582e9a1b25ad894bbefed8231a891e69190301 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 10:57:06 -0400 Subject: [PATCH 5/7] Update arduino_cron.yml --- .github/workflows/arduino_cron.yml | 60 ++++++++++++++---------------- 1 file changed, 27 insertions(+), 33 deletions(-) diff --git a/.github/workflows/arduino_cron.yml b/.github/workflows/arduino_cron.yml index 84e93cc10..05376f831 100644 --- a/.github/workflows/arduino_cron.yml +++ b/.github/workflows/arduino_cron.yml @@ -100,14 +100,12 @@ jobs: git clone --quiet https://github.com/pschatzmann/ESP32-A2DP /home/runner/Arduino/libraries/ESP32-A2DP git clone --quiet https://github.com/pschatzmann/arduino-audio-tools /home/runner/Arduino/libraries/arduino-audio-tools - - name: Configure build flags for FastLED + - name: test platforms run: | - echo "Checking for FastLED usage in repository..." - # Check if any sketch uses FastLED USES_FASTLED=false - # Find all .ino files and check for FastLED usage + echo "Checking for FastLED usage in repository..." for sketch in $(find . -name "*.ino" -type f); do if grep -q "#include.*FastLED" "$sketch" 2>/dev/null || grep -q "include.*FastLED" "$sketch" 2>/dev/null; then echo "Found FastLED usage in: $sketch" @@ -116,47 +114,43 @@ jobs: fi done - # If FastLED is used, create platform.local.txt files for ALL platforms + # If FastLED is used, create platform.local.txt files if [ "$USES_FASTLED" = true ]; then - echo "FastLED detected in repository, applying compile flag fix for all platforms" + echo "FastLED detected, applying compile flag fix" - # Wait for Arduino CLI to be fully set up - sleep 2 + # Debug: Show current Arduino package structure + echo "Arduino package structure:" + find ~/.arduino15/packages -name platform.txt -type f 2>/dev/null || echo "No platform.txt files found yet" - # Find all platform.txt files and create corresponding platform.local.txt + # Create platform.local.txt in all possible Arduino package locations + # This needs to happen right before the build if [ -d ~/.arduino15/packages ]; then - for platform_file in $(find ~/.arduino15/packages -name platform.txt -type f); do + for platform_file in $(find ~/.arduino15/packages -name platform.txt -type f 2>/dev/null); do dir=$(dirname "$platform_file") echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" echo "Created platform.local.txt in $dir" + # Verify it was created + ls -la "$dir/platform.local.txt" done fi - # Also check for Arduino cores in other possible locations - ARDUINO_DIRS=( - "$HOME/.arduino15" - "$HOME/Arduino" - "/usr/local/share/arduino" - "/usr/share/arduino" - ) + # Also try the home Arduino directory + if [ -d "$HOME/Arduino/hardware" ]; then + for platform_file in $(find "$HOME/Arduino/hardware" -name platform.txt -type f 2>/dev/null); do + dir=$(dirname "$platform_file") + echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" + echo "Created platform.local.txt in $dir" + ls -la "$dir/platform.local.txt" + done + fi - for arduino_dir in "${ARDUINO_DIRS[@]}"; do - if [ -d "$arduino_dir/packages" ]; then - for platform_file in $(find "$arduino_dir/packages" -name platform.txt -type f 2>/dev/null); do - dir=$(dirname "$platform_file") - if [ ! -f "$dir/platform.local.txt" ]; then - echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" - echo "Created platform.local.txt in $dir" - fi - done - fi - done - else - echo "No FastLED usage detected in repository" + # Alternative approach: Set environment variable + export ARDUINO_BUILD_FLAGS="-DFASTLED_USE_COMPILE_TESTS=0" + echo "Also set ARDUINO_BUILD_FLAGS=$ARDUINO_BUILD_FLAGS" fi - - - name: test platforms - run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} + + # Now run the actual build + python3 ci/build_platform.py ${{ matrix.arduino-platform }} - name: Upload build artifacts From c5398044d85c46ebb867ef78b72d095372c8dcd6 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 11:03:34 -0400 Subject: [PATCH 6/7] pin fastled to 3.10.1 --- .github/workflows/arduino_cron.yml | 51 +----------------------------- library.deps | 2 +- 2 files changed, 2 insertions(+), 51 deletions(-) diff --git a/.github/workflows/arduino_cron.yml b/.github/workflows/arduino_cron.yml index 05376f831..bdc40c050 100644 --- a/.github/workflows/arduino_cron.yml +++ b/.github/workflows/arduino_cron.yml @@ -101,56 +101,7 @@ jobs: git clone --quiet https://github.com/pschatzmann/arduino-audio-tools /home/runner/Arduino/libraries/arduino-audio-tools - name: test platforms - run: | - # Check if any sketch uses FastLED - USES_FASTLED=false - - echo "Checking for FastLED usage in repository..." - for sketch in $(find . -name "*.ino" -type f); do - if grep -q "#include.*FastLED" "$sketch" 2>/dev/null || grep -q "include.*FastLED" "$sketch" 2>/dev/null; then - echo "Found FastLED usage in: $sketch" - USES_FASTLED=true - break - fi - done - - # If FastLED is used, create platform.local.txt files - if [ "$USES_FASTLED" = true ]; then - echo "FastLED detected, applying compile flag fix" - - # Debug: Show current Arduino package structure - echo "Arduino package structure:" - find ~/.arduino15/packages -name platform.txt -type f 2>/dev/null || echo "No platform.txt files found yet" - - # Create platform.local.txt in all possible Arduino package locations - # This needs to happen right before the build - if [ -d ~/.arduino15/packages ]; then - for platform_file in $(find ~/.arduino15/packages -name platform.txt -type f 2>/dev/null); do - dir=$(dirname "$platform_file") - echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" - echo "Created platform.local.txt in $dir" - # Verify it was created - ls -la "$dir/platform.local.txt" - done - fi - - # Also try the home Arduino directory - if [ -d "$HOME/Arduino/hardware" ]; then - for platform_file in $(find "$HOME/Arduino/hardware" -name platform.txt -type f 2>/dev/null); do - dir=$(dirname "$platform_file") - echo "compiler.cpp.extra_flags=-DFASTLED_USE_COMPILE_TESTS=0" > "$dir/platform.local.txt" - echo "Created platform.local.txt in $dir" - ls -la "$dir/platform.local.txt" - done - fi - - # Alternative approach: Set environment variable - export ARDUINO_BUILD_FLAGS="-DFASTLED_USE_COMPILE_TESTS=0" - echo "Also set ARDUINO_BUILD_FLAGS=$ARDUINO_BUILD_FLAGS" - fi - - # Now run the actual build - python3 ci/build_platform.py ${{ matrix.arduino-platform }} + run: python3 ci/build_platform.py ${{ matrix.arduino-platform }} - name: Upload build artifacts diff --git a/library.deps b/library.deps index 7668ac9b4..0d8aa3fc5 100644 --- a/library.deps +++ b/library.deps @@ -1 +1 @@ -depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S +depends=Adafruit SSD1305, Adafruit ILI9341, Adafruit BusIO, SD, Adafruit NeoPixel, Adafruit VS1053 Library, Adafruit BluefruitLE nRF51, Adafruit seesaw Library, Ethernet, Stepper, Adafruit IO Arduino, FastLED@3.10.1, Adafruit LiquidCrystal, Adafruit SoftServo, TinyWireM, Adafruit AM radio library, WaveHC, Adafruit LED Backpack Library, MAX31850 OneWire, Adafruit VC0706 Serial Camera Library, RTClib, Adafruit SleepyDog Library, Adafruit Thermal Printer Library, Adafruit Zero I2S Library, Adafruit EPD, Adafruit SSD1351 library, Adafruit FONA Library, Adafruit Motor Shield V2 Library, Adafruit NeoMatrix, Adafruit Soundboard library, Adafruit Circuit Playground, ArduinoJson, Adafruit TCS34725, Adafruit Pixie, Adafruit GPS Library, TinyGPS, WiFi101, Adafruit DotStar, Adafruit Si7021 Library, Adafruit WS2801 Library, Mouse, Keyboard, Time, IRremote, Adafruit LSM9DS0 Library, Adafruit Arcada Library, MIDIUSB, PubSubClient, Adafruit LIS2MDL, Adafruit NeoPXL8, Adafruit MCP23017 Arduino Library, Adafruit MLX90640, LiquidCrystal, Adafruit NeoTrellis M4 Library, RGB matrix Panel, Adafruit MLX90614 Library, Adafruit RGB LCD Shield Library, MAX6675 library, Adafruit MP3, Adafruit Keypad, Adafruit Arcada GifDecoder, Keypad, Neosegment, Encoder, Adafruit TiCoServo, Adafruit Trellis Library, FauxmoESP, Adafruit LSM303 Accel, Adafruit LSM303DLH Mag, Adafruit LSM303DLHC, CapacitiveSensor, Adafruit Zero PDM Library, Adafruit DMA neopixel library, elapsedMillis, DST RTC, Adafruit SHARP Memory Display, Adafruit SPIFlash, BSEC Software Library, WiiChuck, Adafruit DPS310, Adafruit AHTX0, RotaryEncoder, Adafruit MCP9808 Library, LSM303, Adafruit Protomatter, Adafruit IS31FL3741 Library, Sensirion I2C SCD4x, Adafruit TestBed, Bounce2, Adafruit AHRS, Adafruit DRV2605 Library, STM32duino VL53L4CD, PicoDVI - Adafruit Fork, Adafruit MMA8451 Library, Adafruit TSC2007, GFX Library for Arduino, Adafruit PyCamera Library, Adafruit ADG72x, Adafruit BNO055, Adafruit SHT4x Library, Adafruit VCNL4200 Library, Adafruit GC9A01A, Adafruit DVI HSTX, Adafruit TLV320 I2S From c669ca8b75c55337ec40c363f38cc5d7f79a0d11 Mon Sep 17 00:00:00 2001 From: Liz Date: Tue, 2 Sep 2025 11:26:29 -0400 Subject: [PATCH 7/7] add error raises to fastled sketches --- ...a_remoteFXTrigger_NeoTrellis_FastLED_RX.ino | 6 ++++-- .../Ever_Burning_Flame_Painting.ino | 4 ++++ .../DiscoBandCamp/DiscoBandCamp.ino | 4 ++++ .../Gemma_M0_NeoPixel_Dress.ino | 4 ++++ .../Glowing_Beehive_Hairdo_Wig.ino | 4 ++++ .../Glowing_Mirror_Mask.ino | 4 ++++ Jack_O_LED_trix/Jack_O_LED_trix.ino | 4 ++++ LED_Harness_Bra/LED_Harness_Bra.ino | 4 ++++ Neopixel_Aquarium/Neopixel_Aquarium.ino | 4 ++++ .../Programmable_12v_Outdoor_Cafe_Lights.ino | 4 ++++ .../Resin_table_circuitplayground_modes.ino | 4 ++++ .../Starduino_8bit_Super_Mario_Tree_Topper.ino | 6 +++++- .../UnicornHorn_CapacitiveTouch.ino | 5 ++++- color_touch_pendant/color_touch_pendant.ino | 5 ++++- .../simple_strand_palettes.ino | 18 +++++------------- 15 files changed, 62 insertions(+), 18 deletions(-) diff --git a/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX.ino b/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX.ino index b41056b7c..83ecdb670 100644 --- a/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX.ino +++ b/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX/Ada_remoteFXTrigger_NeoTrellis_FastLED_RX.ino @@ -15,6 +15,10 @@ #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define LED_PIN 12 #define NUM_LEDS 20 #define LED_TYPE WS2812B @@ -372,5 +376,3 @@ void FillLEDsFromPaletteColors( uint8_t colorIndex) colorIndex += STEPS; } } - - diff --git a/Ever_Burning_Flame_Painting/Ever_Burning_Flame_Painting.ino b/Ever_Burning_Flame_Painting/Ever_Burning_Flame_Painting.ino index 50cf87102..90bf75968 100644 --- a/Ever_Burning_Flame_Painting/Ever_Burning_Flame_Painting.ino +++ b/Ever_Burning_Flame_Painting/Ever_Burning_Flame_Painting.ino @@ -5,6 +5,10 @@ #include #include // add FastLED library AFTER Circuit Playground library to avoid issues +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define STRIP1_DATA_PIN 9 // define data pins for all 3 LED strips #define STRIP2_DATA_PIN 12 #define STRIP3_DATA_PIN 6 diff --git a/GemmaM0_Band_Jacket/DiscoBandCamp/DiscoBandCamp.ino b/GemmaM0_Band_Jacket/DiscoBandCamp/DiscoBandCamp.ino index 828d99035..055b3498a 100644 --- a/GemmaM0_Band_Jacket/DiscoBandCamp/DiscoBandCamp.ino +++ b/GemmaM0_Band_Jacket/DiscoBandCamp/DiscoBandCamp.ino @@ -43,6 +43,10 @@ #include "effects.h" #include "buttons.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + // list of Functions: functionList effectList[] = {SolidRed, //all pixels solid red swirly, //glittery swirly patterns diff --git a/Gemma_M0_NeoPixel_Dress/Gemma_M0_NeoPixel_Dress.ino b/Gemma_M0_NeoPixel_Dress/Gemma_M0_NeoPixel_Dress.ino index 0af54c1ed..dc27bc591 100644 --- a/Gemma_M0_NeoPixel_Dress/Gemma_M0_NeoPixel_Dress.ino +++ b/Gemma_M0_NeoPixel_Dress/Gemma_M0_NeoPixel_Dress.ino @@ -6,6 +6,10 @@ #include #include "Adafruit_TCS34725.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define DATA_PIN 1 #define LED_TYPE WS2812B #define COLOR_ORDER GRB diff --git a/Glowing_Beehive_Hairdo_Wig/Glowing_Beehive_Hairdo_Wig.ino b/Glowing_Beehive_Hairdo_Wig/Glowing_Beehive_Hairdo_Wig.ino index 9a140bd36..e7fb92ad1 100644 --- a/Glowing_Beehive_Hairdo_Wig/Glowing_Beehive_Hairdo_Wig.ino +++ b/Glowing_Beehive_Hairdo_Wig/Glowing_Beehive_Hairdo_Wig.ino @@ -8,6 +8,10 @@ #include // add this before the FastLED library to avoid issues #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define LED_PIN 6 //led strand is soldered to pin 6 #define CP_PIN 17 //circuit playground's neopixels live on pin 17 #define NUM_LEDS 12 // number of LEDs in my strand diff --git a/Glowing_Mirror_Mask/Glowing_Mirror_Mask/Glowing_Mirror_Mask.ino b/Glowing_Mirror_Mask/Glowing_Mirror_Mask/Glowing_Mirror_Mask.ino index ac48d20f9..b328e851d 100644 --- a/Glowing_Mirror_Mask/Glowing_Mirror_Mask/Glowing_Mirror_Mask.ino +++ b/Glowing_Mirror_Mask/Glowing_Mirror_Mask/Glowing_Mirror_Mask.ino @@ -12,6 +12,10 @@ #include #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + // Enable ONE of these lines to select an animation, // others MUST be commented out! diff --git a/Jack_O_LED_trix/Jack_O_LED_trix.ino b/Jack_O_LED_trix/Jack_O_LED_trix.ino index b0619b1d9..662d3de18 100644 --- a/Jack_O_LED_trix/Jack_O_LED_trix.ino +++ b/Jack_O_LED_trix/Jack_O_LED_trix.ino @@ -29,6 +29,10 @@ #include "colorutils.h" #include "colorpalettes.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define BRIGHTNESS 128 //Define the type of pixels you are using on the next line here. diff --git a/LED_Harness_Bra/LED_Harness_Bra.ino b/LED_Harness_Bra/LED_Harness_Bra.ino index ab75e49f9..57177934b 100644 --- a/LED_Harness_Bra/LED_Harness_Bra.ino +++ b/LED_Harness_Bra/LED_Harness_Bra.ino @@ -16,6 +16,10 @@ Summary: #include #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + // Circuit Playground Setup---------------------------------------------------- #define CP_PIN 8 //CPX neopixels live on pin 8, CP live on pin 17 #define NUM_CP 10 //number of neopixels on the CP diff --git a/Neopixel_Aquarium/Neopixel_Aquarium.ino b/Neopixel_Aquarium/Neopixel_Aquarium.ino index 8b56ee13c..807ae944a 100644 --- a/Neopixel_Aquarium/Neopixel_Aquarium.ino +++ b/Neopixel_Aquarium/Neopixel_Aquarium.ino @@ -9,6 +9,10 @@ #include "Adafruit_FreeTouch.h" #include "FastLED.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define CAPTOUCH_PIN A2 //A2 capacitive touch pin #define CAPTOUCH_PIN2 A3 //A3 capacitive touch pin #define NEOPIXEL_PIN A1 //A1 neopixel pin diff --git a/Programmable_12v_Outdoor_Cafe_Lights/Programmable_12v_Outdoor_Cafe_Lights.ino b/Programmable_12v_Outdoor_Cafe_Lights/Programmable_12v_Outdoor_Cafe_Lights.ino index 24a46d888..a8f3771f3 100644 --- a/Programmable_12v_Outdoor_Cafe_Lights/Programmable_12v_Outdoor_Cafe_Lights.ino +++ b/Programmable_12v_Outdoor_Cafe_Lights/Programmable_12v_Outdoor_Cafe_Lights.ino @@ -15,6 +15,10 @@ // #include "FastLED.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define DATA_PIN SCL #define LED_TYPE WS2812 #define COLOR_ORDER RBG // If colors are coming out wrong, re-order (RGB, BRG, etc) diff --git a/Resin_table_circuitplayground_modes/Resin_table_circuitplayground_modes.ino b/Resin_table_circuitplayground_modes/Resin_table_circuitplayground_modes.ino index 5bfb604b2..c1628de70 100644 --- a/Resin_table_circuitplayground_modes/Resin_table_circuitplayground_modes.ino +++ b/Resin_table_circuitplayground_modes/Resin_table_circuitplayground_modes.ino @@ -8,6 +8,10 @@ #include #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + // tell FastLED all about the Circuit Playground's layout #define DATA_PIN A1 //LED data on pin A1 diff --git a/Starduino_8bit_Super_Mario_Tree_Topper/Starduino_8bit_Super_Mario_Tree_Topper.ino b/Starduino_8bit_Super_Mario_Tree_Topper/Starduino_8bit_Super_Mario_Tree_Topper.ino index 948c43281..11d8b24c0 100644 --- a/Starduino_8bit_Super_Mario_Tree_Topper/Starduino_8bit_Super_Mario_Tree_Topper.ino +++ b/Starduino_8bit_Super_Mario_Tree_Topper/Starduino_8bit_Super_Mario_Tree_Topper.ino @@ -4,6 +4,10 @@ #include +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define LED_PIN 0 #define COLOR_ORDER GRB #define CHIPSET WS2811 @@ -105,4 +109,4 @@ void Fire2012() } leds[pixelnumber] = color; } -} \ No newline at end of file +} diff --git a/UnicornHorn_CapacitiveTouch/UnicornHorn_CapacitiveTouch.ino b/UnicornHorn_CapacitiveTouch/UnicornHorn_CapacitiveTouch.ino index 276a7ff82..89d51f643 100644 --- a/UnicornHorn_CapacitiveTouch/UnicornHorn_CapacitiveTouch.ino +++ b/UnicornHorn_CapacitiveTouch/UnicornHorn_CapacitiveTouch.ino @@ -5,6 +5,10 @@ #include "Adafruit_FreeTouch.h" #include "FastLED.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define CAPTOUCH_PIN A1 #define NEOPIXEL_PIN 1 #define LED_PIN 0 @@ -97,4 +101,3 @@ void dark() delay(20); } } - diff --git a/color_touch_pendant/color_touch_pendant.ino b/color_touch_pendant/color_touch_pendant.ino index 1c4fdfdce..4a195bb2e 100644 --- a/color_touch_pendant/color_touch_pendant.ino +++ b/color_touch_pendant/color_touch_pendant.ino @@ -9,6 +9,10 @@ #include "Adafruit_FreeTouch.h" #include "FastLED.h" +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif + #define CAPTOUCH_PIN 0 //capacitive touch pin #define NEOPIXEL_PIN 1 //neopixel ring pin #define NUM_LEDS 28 //how many pixels total @@ -140,4 +144,3 @@ void dark() delay(20); } } - diff --git a/simple_strand_palettes/simple_strand_palettes.ino b/simple_strand_palettes/simple_strand_palettes.ino index 1d22456b3..6affaf59a 100644 --- a/simple_strand_palettes/simple_strand_palettes.ino +++ b/simple_strand_palettes/simple_strand_palettes.ino @@ -2,16 +2,8 @@ // // SPDX-License-Identifier: MIT -// Disable FastLED compile tests to avoid type conflicts -// Force type definitions before FastLED include -#include - -// If for some reason you are hitting this then use a BUILD define -// (not an include define) in your build flags section -// '-DFASTLED_USE_COMPILE_TESTS=0' -#ifdef FASTLED_USE_COMPILE_TESTS -#define FASTLED_USE_COMPILE_TESTS 0 -#endif +#include "FastLED.h" + // ColorWavesWithPalettes // Animated shifting color waves, with several cross-fading color palettes. // by Mark Kriegsman, August 2015 @@ -23,9 +15,9 @@ // http://fastled.io/tools/paletteknife/ // -//#if FASTLED_VERSION < 3001000 -//#error "Requires FastLED 3.1 or later; check github for latest code." -//#endif +#if defined(FASTLED_VERSION) && FASTLED_VERSION > 3010001 + #error "FastLED 3.10.2 has known compile issues with SAMD boards. Please downgrade to FastLED 3.10.1" +#endif #define DATA_PIN 6 #define LED_TYPE WS2812B