
Building Pico-Controlled Smart Lights
rp2040_ws2812_led_controller is a MicroPython lighting controller built around a Raspberry Pi Pico, an LD2410 presence sensor, an SSD1306 OLED, and a WS2812 LED strip. Physical buttons change brightness and operating mode, while a second Pico can receive infrared remote commands and forward them over UART.
The OLED menu exposes 24 color and animation modes, from warm white and solid colors to breathing, rainbow, chase, comet, fire, ocean, and twinkle effects. Brightness, run mode, and color mode are saved to light_config.json and restored on boot. Missing or invalid saved data falls back to built-in defaults.
The source is divided by responsibility: ld2410.py handles the presence sensor, ssd1306.py drives the display, and main.py connects inputs, menus, persistence, and LED output. The companion pico_ir_receiver repository contains the dedicated remote-control board.
This is real hardware, so the useful knobs should remain adjustable. Presence thresholds, LED count, brightness limits, UART pins, and saved defaults depend on the room, power supply, strip, and sensor placement. Validate current draw before enabling high brightness across a long strip.
Visit the Pico Light Bulbs repository for the MicroPython source and menu behavior.