Arduino Simon

An Arduino based circuit to play the copy-cat colour matching game, Simon.

Start the game by pressing any button. The repeat the sequence of colours displayed.

Breadboard Diagram

Arduino Simon Circuit.png

Notes

I bent the legs of the switches in on themselves a little, so that they are one columns narrower than normal. Orient the switches so that the legs can be seen at the sides (not at the top and bottom).

Each of my LEDs require a different value resistor. Use whatever value resistor is appropriate for your LEDs.

Key

SymbolDescriptionQuantityPhoto
resistor-10K.png
10K ohm Resistor5
!plainthumb:resistors.jpg
resistor-1K.png
1K ohm Resistor1
!plainthumb:resistors.jpg
resistor-560.png
560 ohm Resistor2
!plainthumb:resistors.jpg
green led.png
Green LED
The longer leg is +
1
!plainthumb:leds.jpg
amber led.png
Amber LED
The longer leg is +
1
!plainthumb:leds.jpg
red led.png
Red LED
The longer leg is +
1
!plainthumb:leds.jpg
blue led.png
Blue LED
The longer leg is +
1
!plainthumb:leds.jpg
button.png
Button4
!plainthumb:button.jpg
potentiometer.png
Potentiometer1
!plainthumb:potentiometer.jpg
piezo.png
Piezo Element1
!plainthumb:piezo.jpg

Code

simon.pde

Possible Improvements

Keep a record of the high score, and play a tune when its bettered.

Add a time limit. If no button is pressed within the time limit, that's the same as getting it wrong, and the game ends. Perhaps have a couple of beeps when the limit is near?

Make the game get faster when the sequence exceeds 10 colours (and again at 15, 20, 25 etc).

Make the sound effects better.

More types of games (for example, a two player game, where each player chooses how to extend the sequence).

Dependencies :
Arduino Simon Circuit.png }   { amber led.png }   { blue led.png }   { button.jpg }   { button.png }   { green led.png }   { leds.jpg }   { piezo.jpg }   { piezo.png }   { potentiometer.jpg }   { potentiometer.png }   { red led.png }   { resistor-10K.png }   { resistor-1K.png }   { resistor-560.png }   { resistors.jpg }