🐍 SYNCRO SNAKE 🐍

Arduino OLED Game - Portfolio Demo

Score
0
Length
1
Speed
200ms

Player 1 Controls

WASD Keys

Player 2 Controls

IJKL Keys

🔧 Arduino Hardware

  • Arduino Board
  • SSD1351 OLED Display (128x128)
  • 2x Analog Joysticks
  • Adafruit GFX Library
  • Adafruit SSD1351 Library

⚡ Game Features

  • Dual joystick synchronization
  • Snake grows when eating food
  • Boundary wrapping
  • Self-collision detection
  • Start screen with instructions
  • Game reset functionality

🎮 How to Play

Both players must input the same direction for the snake to move. This creates a cooperative gameplay mechanic where coordination is key!

  • Use WASD (Player 1) or IJKL Keys (Player 2)
  • Both players must press the same direction
  • Eat red food to grow
  • Avoid hitting yourself

💾 Arduino Code Snippet

// Snake movement logic for (int i = snakeLength - 1; i > 0; i--) { snakeX[i] = snakeX[i - 1]; snakeY[i] = snakeY[i - 1]; } snakeX[0] += dirX * 8; snakeY[0] += dirY * 8; // Dual joystick synchronization if (dirX1 == dirX2 && dirY1 == dirY2) { if (!(dirX1 == -dirX && dirY1 == -dirY)) { dirX = dirX1; dirY = dirY1; } }

Project Gallery

Syncro Snake Project Image 1
Syncro Snake Project Image 2
Syncro Snake Project Image 3
Syncro Snake Project Image 4

About Syncro Snake

Syncro Snake was developed as part of "The COMMONS Kurzprojekt" at UDK Berlin in 2025, reimagining the classic Snake game with a unique cooperative gameplay mechanic for Arduino hardware.

The COMMONS Kurzprojekt

The COMMONS Kurzprojekt invites participants into a week-long exploration of creating shared experiences. This hands-on format challenges designers to create objects and interactions that bring people together in unexpected ways, moving beyond individual-focused design toward collaborative prototypes.

Design Philosophy

Syncro Snake embodies collaborative design by requiring dual joystick synchronization—both players must agree on direction for the snake to move. This creates a dynamic where communication and coordination become essential gameplay elements, transforming a traditionally single-player experience into a cooperative challenge.

Technical Implementation

Built on Arduino with an SSD1351 OLED display (128x128 pixels), the project demonstrates efficient programming within hardware constraints while creating a thoughtful intervention that challenges preconceptions of collective engagement.

Supervision:
Prof. Aeneas Stankowski
Lukas Henneberger