Marble Disorder – a marble maze simulator with tilt switches using Arduino
I keep documenting the original version below for historical purposes, but don’t watch this – watch that
Bonus game: The Marble Disorder box is compatible with Ariadne. (the only difference is the tilt switches).
Build once, play twice 🙂
Step 1: Hardware and software
Note: the new version is a bit different (and requires less components).
It is advised to build the new version (much more fun to play).
- An Arduino
- A Hitachi HD44780 compatible LCD display (I used 16×2, but 20×4 should work too)
- 2 tilt switches
- A pushbutton
- 3 10K Ohm resistors (pull-up for the tilt switches and the buttons)
- 2 10k Ohm potentimeters (one for spin control and [an optional] one for LCD contrast)
- Optional piezo speaker
See breadboard diagram.
If you connect the piezo speaker, you can mute it by setting MUTESOUND to 1.
Actually – this is the default 🙂
Why have the speaker and mute it? Glad you asked:
Like I’ve mentioned, you can also run Ariadne’s code on this box.
Ariadne only beeps when you hit a wall (i.e. you’ve made a mistake). This can be avoided.
Marble Disorder beeps whenever there’s a spin (i.e. when both tilt-switches allow the marble to move to 2 different cells, and the spin potentiometer determines which one).
This can’t be avoided – so you end up with a pretty noisy game. It does help play the game – but I’m not sure it’s worth the hassle of all those beeps.
Another option is to put a switch on the piezo speaker (something my Electronic Brick shield doesn’t allow).
Step 2: Construction
I’m the last person to teach anyone how to do stuff in the physical world, and anyway – you’ll most probably need to do it in a different way (I happened to have an Electronic Brick kit and a SeedStudio harness), but cutting a transparent Tupperware clone seems like a nice and easy way to do it.
Let me know (and show some photos) if you make your own box. I’m sure it would look nicer than mine 🙂
Step 3: Playing the game
Note: the new version is a lot easier to play (so easy – it doesn’t even need instructions).
This step is kept here for historical purposes.
This Post / Project can also be found using search terms:
- arduino simulator