@@ -223,7 +223,7 @@ jobs:
223223 wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.bin
224224
225225 build-esp32 :
226- name : Build WipperSnapper ESP32, ESP32-C3
226+ name : Build WipperSnapper ESP32, ESP32-Cx
227227 runs-on : ubuntu-latest
228228 strategy :
229229 fail-fast : false
@@ -235,11 +235,14 @@ jobs:
235235 " feather_esp32_v2" ,
236236 " itsybitsy_esp32" ,
237237 " wippersnapper_qtpy_esp32c3" ,
238+ " wippersnapper_feather_esp32c6" ,
238239 ]
239240 include :
240241 - offset : " 0x1000"
241242 - offset : " 0x0"
242243 arduino-platform : " wippersnapper_qtpy_esp32c3"
244+ - offset : " 0x0"
245+ arduino-platform : " wippersnapper_feather_esp32c6"
243246 steps :
244247 - uses : actions/setup-python@v4
245248 with :
@@ -610,6 +613,119 @@ jobs:
610613 wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.uf2
611614 wippersnapper.${{ matrix.arduino-platform }}.${{ env.WS_VERSION }}.bin
612615
616+ build-esp32-dev :
617+ name : Build WipperSnapper ESP32/Cx DEV BUILDS
618+ runs-on : ubuntu-latest
619+ strategy :
620+ fail-fast : false
621+ matrix :
622+ arduino-platform :
623+ [
624+ " wippersnapper_feather_esp32c6_debug" ,
625+ ]
626+ include :
627+ - offset : " 0x1000"
628+ - offset : " 0x0"
629+ arduino-platform : " wippersnapper_feather_esp32c6_debug"
630+ steps :
631+ - uses : actions/setup-python@v4
632+ with :
633+ python-version : " 3.x"
634+ - uses : actions/checkout@v4
635+ - name : Get WipperSnapper version
636+ run : |
637+ git fetch --prune --unshallow --tags
638+ git describe --dirty --tags
639+ echo >>$GITHUB_ENV WS_VERSION=$(git describe --dirty --tags)
640+ - uses : actions/checkout@v4
641+ with :
642+ repository : adafruit/ci-arduino
643+ path : ci
644+ - name : Checkout Board Definitions
645+ uses : actions/checkout@v4
646+ with :
647+ repository : adafruit/Wippersnapper_Boards
648+ path : ws-boards
649+ - name : Install CI-Arduino
650+ run : bash ci/actions_install.sh
651+ - name : Install extra Arduino libraries
652+ run : |
653+ git clone --quiet https://github.com/milesburton/Arduino-Temperature-Control-Library.git /home/runner/Arduino/libraries/Arduino-Temperature-Control-Library
654+ git clone --quiet https://github.com/pstolarz/OneWireNg.git /home/runner/Arduino/libraries/OneWireNg
655+ - name : Download and install stable Nanopb
656+ run : |
657+ # Download and extract nanopb
658+ wget https://jpa.kapsi.fi/nanopb/download/nanopb-0.4.8.tar.gz
659+ tar -xf nanopb-0.4.8.tar.gz
660+ # Copy files to WipperSnapper's src/nanopb directory
661+ cp nanopb/pb_common.* nanopb/pb_encode.* nanopb/pb_decode.* src/nanopb
662+ mv nanopb/pb.h src/nanopb/nanopb.pb.h
663+ - name : Install Dependencies
664+ run : |
665+ pip3 install esptool
666+ - name : build ESP32 platforms
667+ run : python3 ci/build_platform.py ${{ matrix.arduino-platform }} --build_timeout 48000
668+ - name : Check artifacts
669+ run : |
670+ ls examples/wippersnapper_debug/build/*
671+ - name : Rename build artifacts to reflect the platform name
672+ run : |
673+ mv examples/wippersnapper_debug/build/*/wippersnapper_debug.ino.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bin
674+ mv examples/wippersnapper_debug/build/*/wippersnapper_debug.ino.elf wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.elf
675+ mv examples/wippersnapper_debug/build/*/wippersnapper_debug.ino.map wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.map
676+ mv examples/wippersnapper_debug/build/*/wippersnapper_debug.ino.bootloader.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin
677+ mv examples/wippersnapper_debug/build/*/wippersnapper_debug.ino.partitions.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin
678+ - name : Check boot_app0 file existence (esp32 built from core, not-source)
679+ id : check_files
680+ uses : andstor/file-existence-action@v2
681+ with :
682+ files : " /home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin"
683+ - name : boot_app0 file from arduino-cli core
684+ if : steps.check_files.outputs.files_exists == 'true'
685+ run : mv /home/runner/.arduino15/packages/esp32/hardware/esp32/*/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin
686+ - name : boot_app0 file from esp32 source bsp
687+ if : steps.check_files.outputs.files_exists == 'false'
688+ run : mv /home/runner/Arduino/hardware/espressif/esp32/tools/partitions/boot_app0.bin wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin
689+ - name : Get Board Flash Parameters
690+ id : get_board_json
691+ run : |
692+ board_name=${{ matrix.arduino-platform }}
693+ # Remove '_noota' suffix if present
694+ board_name=${board_name%_noota}
695+ # Remove '_debug' suffix if present
696+ board_name=${board_name%_debug}
697+ # Remove 'wippersnapper_' prefix if present
698+ board_name=${board_name#wippersnapper_}
699+ content=$(cat ws-boards/boards/${board_name//_/-}/definition.json)
700+ {
701+ echo 'boardJson<<EOF'
702+ echo $content
703+ echo EOF
704+ } >> "$GITHUB_OUTPUT"
705+ - name : Create combined binary using Esptool merge_bin
706+ run : |
707+ echo ${{ steps.get_board_json.outputs.boardJson }}
708+ echo ${{ fromJson(steps.get_board_json.outputs.boardJson) }}
709+ python3 -m esptool --chip ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.chip}} merge_bin \
710+ --flash_mode ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashMode}} \
711+ --flash_freq ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashFreq}} \
712+ --flash_size ${{fromJson(steps.get_board_json.outputs.boardJson).esptool.flashSize}} \
713+ -o wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.combined.bin \
714+ ${{ matrix.offset }} wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bootloader.bin \
715+ 0x8000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.partitions.bin \
716+ 0xe000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.boot_app0.bin \
717+ 0x10000 wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.bin
718+ - name : Zip build artifacts
719+ run : |
720+ zip -r wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.zip wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.*
721+ - name : upload build artifacts zip
722+ uses : actions/upload-artifact@v3
723+ with :
724+ name : build-files-dev
725+ path : |
726+ wippersnapper.${{ matrix.arduino-platform }}.littlefs.${{ env.WS_VERSION }}.zip
727+
728+
613729 clang_and_doxy :
614730 runs-on : ubuntu-latest
615731 needs :
0 commit comments