build.sh runs inside Docker (mounted at /scripts/build.sh via
docker-compose volume). flash.sh runs on the host and takes the
project name as an argument, auto-detecting the .uf2 file.
Usage:
cd color_switcher && docker compose run --rm pico-build bash /scripts/build.sh
cd .. && ./flash.sh color_switcher
STD_TYPES, MCU_UART, MCU_USB, MCU_PIO, HAL_COM, HAL_LED moved to
separate repos under common/ as git submodules. Each submodule ships
with default config (cfg/) that projects can override.
color_switcher/src/ now contains only project-specific components
(APP_CLSW, SYS_ECU). CMake sources_config references common/ via
COMMON_DIR. Docker volume mounts ../common:/common so the container
sees the submodules. Build verified — zero errors.
Restructure repo so the root contains project folders. This allows
adding more Pico projects (e.g., another_project/) alongside
color_switcher/ in the same repository. All internal paths are
relative and unchanged — cd into color_switcher/ to build/flash.