T-Mobile Sponsored  ·  TECHIN 515, University of Washington  ·  2025–2026

Wizarding
Chess

A Harry Potter-inspired autonomous chessboard that physically moves pieces by itself, designed for players with hand and motor disabilities.

3

Microcontrollers

52

Unit Tests

16

Custom PCB Sensors

$350

Total Budget

41cm

Gantry Travel

5s

Avg Move Time

My Role

Technical PM
who ships
the product.

I wore two hats on this project. As PM I defined the product vision, managed the T-Mobile sponsor relationship, coordinated the team, and owned the budget. As an engineer I built the web interface from scratch and co-built the CoreXY motion system hands-on.

This is the rare combination employers talk about: someone who can write a product brief in the morning and solder a PCB at night.

01

Product & Vision

Defined the product vision, led accessibility research, and set the roadmap for an industry-sponsored project from concept to working prototype.

02

Engineering

Built the full Next.js web interface and co-engineered the CoreXY motion system: firmware, kinematics, and physical assembly.

03

Sponsor Relations

Served as T-Mobile liaison, presenting progress, gathering feedback from their accessibility team, and translating industry requirements back into engineering decisions.

04

Operations

Managed the full project budget ($350 cap), vendor sourcing from Shenzhen fabrication to local materials, and team delivery across hardware and software workstreams.

The Problem

💭 HOW MIGHT WE

Make physical chess truly playable for people with hand and motor disabilities without sacrificing the tactile experience of the game?

Chess is one of the most universal strategy games in the world. But for people living with hand disabilities or motor impairments, physically moving pieces across a board is a frustrating barrier. Existing solutions like digital chess apps and screen-based interfaces strip away the tactile, physical experience of the game entirely.

Wizarding Chess removes that barrier. Players speak their move, and the board moves the piece for them.

2M+

Adults in the US experience paralysis affecting upper limb function (CDC)

1 in 4

American adults live with some form of disability

0

Existing physical chess products designed for motor accessibility

What We Built

A fully autonomous, voice-controlled physical chessboard that moves pieces on its own using an electromagnet on a CoreXY gantry. Players interact via voice command or a web interface. The board physically executes the move in real space.

01

🎙️

Voice & Web

Player speaks "e2 to e4" or clicks in the browser. Stockfish AI available for either side.

02

📡

ESP32-S3 Brain

Transcribes voice via OpenAI Whisper, bridges to motor controller wirelessly via ESP-NOW.

03

⚙️

Pico Controller

Validates moves, runs Dijkstra pathfinding around pieces, drives CoreXY stepper motors.

04

♟️

Physical Board

Electromagnet slides pieces to target square. Hall sensors verify position. LEDs confirm placement.

Live Demo Available. Connect to the web interface and control the physical board from any browser on the same network.

Open Demo →
Build Journey

PHASE 01

XY Motion
System

We explored multiple approaches including robotic arms before settling on a CoreXY belt-drive system inspired by 3D printer mechanics. We designed all custom brackets in Fusion 360, 3D printed them, sourced linear rods, belts, and NEMA 17 stepper motors within budget, and assembled the full gantry by hand. We wrote the firmware from scratch, implementing CoreXY inverse kinematics and Bresenham's line algorithm for smooth coordinated motion across 41cm × 41cm of travel.

Early gantry assembly
Components laid out
Full gantry assembled

Early assembly → components laid out → first full gantry with breadboard wiring

Fusion 360 carriage CAD
Fusion 360 corner bracket CAD

Custom bracket designs in Fusion 360 carriage piece (top) and corner mount (bottom)

First Movement Test
Piece Routing with Blocker Displacement

PHASE 02

Electromagnet
& Polarity

We selected an H-bridge-driven electromagnet and engineered a key insight: by switching the direction of current through the H-bridge, we could attract white pieces on one polarity and black pieces on the other, allowing the board to selectively pick up pieces by color. We physically tested magnetic penetration through different plywood thicknesses to find the right balance between structural stability and magnetic force.

