← Back to the clubSEMIAHMOO / PROJECT 01
FROM THE WORKBENCH TO YOUR BROWSER

Small board.
Big appetite.

Our RP2040 Snake game. Built by students. Ready to play.

LIVE DEMO
01
+−− +3V3 POWER / COMMON GROUNDRP2040USBMPU60500x68SCKGP18MOSIGP19CSGP17RSTGP20DCGP21GP15GP14SDASCLVCCGNDAD03V3GNDBLKVCCGND
READY TO PLAY?Press Start game below
Drag to tilt and steer
FOLLOW THE WIRES

The connections in your code.

This breadboard illustration uses a generic RP2040 development breakout. Labels show GPIO names, not physical header positions; the real board and module pin order may differ.

ST7789 display · SPI

SCKGP18
MOSIGP19
CSGP17
RSTGP20
DCGP21
VCC + BLK3V3 rail
GNDGround rail

MPU6050 · SoftI2C

SDAGP15
SCLGP14
VCC3V3 rail
GND + AD0Ground rail

AD0 low selects address 0x68. The illustration assumes a 3.3 V compatible breakout with onboard I²C pull-ups. USB supplies the RP2040 development board; its regulated 3V3 and GND feed both rails.

MPU6050 datasheet ↗
THE ORIGINAL BUILD

A tilt-controlled classic.

The physical game runs MicroPython on an RP2040, reads tilt from an MPU6050, and draws on an ST7789 display. This browser adaptation keeps the original 24 × 22 grid, 150 ms movement, colors, scoring, and collision rules.

HOW THIS DEMO WORKS

Same challenge. New controls.

Dragging the board simulates the tilt sensor: tilt right to go right, or tilt up to go up. The strongest tilt axis selects the direction, with a 5° neutral zone. The snake cannot reverse directly into itself. WASD and arrow keys also tilt the board. The direction indicators light up to show the current tilt; they are not clickable controls. Pause and manual restart are added for the web; this is a recreation of the game, not a hardware emulator or an exact model of the physical build.