Makey Makey Portable Gamepad
These instructions will be used to create your very own portable Makey Makey gamepad. Portabalizing the Makey Makey still requires a power source, so in this case, I will be using an old android phone that I had. Any android phone with a micro usb and supports the protocol USB OTG should be compatible with this project.
Materials:
Dexus Slim Clipboard
http://www.amazon.com/Dexas-1517-91-Slimcase-Black...
Makey Makey + included wires and alligator clips
http://www.amazon.com/Makey-Invention-Kit-Everyone...
Tin snips
Tin sheet
Drill with 1/8 inch drill bit
8 Neodymium magnets (size is less important than the strength of the magnets)
8 small metal wires (staples will do)
Epoxy (meant for metal)
Electrical tape
Standard key ring
Android device (On device need: Emulator, USB to Micro USB converter)
Phone Kickstand (Optimal use would be a phone cradle that support QI wireless charging)
http://www.amazon.com/Kickstand-iMangoo-Multi-angle-Adjustable-Smartphone/dp/B01959FPCY/ref=sr_1_5?s=wireless&ie=UTF8&qid=1462345136&sr=1-5&keywords=kickstand+phone
Setting Up the Clipboard (Drilling)
The first thing you are going to want to do is begin drilling the holes on the clipboard where you want the buttons to be. Make sure the holes are at least an inch and a half apart. This will ensure that the magnets don't have too much attraction to one another. Depending on the size of your specific magents, make sure that you test the attraction before drilling the holes. This will allow the buttons on top of the device to be held in the places you want them to be. The holes can be placed anywhere on the clipboard you want the button to be, just make sure to leave room to place the phone and the kickstand on top.
Drilling is also necesarry to create a hole for the Makey Makey wire to come out of. This can be done with either a larger drill bit, or by running the smaller drill bit around in circles. The wire can come out of and side of the clipboard you feel most logical, just make sure it is big enough fit the USB cable that comes with the Makey Makey.
Gluing
In the picture above, you can see several magnets glued down and held by masking tape inside of the clipboard. Between the plastic and the magnets sits small wires (I used staples to create a better button effect that allows a slight click, but copper wire would probably have worked better in this situation due to their thinness). Make sure that before gluing your wires are sticking out of the top of the clipboard (this is key to create the conductivity between the magnets and the buttons). These need to be glued down using epoxy. I elected to use gorilla glue, which didn't work out so well. They ended up being ripped off the plastic because of the power of the magnets. Epoxy can take anywhere from 30 minutes to 3 hours to cure, so make sure to follow the directions of the specific epoxy you are using in order to create a secure bond.
(NOTE: MAKE SURE THE STAPLES ARE STICKING OUT ON THE OTHER SIDE BEFORE GLUING. THIS IS KEY TO MAKING SURE A CLEAN CONNECTION IS MADE WITH THE METAL PLATES.)
Cut Out Buttons
The buttons may be in any shape you would like, just make sure they are small enough to be centered over the holes and not overlap with one another. A helpful tip if you are wanting the same size buttons: cut out one button of your preferred size and use it as an overlay to cut out the rest of them. My buttons were about 3/4 of inch square.
Wire the Internals
Using alligator clips and wires, assign each magnet a button on the Makey Makey of your choice. Alligator clips stand too tall to fit inside of this particular clipboard, so I elected to use mostly the holes meant for small wires that correspond primarily to keyboard letters on the device. The grounding will be done via one of the two metal bolts on the inside of the clipboard. This alligator clip that is attached to the ground of the makey makey can by glued on to the bolt of the clip, just make sure there is enough metal contact that is not disrupted by the glue. Once an alligator clip is either glued on or taped to one of the bolts, the clip on the top of the clipboard will become the ground used to complete the circuit of each button to send commands to the makey makey. The magnets should hold the alligator clips in place, but just to be safe I taped them down with electrical tape to make sure the internals functioned correctly.
Cable management is recommended as shorting circuits are a possibility. Use electrical tape to bind the centers of the wires together, then tape those masses to the corners of the inside of the clipboard.
Placing Buttons and Testing
Now that the magnets are in place, the tin buttons you cut out in the earlier step should snap into place when placing them on top of the clipboard. Make sure there is a clean connection to the wire that is connected to the magnets, that is connected to the alligator clip. This connection between the magnets and the buttons is key, and where I found to have most of the problems when buttons were not functioning correctly.
Plug the micro USB adapter into the phone, and the USB that came with the Makey Makey into the USB adapter.
Place the key ring around one of your fingers and attach an alligator clip to both the ring and the clip of the clipboard. This will allow you to send commands to the Makey Makey by complete the circuit. To test this, try pressing the buttons while the clipboard case is open, and watching the Makey Makey to see if the corresponding LEDs light up on it to indicate you are pressing a button.
Setting Up the Phone and Playing
Emulators are available from the Google Play Store. The one I elected to use was My Boy!, a Game Boy Advanced Emulator that plays GBA roms. ROMS need to be obtained legally.
Inside of the settings of the emulator, you will need to create a keyboard mapping profile that will match the Makey Makey's button setup to that of the one you have implemented. This can be done by going into the settings of the emulator, clicking on key mappings, and then going through each individual button. When assigning a button, make sure the controller is plugged into your phone and is recognized as a keyboard. For me, and for most android phones, this should happen automatically. Click on each button inside of the control mapping section of the emulator, and when asked to assign the button, click the button on the controller you would like to act as the corresponding button. Once all buttons have been configured, select the menu drop down from with the configuration menu and select "export". This will allow you to save the button mapping scheme and use it on other devices and emulator by clicking on "restore" in the same menu.
This profile will be able to be carried from emulator to emulator, so save it for future use.
The controller is now ready for use! Stick your phone on the clipboard and start playing.
While this setup is meant specifically to play Mario, the buttons can be placed to use with any game compatible with android that supports a keyboard input.
Tips/Tricks/Common Issues
My final product did not come out perfect, and there are a number of tricks to help make yours come out the way you want it.
USE EPOXY: Do not use anything else besides epoxy to bond the magnets to the plastic. This is where most of my problems came from. It is a pain to use, but will create a much better product in the end.
Consider copper wire over staples: If you are looking for that clicky feel for the buttons, then staples is really the only way to go. However, if you are looking to make the tin buttons more seamless with the surface of the device, I would recommend using frayed copper wire to make the connection between the magnets and the buttons.
Don't forget to put the wire between the magnets and the holes in the surface: Did this my first time around, ended up having to reglue a portion of it.
Consider attaching the kickstand to the clipboard: This will allow for a more seamless experience and will prevent the phone from sliding around.