Build ESP32 Application #8
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build ESP32 Application | |
on: | |
workflow_dispatch: | |
inputs: | |
board: | |
description: 'Board to build for (all or specific board name)' | |
required: true | |
default: 'all' | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
board: [esp-box-3, esp-box, m5stack-core-s3, esp32_p4_function_ev_board] | |
fail-fast: false | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v2 | |
- name: Set Target for ESP-IDF | |
run: | | |
echo "TARGET=$(case ${{ matrix.board }} in | |
esp-box-3) echo 'esp32s3';; | |
esp-box) echo 'esp32s3';; | |
m5stack-core-s3) echo 'esp32s3';; | |
esp32_p4_function_ev_board) echo 'esp32p4';; | |
*) echo 'Unknown target'; exit 1;; | |
esac)" >> $GITHUB_ENV | |
- name: esp-idf build and merge binaries | |
uses: espressif/[email protected] | |
with: | |
esp_idf_version: latest | |
target: ${{ env.TARGET }} | |
path: '.' | |
command: idf.py @boards/${{ matrix.board }}.cfg build && | |
cd build.${{ matrix.board }} && | |
esptool.py --chip ${{ env.TARGET }} merge_bin --output combined-open-tyrian-${{ matrix.board }}.bin --flash_mode dio --flash_freq 80m --flash_size 16MB \ | |
0x2000 bootloader/bootloader.bin \ | |
0x8000 partition_table/partition-table.bin \ | |
0x10000 esp32-open-tyrian.bin \ | |
0x310000 storage.bin | |
- name: Upload Build Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build.${{ matrix.board }} | |
path: build.${{ matrix.board }}/combined-open-tyrian-${{ matrix.board }}.bin |