Electronics · MicroPython · PCB · Firmware

Raspberry Pi Pico
Circuit Board

Fully Soldered PCB
MicroPython Firmware
2 Interactive Games
01 Outcome

The final outcome operated as a complete system consisting of individually addressable RGB LEDs, a real-time OLED interface, a B10k potentiometer input, and interactive games. I implemented a button matrix and analog input via the potentiometer to allow a user interface across the fully soldered PCB. The board works reliably, which strengthened my confidence in designing, coding, and building microcontroller systems.

Raspberry Pi Pico circuit board
Completed SCUID Board v2.1 — fully soldered with Raspberry Pi Pico, addressable LEDs, OLED display, and potentiometer
02 Features
Addressable RGB LEDs
OLED Display
B10k Potentiometer
Button Matrix
MicroPython Firmware
Non-blocking Animations
2 Interactive Games
Full PCB Soldering
03 Challenges & Solutions

Building this board taught me how to solder and troubleshoot a personal PCB. I began with no previous knowledge, and learned how to manage a Raspberry Pi Pico with LEDs, a button matrix, potentiometer, and an OLED display. Issues that arose were:

Problem — Cold Solder Joints

Cold solder joints caused several buttons and some LEDs to only work when the board was pressed with excessive force, indicating unstable electrical connections.

Solution

Joints that appeared to have poorly done solder were reheated and fully rewetted, which eliminated the poor behavior of LEDs and buttons.

Problem — Button Bounce

Buttons were registering multiple presses, as well as generating rapid signals that caused games to register multiple inputs from a single press.

Solution

I chose to implement software debouncing and added delays in code to allow the system to "catch up" in the time between each button press.

Soldering and timing were the main challenges I encountered while working on this personal project. Resolving these issues improved my confidence in hardware and firmware interactions.

04 Gallery

The board running in various modes — game mode, LED animation mode, potentiometer mode, and two-player Tug-o-War.

Game mode — OLED score display
Game mode — OLED showing score and high score
Addressable RGB LEDs in HSV mode
Addressable RGB LEDs in HSV mode — adjustable brightness, saturation, and hue via potentiometer
Potentiometer mapped to ADC input
Potentiometer mapped to the Pico's ADC input, with real-time value on the OLED screen
Tug-o-War game
Two-player "Tug-o-War" game — each player uses a button to advance their LED strip, OLED shows countdown and winner
05 Motivation

My mechatronics course at San Diego State University, coupled with my attendance at California Polytechnic State University's Engineering EPIC program, introduced me to circuits, breadboarding, microcontrollers, and coding. I wanted to challenge myself by creating something more complex and self-contained. I was motivated to take what I learned in class and push it further by creating a tangible product that combined analog inputs, LEDs, a display, and full firmware control.

Tools used: Raspberry Pi Pico, MicroPython, custom PCB design, hand soldering.