In this steady hand wire game, players hold a loop of wire and move it around a piece of shaped wire. (https://goo.gl/gaj6ym)
I connected it to Android Things through a Pico PI-IMX6UL, though you can use other boards. The player will be notified of the touches with a buzzer. My code uses the sample button project (https://github.com/androidthings/sample-button).
This can also be used for other purposes besides entertainment. For example, it could be used in senior centers for hand-eye coordination training, or in hospitals for rehab patients.
This is a fairly simple build, and a great starter build into to Android Things.
PrerequisitesYou will need all the parts listed above, a computer, and Android Studio. Download Android Studio here: https://developer.android.com/studio/index.html
Flash your device with Android ThingsFollow the instructions here to flash your device with Android Things. https://developer.android.com/things/hardware/developer-kits.html
Click on the development board you are using and follow the instructions.
Take the block of wood and drill a hole about one inch in from each side, about 1/2 a inch deep. Check that the end of the aluminum wire fits in the hole. Bend your aluminum wire into a fun design. I used a city skyline. Cut the wire and fit it into the holes. Hot glue into place. I spray painted mine before gluing the wire in place. You can ignore the metal plate and the words, it was from a previous project. Bend a 3 inch piece of aluminum wire into a loop. Set it aside for now.
Breadboard the circuit based on the schematic. Connect the pins to the board based on the list below. If you need help figuring out which pins are where, go to this link, click on your board on the side, and then I/O pinout.
https://developer.android.com/things/hardware/developer-kits.html
Buzzer:
- EDISON_ARDUINO: IO13
- EDISON: GP45
- JOULE: J6_25
- RPI3: BCM6
- IMX6UL_PICO: GPIO4_IO22
- IMX6UL_VVDN: GPIO3_IO06
- IMX7D_PICO: GPIO_34
Wire Game:
Connect alligator clips to the shaped wire and the loop of wire, then connect the alligator clips to jumper wires.
- EDISON_ARDUINO: IO12
- EDISON: GP44
- JOULE: J7_71
- RPI3: BCM21
- IMX6UL_PICO: GPIO2_IO03
- IMX6UL_VVDN: GPIO3_IO01
- IMX7D_PICO: GPIO_174
My code uses the sample button project. (https://github.com/androidthings/sample-button)
Go to https://github.com/androidthings/sample-button and download the zip file. Open it in Android Studios.
Connect your board to your computer. Wait about a minute, then click the "Run" button. (at the top) When you touch your loop to the wire, it should buzz.
There are a lot of things I would like to add to this project. For one, I would like to add something to keep track of the touches, and the time, too. I'm sure this can be arranged easily. Also, relating to the first improvement, putting it in a spreadsheet would be nice, too. As for hardware, right now, there is a slight delay from when you touch the wire to when it buzzes, and if you touch it too quickly it doesn't really register. Right now, I can't think of any solutions, so if you have any ideas please let me know. I think it's due to resistance in the wire, but I may be wrong.
Thanks, and happy building!
Comments