# Pico Projects A collection of Raspberry Pi Pico (RP2040) firmware projects. Each project is self-contained in its own subfolder with its own Dockerized build system, CMake configuration, and source code. ## Projects | Project | Description | Target Board | |---|---|---| | [color_switcher](color_switcher/) | Interactive color-switching firmware with USB-CDC serial commands and WS2812B LED control via PIO | Waveshare RP2040-Zero | ## Getting Started Each project is independent. To work on one, `cd` into its folder: ```bash cd color_switcher/ docker compose build # first time only docker compose run --rm pico-build bash build.sh # compile ./flash.sh # flash to Pico (hold BOOTSEL + plug in) ``` See each project's own `README.md` for project-specific instructions. ## Prerequisites - [Docker](https://docs.docker.com/get-docker/) and Docker Compose No local ARM toolchain needed — everything builds inside Docker containers. ## Repository Structure ``` pico/ ├── color_switcher/ # WS2812B color switcher with USB/UART comm │ ├── cmake/ # modular CMake build system │ ├── src/ # layered C firmware (MCU → HAL → APP → SYS) │ ├── Dockerfile # containerized ARM cross-compilation │ ├── docker-compose.yml │ ├── build.sh / flash.sh │ └── CLAUDE.md / README.md └── README.md # this file ```