Skip to content

Commit 5859028

Browse files
author
Minh Hai Chu
authored
Enhance CI/CD workflow for ESP32 firmware build
Added steps to build ESP32 firmware and upload binaries.
1 parent 7bd6844 commit 5859028

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

.github/workflows/cicd.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,30 @@ jobs:
151151
python3 -c "import mlonmcu.setup.gen_requirements; print('OK')"
152152
python3 $GITHUB_WORKSPACE/run.py kws_1 --print simulate --core_model esp32c3
153153
154+
- name: Build ESP32 Firmware (no flashing)
155+
shell: bash
156+
run: |
157+
source $GITHUB_WORKSPACE/mlonmcu/venv/bin/activate
158+
cd /tmp
159+
# Build firmware but stop before RUN stage (which attempts to flash)
160+
python3 -m mlonmcu.cli.main flow run $GITHUB_WORKSPACE/target_sw/kws/kws_1/micro_kws_student_quantized.tflite \
161+
--target esp32c3 --platform espidf \
162+
-c espidf.print_outputs=1 -c esp32c3.print_outputs=1 -c run.export_optional=1 \
163+
--backend tvmaotplus -c tvmaotplus.desired_layout=NCHW -c tvmaot.desired_layout=NCHW \
164+
-f autotuned -c autotuned.results_file=$GITHUB_WORKSPACE/target_sw/kws/kws_1/autotune/micro_kws_student_tuning_log_nchw_best.txt \
165+
-c espidf.project_template=$GITHUB_WORKSPACE/target_sw/app/micro_kws_esp32devboard_perf \
166+
-c espidf.append_sdkconfig_defaults=1 \
167+
-c riscv_gcc_rv32.install_dir=$MLONMCU_HOME/deps/install/espidf/tools/riscv32-esp-elf/esp-14.2.0_20241119/riscv32-esp-elf \
168+
-c riscv_gcc_rv32.name=riscv32-esp-elf \
169+
-c espidf.optimize=s \
170+
-c espidf.extra_cmake_defs="{'CONFIG_ENABLE_WIFI': 1}" \
171+
--until COMPILE -v
172+
173+
cd $GITHUB_WORKSPACE/mlonmcu/workspace_kws/temp/sessions/latest/runs
174+
ls -a
175+
cd $GITHUB_WORKSPACE/mlonmcu/workspace_kws/temp/sessions/latest/runs/*/espidf/build
176+
ls -a
177+
154178
- name: Upload simulation results
155179
uses: actions/upload-artifact@v4
156180
if: always()
@@ -160,3 +184,12 @@ jobs:
160184
mlonmcu/workspace_kws/temp/sessions/latest/report.csv
161185
mlonmcu/workspace_kws/temp/sessions/latest/*.log
162186
retention-days: 7
187+
188+
- name: Upload ESP32 firmware binaries
189+
uses: actions/upload-artifact@v4
190+
if: always()
191+
with:
192+
name: esp32-firmware
193+
path: |
194+
mlonmcu/workspace_kws/temp/sessions/latest/runs/*/espidf/build/*.bin
195+
retention-days: 30

0 commit comments

Comments
 (0)