This project demonstrates a fully integrated, multi-microcontroller system that bridges low-level hardware control with modern web networking. At its core are three microcontrollers—a Raspberry Pi Pico, a Raspberry Pi Pico 2W, and an ESP32-S3—working together as a distributed system, coordinated by a web-based client running on the local network.
The Raspberry Pi Pico functions as a dedicated hardware slave. It continuously reads an external thermistor via its ADC and manages multiple GPIO-controlled LEDs. These LED states are encoded into a compact bitfield, allowing combinations of colors (green, yellow, red, and blue) to be represented as a single integer value. One core of the Pico is devoted to sensor acquisition and GPIO control, while the other core handles SPI communication with the master.
The Pico 2W acts as the system’s central controller and “middle manager.” Over a four-wire SPI bus, it polls the Pico slave for temperature data and LED state updates. At the same time, it hosts a lightweight HTTP server over Wi-Fi, enabling interaction from a web client. Commands received from the browser—such as LED control requests or text messages—are routed appropriately: either forwarded to the Pico slave via SPI or relayed wirelessly to the ESP32 using HTTP POST requests. The Pico 2W leverages its dual cores to separate real-time SPI activity from Wi-Fi networking, ensuring responsiveness and stability.
The ESP32-S3 serves as a network-connected display and actuator node. It runs its own HTTP server with clearly defined API endpoints, receiving JSON-formatted POST requests from the Pico 2W. Text messages are displayed on a 16×2 I²C OLED with word-wrapping support, while LED state updates are decoded and applied directly to GPIO-controlled LEDs. A status endpoint exposes runtime diagnostics such as uptime and free heap, providing transparency into system health.
Notably, the web client never communicates directly with the ESP32. All inter-device coordination flows through the Pico 2W, illustrating a deliberate architectural choice that simplifies security, routing, and future expansion. The result is a robust hybrid system combining SPI, GPIO signaling, Wi-Fi networking, HTTP APIs, and dual-core concurrency—showcasing how small microcontrollers can cooperate to form a scalable, network-aware embedded platform.