Space Invaders

Step by Step build your own Space Invaders

In this, the first part of a multi-part series, we look at building and programming a Space Invaders (originally by Taito) clone. The hardware is at beginner level requiring nothing more than an Arduino,  OLED display , push switches, piezo speaker and a few wires. Optional cabinet designs will be available towards the end of the series. The software is at beginner to intermediate level, suitable for learning several concepts of C programming and game programming in general. Demo video of finished game is below.

Enjoy and Learn 🙂

Kit List
Arduino Nano : (although any version of an Arduino should suffice as long as it has at least 32K of program memory). Connections to other Arduinos may vary.
OLED : Based on a 128×64 pixel I2C display. Other sizes could be used but you would have to adapt the program to comensate.
Piezo Speaker : Must be the simple type that can be driven directly and not one that makes a noise with just power applied (this would be more normally termed a piezo buzzer).
Tactile push buttons (3) : One for fire, 1 for left, 1 for right. Beware if building on breadboard as some do not fit correctly into the holes. You may need to mount to stripboard and then run wires to breadboard.
Wires (several )

Part 1 : Connecting the OLED, plotting a graphic to screen and basic movement.