Testing electromagnet through plywood

Testing magnetic penetration through different plywood thicknesses

Polarity Switching Test

PHASE 03

Voice
Recognition

We integrated an ICS-43432 I2S MEMS microphone with the ESP32-S3 to capture voice commands, sending audio to OpenAI Whisper for transcription. The system parses the transcript for a chess move and sends it wirelessly to the Pico via ESP-NOW. Voice and web UI inputs are completely interchangeable. The physical board cannot tell the difference between a spoken command and a browser click.

First Successful Voice Command

PHASE 04

Custom
PCB

We designed a custom 2-layer PCB in KiCad integrating 16× A1302xUA Hall effect sensors and 16× WS2812B addressable RGB LEDs, one of each per chess square. The board was fabricated in Shenzhen, received, and hand-soldered using SMD reflow techniques. The Hall sensors detect and verify piece presence; the LEDs provide accessibility feedback highlighting valid moves and confirming correct placement.

KiCad schematic
KiCad PCB layout

KiCad schematic (Hall sensors + WS2812B LEDs) and PCB layout

PCB 3D render
Fully soldered PCB

KiCad 3D render → fully soldered PCB from Shenzhen

SMD soldering session
PCB fitted into laser-cut frame

Hand-soldering SMD components → PCB fitted perfectly into laser-cut wood frame

Hall Sensor Test Custom PCB

PHASE 05

SLA Chess
Pieces

We 3D-printed a full Harry Potter-themed chess set using SLA resin printing on an ELEGOO printer, UV-cured them on a Mercury Plus curing station, post-processed and assembled by hand with super glue, then spray-painted one full set white and one set black, matching the electromagnet's polarity color coding so the board can distinguish pieces by color.

HP chess pieces in UltiMaker Cura
UV curing station

Sliced in UltiMaker Cura → UV curing on the ELEGOO Mercury Plus station

Late night post-processing
Finished white and black pieces

Late-night post-processing → finished white vs black pieces

PHASE 06

Web
Interface

Built entirely by me from scratch. A cinematic landing page with a 3D animated knight video, and a full game interface with an interactive chessboard, real-time WebSocket sync to the physical board, legal move highlighting (blue for moves, red for captures), captured pieces tracking, per-player timers, game status detection, and Stockfish 18 AI running entirely in the browser as a Web Worker. Two browsers on the same LAN stay in sync in real time. A voice move at the board reflects on every connected screen instantly.

Try it live. The web interface is deployed and working.

Open →

PHASE 07

T-Mobile
Demo Day

We presented our full system to the T-Mobile accessibility team, demonstrating end-to-end piece movement, voice control, and the web interface live. We received feedback specifically around the LED accessibility layer and continue to iterate based on their input.

Team smiling at demo day

 

Team presenting the board
Presenting to T-Mobile mentor

T-Mobile sponsor demo, presenting to industry accessibility team

Challenges & How We Addressed Them
01

Piece Location Verification

“How do we know the board is in the right state?”

This was our biggest and most fundamental challenge. Chess pieces are physical objects. They can drift, stick to each other due to residual magnetism, get dragged slightly off-center, or fail to land exactly on target. Once the board state drifts even slightly from what the software expects, every subsequent move compounds the error. Within a few moves the whole board could be in complete disarray.

We researched several approaches: computer vision (too complex, lighting-dependent), pressure sensors (not sensitive enough for light resin pieces), and capacitive sensing (too much interference from wood). We landed on Hall effect sensors: one A1302xUA sensor per square, embedded in a custom PCB beneath the board. Since every piece has a magnet in its base, each sensor detects whether a piece is sitting on its square and reports back to the firmware, closing the loop between what the system thinks is on the board and what is actually there.

02

Wait Time & Captured Piece UX

“Five seconds is a long time.”

Moving a piece takes around 5 seconds on average, acceptable for a normal move. But when a capture happens, the original plan was for the robot to drag the captured piece to a border slot before executing the main move, meaning a player could wait 10–15 seconds for a single capture. In testing this felt painfully slow and broke the flow of the game entirely.

