@echo off setlocal set FQBN=m5stack:esp32:m5stack_atoms3:USBMode=default,CDCOnBoot=cdc,UploadMode=default,PartitionScheme=default_8MB set SKETCH=%~dp0..\firmware\MacroPad set LOGFILE=%~dp0build.log echo ============================================ echo Compiling MacroPad firmware... echo FQBN: %FQBN% echo Sketch: %SKETCH% echo ============================================ :: Check for --clean flag set CLEAN_FLAG= if "%1"=="--clean" set CLEAN_FLAG=--clean arduino-cli compile --fqbn "%FQBN%" "%SKETCH%" %CLEAN_FLAG% > "%LOGFILE%" 2>&1 set RESULT=%ERRORLEVEL% :: Show last 20 lines of output echo. echo --- Build Output (last 20 lines) --- powershell -Command "Get-Content '%LOGFILE%' | Select-Object -Last 20" echo. if %RESULT%==0 ( echo BUILD SUCCESSFUL ) else ( echo BUILD FAILED (exit code %RESULT%) echo Full log: %LOGFILE% ) echo. exit /b %RESULT%