Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Build and play your favorite retro games with code, circuits, and a touch of old-school magic.

Notifications You must be signed in to change notification settings

Hobitronics/hobitronics_arcade

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

15 Commits

Repository files navigation

๐Ÿ•น๏ธ Hobitronics Arcade

Let's build fun, nostalgic games with just code, wires, and imagination!


๐Ÿ Snake Game on OLED with Joystick

Description:

Bring back the nostalgic arcade vibes with this minimalist Snake Game built using an Arduino, a joystick, and a 0.96" OLED screen.
Control the snake, eat the food, and grow longer โ€” all in just 64 pixels!


๐ŸŽฎ Components:

  • Arduino UNO
  • 0.96" OLED Display (SSD1306, I2C)
  • Joystick Module (Analog)
  • Jumper Wires & Breadboard
  • Optional: 10kฮฉ resistors (if needed for joystick voltage divider)

๐Ÿ” Features:

  • Real-time snake movement using analog joystick input
  • Auto food spawning (never on snake body!)
  • Self and wall collision detection
  • Game over animation and auto-reset
  • Adjustable speed via moveDelay
  • Compact and optimized for 128x64 OLED

๐Ÿง  Concepts Covered:

  • OLED graphics with Adafruit GFX library
  • Analog joystick input handling
  • Arrays and game logic on microcontrollers
  • Collision detection
  • Procedural food spawning

๐Ÿ“บ Demo

๐Ÿ‘‰ Watch on YouTube Shorts
๐Ÿ‘‰ Find Code on GitHub


โœ… Quick Tips:

  • If the joystick feels reversed, just swap X/Y pins or logic in readJoystick()
  • To increase difficulty, reduce moveDelay
  • Expand the project by adding a score counter, splash screen, or level system!

๐Ÿงฉ Joystick Maze Game on OLED

Description:

Navigate through 5 progressively challenging mazes using a joystick on a 128x64 OLED screen.
This project combines logic, memory-efficient graphics, and satisfying pixel movement โ€” a perfect hands-on learning experience in embedded game design.


๐ŸŽฎ Components:

  • Arduino UNO
  • 0.96" OLED Display (SSD1306, I2C)
  • Analog Joystick Module
  • Jumper Wires & Breadboard
  • Optional: Pull-up resistors (10kฮฉ for joystick button)

๐Ÿ” Features:

  • 5 levels of handcrafted maze puzzles
  • Pixel-perfect joystick navigation (analog input to digital move)
  • Dynamic maze drawing from PROGMEM to save RAM
  • Win animation and auto-restart
  • Button press supported for future upgrades (pause, reset, etc.)

๐Ÿง  Concepts Covered:

  • Drawing 2D levels using arrays in PROGMEM
  • Display graphics with Adafruit GFX & SSD1306
  • Handling analog joystick input and debouncing movement
  • Coordinate-based logic and collision detection
  • Game state logic and level progression

๐Ÿ“บ Demo

๐Ÿ‘‰ Watch on YouTube Shorts
๐Ÿ‘‰ View Code on GitHub


๐Ÿงฑ Brick Breaker on OLED

Part of the Hobitronics Arcade Collection


๐ŸŽฎ Game Description

A full-featured Brick Breaker game built using an Arduino UNO, joystick, and 128x64 OLED.
Use the joystick to control the paddle, bounce the ball, break all the bricks, and advance through 3 exciting levels. Game Over and Victory screens included!


โš™๏ธ Components Required

  • Arduino UNO
  • 0.96" OLED Display (SSD1306, I2C)
  • Analog Joystick Module (connected to A0)
  • Jumper Wires & Breadboard

๐Ÿง  Key Features & Concepts

  • Joystick-based paddle control (analog input)
  • OLED rendering with Adafruit GFX + SSD1306
  • Ball physics with basic collision detection
  • Brick grid with collision response
  • Game states: win, lose, reset
  • Level progression with increasing difficulty
  • Memory-efficient display updates using clearDisplay() and fillRect() logic

๐Ÿ•น๏ธ Gameplay Mechanics

  • Paddle: Controlled via joystick (X-axis)
  • Ball: Bounces off walls, paddle, and bricks
  • Bricks: Destroy on impact, earn points
  • Levels:
    • Level 1 โ†’ 2 rows of bricks, slower ball
    • Level 2 โ†’ 3 rows of bricks, medium speed
    • Level 3 โ†’ 4 rows, faster ball
  • Win: Clear all bricks in Level 3
  • Lose: Ball falls below paddle

๐Ÿ“บ Demo

๐Ÿ‘‰ Watch the YouTube Short
๐Ÿ‘‰ View Source Code on GitHub


๐Ÿงฑ Dodger Game on OLED with Joystick Description: Dodge falling blocks like a pro in this fast-paced Pixel Dodging Game made with an Arduino UNO, a joystick, and a 0.96" OLED screen. Three levels, increasing speed, and randomized block drops make it a thrilling challenge for hobbyists and students alike!


๐ŸŽฎ Components: Arduino UNO

0.96" OLED Display (SSD1306, I2C)

Joystick Module (Analog)

Jumper Wires & Breadboard

Optional: 10kฮฉ resistors (for joystick stabilization)


๐Ÿ” Features: Player-controlled dodging using analog joystick input

3 progressive levels with increasing difficulty

Dynamic obstacle sizing and randomized fall paths

Real-time score tracking and level display

Smooth win/lose animation and automatic reset

Optimized for 128x64 OLED using Adafruit GFX library


๐Ÿง  Concepts Covered: OLED graphics with Adafruit SSD1306 & GFX library

Analog input handling for joystick

Game loop timing and collision detection

Random obstacle generation

State management (level system, win/lose screens)


๐Ÿ“บ Demo

๐Ÿ‘‰ Watch on YouTube Shorts
๐Ÿ‘‰ View Code on GitHub


โœ… Quick Tips: Obstacle speed increases slightly with every dodge

Each level includes 10 dodges before progressing

Want to increase difficulty? Decrease updateInterval or increase speed scaling

Reverse joystick directions by modifying logic in readJoystick()

๐Ÿ“š Explore More Electronics

For tutorials, explanations, and in-depth electronics blogs, visit:
๐Ÿ‘‰ hobitronics.blog


๐Ÿ“ฒ Stay Connected!

Follow us for regular project updates, memes, and DIY tips:


Built with ๐Ÿ’™ by Hobitronics Letโ€™s make electronics exciting โ€” one pixel at a time!

About

Build and play your favorite retro games with code, circuits, and a touch of old-school magic.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

AltStyle ใซใ‚ˆใฃใฆๅค‰ๆ›ใ•ใ‚ŒใŸใƒšใƒผใ‚ธ (->ใ‚ชใƒชใ‚ธใƒŠใƒซ) /