1D Gaming
Pong and Chess implemented to be played on a long single strip of WS2812 LED lights. Pong is controlled locally with physical controllers and Chess is played over Meshcore. Battery powered for off-grid fun!
The Games
1D Pong
Pong collapsed onto a line. The “ball” is a strip of lit LEDs that travels along the strip and each player has hits their button when it enters their end zone. Time it wrong and the other player scores. Games are played to 3 points. The Ball gets faster and bigger the longer the volley.
Tips:
- Hit the ball farther back in the end-zone to return the ball faster
- Hold both controllers down for 10s to reset
1D Chess
Simplified 1D Chess on 8 squares, with a King, Knight and Rook per side and played over Meshcore. Runs standalone on the device, and gets visualized on the strip of lights if pong is not being played.
Playing Mesh Chess
Join the “1D Gaming” channel in meshcore here:
Characters on the ascii board in Meshcore chat show the position — lowercase
= orange (player 0), UPPERCASE = blue (player 1), and . is an empty
square, e.g the starting board is knr.....RNK.
Chess happens on the 1D Gaming mesh channel. Send messages prefixed with
c (or chess):
| Command | What it does |
|---|---|
c join |
Take a seat. Two players joining starts the game (a random side moves first). |
c new |
Reset and start a fresh standard game. |
c chaos |
Start a chaos game — pieces dropped on random squares! |
c board |
Show the current board (also c status). |
c <move> |
Make a move: a piece letter + target square, e.g. c N4. |
c resign |
Give up the current game. |
c notify |
Get a DM when the game ends. |
c help |
Show the in-game help. |
The pieces
K— King, steps one squareN— Knight, jumps two squaresR— Rook, slides
A move is just the piece letter plus the destination square, so N4 moves your
Knight to square 4.
Tips:
- If you are not seeing a response from the chess bot on meshtastic, make sure chess commands start with “c” or “chess”.
- The chess board will be shown over the meshtatastic channel but is only visualized on the LED strip if the Pong game is not active (so both can be played at once).
Under the Hood
- WS2812B (NeoPixel) LEDs as the display (up to 160’)
- Raspi 5 for running Meshcore bot and chess engine
- A Raspi Pico2 for running Pong engine and driving the lights.
- Two physical push controllers for Pong
- Battery powered!
More Project Mammoth music, art, tech & hackery on the main page.