We rethought the capture interaction using the electromagnet's polarity switching: on a capture, the board flips the magnet polarity to repel the captured piece rather than drag it, nudging it so the player can pick it up themselves. This turns a frustrating wait into an intentional interaction: the player gets to remove their opponent's piece by hand, which feels more satisfying. It cut capture time significantly and made the experience feel collaborative rather than passive.

03

Accessibility

“What does truly accessible chess actually look like?”

This was the core of the entire project and the most layered challenge we faced. Our T-Mobile mentor pushed us early to think beyond “the board moves pieces.” The question was what a truly accessible chess experience looks like for someone with limited hand mobility, limited vision, or both. We identified three problems: players needed a way to input moves without touching the board, they needed feedback confirming the move happened correctly, and they needed to understand the board state at a glance.

We addressed each with a different layer: voice recognition via OpenAI Whisper for input (no physical contact required), WS2812B LEDs per square for in-board confirmation feedback, and the real-time web interface for complete board awareness from any device. Together these three layers mean a player with limited hand mobility can play a full game of physical chess speaking their moves, watching the board respond, and following the game on screen without assistance from another person.

Technical Highlights

🧪

52

Unit Tests

Written for embedded C++ firmware using the Unity framework chess engine and move planner fully tested independently of hardware.

🗺️

Dijkstra Pathfinding

Runs on the Pico to route the magnet carriage around blocking pieces, with recursive blocker parking up to 3 levels deep.

📡

ESP-NOW Wireless

Peer-to-peer between two microcontrollers with automatic channel scanning and hopping. No router required.

🔒

No Optimistic UI

The web interface only updates when the physical move is confirmed complete. The digital board always reflects physical reality.

🔌

Custom PCB

Designed in KiCad, fabricated in Shenzhen, hand-soldered by the team. 16 Hall sensors + 16 RGB LEDs on a 2-layer board.

🤖

Stockfish 18 AI

Runs as a WebAssembly Web Worker entirely in the browser. No server required. Either player can be toggled to AI mid-game.

Tech Stack

Web Interface

Next.js 16React 19TypeScriptTailwind CSS v4Stockfish 18WebSocket

Firmware

C++PlatformIORaspberry Pi PicoESP32-S3ESP-NOWOpenAI Whisper

Hardware & Fabrication

KiCadFusion 360SLA Resin PrintingLaser CuttingShenzhen PCB FabSMD Reflow

Testing & Protocol

Unity Test FrameworkBresenham AlgorithmDijkstra PathfindingCoreXY Kinematics
Team
TMO

T-Mobile Accessibility Team

Industry Sponsor & Accessibility Mentor

T-Mobile Sponsored
YL

Youngpyung Lee

Technical PM · Web Interface · XY Motion System · T-Mobile Liaison · Budget

SJ

Su Hyun Jung

Product Designer

KT

Keochonodom Taing

Software & Hardware Engineer (SDE)

Learnings & Impact

🔩

Hardware and software are inseparable.

Every software decision had physical consequences, and every hardware constraint shaped the code. Writing a chess engine that runs on a microcontroller while also routing a physical magnet around real pieces taught me to think in both worlds simultaneously.

Accessibility is a design constraint, not a feature.

Working with T-Mobile's accessibility team reframed how I think about inclusive design. The best accessibility decisions weren't add-ons. They were fundamental architecture choices that made the whole system better for everyone.

🤝

PMs who build earn more trust.

Being hands-on in the codebase and on the workbench gave me credibility with my teammates that purely managerial coordination never would have. I could make better product decisions because I understood the technical tradeoffs from the inside.

What's Next

Final birch plywood enclosure production-quality board housing currently in fabrication

Full 8×8 Hall sensor + LED grid integration across the complete board

Complete end-to-end play loop with real-time piece position verification

Web interface remote play mode for players in different locations