PROJECT 02 / RP2040 + ST7789

Brick Blast.

Forty bricks. Three lives. Make every bounce count.

+−− +3V3 POWER / COMMON GROUNDRP2040USB←LEFT / GP15→RIGHT / GP14SCKGP18MOSIGP19CSGP17RSTGP20DCGP21GP15GP143V3GNDBLKVCCGNDST7789 · 240 × 240
BRICK BLASTPress Start game

Drag to inspect the device · Buttons control the paddle

FOLLOW THE WIRES

Hardware connections.

ST7789 display

Display pinConnect to
SCKGP18
MOSIGP19
CSGP17
RSTGP20
DCGP21
VCC + BLK3V3 rail
GNDGround rail

Buttons & power

ConnectionConnect to
Left switchGP15 ↔ GND
Right switchGP14 ↔ GND
Board 3V3 outputPositive rails
Board GNDGround rails
USBRP2040 board power

Both buttons are active low and use the internal pull-ups in your code. The display power assumes the same 3.3 V compatible module as Snake. GPIO labels are signal names, not physical pin positions.

THE ORIGINAL BUILD

Two buttons. One challenge.

Adapted from our MicroPython game: 240 × 240 pixels, five rows of eight bricks, a 50-pixel paddle, and three lives. The browser uses a 10 ms simulation step; actual hardware also spends time transferring each frame, so its real speed may differ.

After losing a ball, the game waits 700 ms before serving again. Clear all 40 bricks to win.

HOW THIS DEMO WORKS

Same challenge. New controls.

A / D, arrow keys, and the on-screen buttons replace the physical switches. Hold a direction to move the paddle; the breadboard buttons light up to show your input. Dragging rotates the model for inspection and does not steer the paddle.

The browser keeps the original bricks, lives, and bounce rules. Pause and replay are added for the web. This is a recreation of the game, not a hardware emulator or an exact model of the physical build.