This Instructable will show you how to build a hi-tech version of the game "Buzz Wire" that can be used as a clue in scavenger hunt, or can be adapted for other challenges.
Step 1: The Idea
Buzz Wire is a game kind of like operation, but with a twist (literally)! The objective is to get a ring around a twisted wire without touching it. In the classic version of this game, if the ring touches the wire, a buzzer will go off or a light will flash. I wanted to build a version of this game as part of a scavenger hunt for my significant other's birthday. As such, i needed a way to hide a clue within the game. This Instructible will go over how to use an Arduino and an LCD screen to build an updated version of this game that will display a message only upon successful completion of the game! Best of all, there is no way to cheat (unless you understand the circuit!)
Step 2: The Non-Electronic Ingredients
To build the body of this game, you will need:
- The track - I used a thick copper wire. Any conductive metal wire should work. Should be thin enough to bend but thick enough to hold it's shape firmly throughout the game.
- The ring - I used an eye hook. Alternatively, you could use some extra wire from the track bent into a ring shape.
- Two washers - these will be used as the endpoints of the track.
- Some more wire - This will be used to connect these various pieces to the circuit. I used some thin wires (stripped out of cat 5 cable) for the track and washer connections (you will need three sections of wire), and a thicker alligator jumper cable for the ring.
- A board - this will hold everything together. I used a footlong piece of a 1"x4".
As for tools, you will need:
- A drill and a bit the same size as your track wire
- Some pliers
- Hot glue
Step 3: The Non-Electronic Build
First, drill two holes the same size as your track wire in either side of the board. These will serve as the anchor points of the wire.
Next, wrap the smaller wire around each of the washers as shown in the second image.
Now glue one of the washers with the wire wrapping over the first hole, then shove one end of the track wire in the hole and glue it in place. The washer and the track wire must not be touching. See the third image.
Now, bend the track wire to a fun shape and clip it off at whatever length you need to reach the other hole. Before shoving the track wire into the second hole, place the second washer (with the wire wrapping) around the track wire and then wrap some of the thin wire around the end of the track wire. Then glue the end or the track wire into the hole and glue the washer down to the board (see image 4). Make sure there is no electrical connection between the track wire and the washer.
Next, use the alligator clip to clamp one end of the jumper wire to the ring, as in image 5.
Now your build should look something like the first image.
Step 4: The Electronic Ingredients
To build the brains of this game, you will need:
- An Arduino
- An LCD screen
- a 10k potentiometer
- A piezo buzzer (optional)
- a red and a green LED (optional)
- A handful of jumper cables and a breadboard
- a 220 ohm resistor
- Four resistors of the same value with resistance of 1Kohm or higher
All of these pieces can be found in one of Elegoo's starter packs, which are a great deal for a bundle of components. I built this project with components from this one.
Step 5: The Electronic Build
Set up the circuit as shown in the diagram. Here are some notes:
- The resistors connected to the LEDs and LCD are 220ohm
- The resistors connected to the analog inputs and the one that is placed diagonally are 1k+ ohm.
- The diagnal wires that connect to the header on the right are the wires that connect to the body of the game as follows:
- A0 (green wire) connects to the start-game washer
- A1 (blue wire) connects to the track wire
A2 (yellow wire) connects to the end-game washer
This circuit was drawn with TinkerCad.
Step 6: The Code
The code is attached and can also be found on my GitHub.
This game was built as part of a scavenger hunt for my girlfriend Jamie's birthday. Once she beat the game, the LCD screen displayed the location of her next clue, which was the dishwasher, and the piezo buzzer played "happy birthday". Unless you are planning a birthday scavenger hunt for someone named Jamie where the next clue is in the dishwasher, you may want to change some of the code, like the LCD text and the piezo buzzer tune.
Basically, there are 5 stages associated with startup (arduino turns on), game begin (ring touching start washer), game fail (ring touching track wire), game end (ring touching end washer after having touched the start washer and not the track wire), and cheater (ring touching end washer after having touched the track wire). These stages are implemented with if/else logic in the main loop, and the various text is implemented with a switch case block in displayText(). Note that there is a case (stage=1) that I don't actually use. It was giving me issues so I just removed it from the logic but didn't clean it up and don't feel like doing so now.
Hopefully the code is easy enough to understand and tweak accordingly. I'd be happy to answer specific questions in the comments if you have any.
The piezo "Happy Birthday" song was taken from https://create.arduino.cc/projecthub/trduunze/pie...
Step 7: Enjoy!
Upload the code, connect the wires from the washer, track and ring to the circuit and strap it all together! This game has actually been quite a bit of fun and we have played with it after the scavenger hunt. I have also made an updated version that is more of a standalone game. Instead of having a clue at the end, it keeps track of how long it takes you to complete a round and displays a high score. See this version here. I'm sure there are other fun things that can be done with this basic setup as well.