Introduction: Arduino 'breadbot' Puzzle Game
Oh no! My baby robot needs a couple wires to come to life again!
Today we'll be making a puzzle game that might teach beginning arduino users something about breadboarding. That's why I made this! You can make it as complex as you'd like, but i chose for 4 LED's and 5 pins on each side of the mini breadboard. This puzzle game was inspired by the popular 'Keep talking and nobody explodes' game on steam.
Here is what you'll need to make the same version as I did:
- An arduino UNO
- A breadbord to connect the wires to play with on
- Wires (male to male and male to female)
- 4 different colored LEDs (and resistors)
- 1 piezo buzzer
- (i used 5) resistors to measure different results for your answers
- (i used 5) resistors for the other side of the mini bread board
- a small box to put everything in (i used the box an old phone of mine came in)
- paint, tape, arms, legs and a head for your robot! go crazy with this!
I highly recommend working out the project first on a breadboard before putting everything in the box or maybe soldering it together, do what you think works best!
Step 1: The LEDs
We want to use 4 digital pins on the arduino for 4 LEDs.
Make them go in this order, for each one: digital pin to breadboard > resistor for LED > LED > to ground on your arduino. Test them out to see if they work!
Step 2: The Puzzle Field
By using the analog pins to measure the voltages we can get different results.
start by connecting a wire from any analog pin to the breadboard. attach a strong resistor (1 kOhm preferred) in that same rail to ground, so when we measure the pin right now, it will return 0.
do this a maximum of 5 times, we need 1 analog pin open to create a random seed at the start of the game!
now for the other side of the board: connect a wire from the 5V pin to the positive rail in the breadboard. To get different results from each wire we need 5 different resistor values, if you do not have 5 different kinds of resistors like I do, use multiple after each other, they'll add up.
nice!
Step 3: The Piezo Buzzer and Frankenstein Wires
We're almost done with all the wiring!
use a digital pin and connect a piezo buzzer to it, that connects back to ground
use another digital pin and connect a long wire to it, connect another long wire to ground, if these two touch we'll trigger a check to see if all the wires the player connected are correct!
Step 4: The Code
download my project code and read it through, i'm sure it can be a lot cleaner, more efficient and better but this is what i ended up with with my experience! feel free to fiddle around with it or give your own twist to the project!
Attachments
Step 5: The Solution Sheet
the file attached is in dutch, so most of you probably won't have much use to it (if you don't want an extra challenge translating everything!) so we'll have to make our own one. You can create your own solutions easily by setting the 'u' variable to a desired number, upload, look at what lights turn on, connect some wires of your choosing and connect the frankenstein wires to see the solution, write that solution down in the solutions array in the code and in your solution sheet so players can solve it! I'm sure you can figure this out if you came this far :)
Attachments
Step 6: Done!
wow!!! congratulations you did it, you made a robot puzzle game
now it's time to make the housing and put everything together! good luck!!