BLE Gamepad
thingiverse
BLE based gamepad. Like every other project in my life, it's a work in constant development (mainly the software at this point). It's a SCAD file, so it's pretty easy to modify (add/change axis button layout).\nNote: The joystick holes look like they won't be holes, I assure you they will be when they're printed.\nParts:1x Adafruit Feather 32u4 Bluefruit LE1x LiPo Battery1x Colorful Round Tactile Button Pack1x Power Switch\n4x 4-40 by 14mm Screws (Hardware Store)\n2x Adafruit Joystick\nOR2x Sparkfun Joystick Breakout2x Sparkfun Joystick\nThe Sparkfun joystick breakouts are smaller, but the gamepad was actually designed for the Adafruit breakout...I somehow only ordered one of these, and I couldn't bring myself to spend $30 on shipping for a single joystick shield...but either will work.\nThe Feather is really nice since it comes with built-in battery management. I'm tempted to replace the BLE feather with a standard feather and use one of these cheap modules. The pros include being able to send arbitrary serial data. The cons include not being able to set the device as a HID joystick. To be honest, I hate USB HID. My only experience with it is writing a cross-platform joystick library. I would really prefer a serial port based gamepad system. But I'm trying to be hip and use this whole new "publish/subscribe" system...\nPrint Settings\nPrinter Brand: MakerBot\n Printer: MakerBot Replicator 2X\n Rafts: No\n Supports: No\n Resolution: 0.2\n Infill: 10%\n\nHow I Designed This\nParts\nMake sure to grab all the parts in the tab.\nTools\nSoldering Iron\nSolder\nDrill\nWire Strippers\nMultimeter\nHot Glue Gun\n1 Screwdriver\n4-40 Drill\n4-40 Tap\nDrill and Tap\nUse a 4-40 drill bit to drill out the screws holes.\nTap the screws holes with a 4-40 tap. Do this slow, and remember that you're making threads here, so back out the bit.\nYou can drill and tap the back plate screw holes if you wish, or over drill them such that the screws just fall through. Either way works!\nButtons\nI'm not 100% happy with this system...but it works... Glue the columns to the back plate and then the buttons to the columns. Slow and steady here. I experimented with the directions of the buttons, I prefer the style on the left side of the picture above. The right side works, but you need extra wire between each of the buttons. I ended up changing the right side to match the left side.\nBefore moving on, put the top plate on and make sure they still click.\nMain Board\nGlue on the Feather. That's a terrible picture...if only I could retake it...\nBefore moving on, make sure the USB lines up with the hole on the top piece.\nWiring\nStart with the buttons. Bend the inner legs in a ring like so. Solder them together.\nGlue down your joysticks (the Adafruit ones go directly on the corners, the Sparkfun ones you'll have to eyeball. Now for the soldering. I started with the joysticks (blue and yellow wires). Then the buttons (white wires). There's only one ground and power, but you can get three more ground from the sides of the USB connector and the battery connector.\nFUTURE WIRE DIAGRAM HERE\nSwitch and Battery\nThe last thing to put on is the power switch and battery (in that exact order). Fit the switch in the top plate.\nSolder the switch to ground and EN, and then hot glue it in.\nHot glue the battery onto the top plate. Plug it in. I'd recommend testing the electronics as you go.\nFirmware Test\nBefore closing up, upload the testing firmware. This will spit out the joysticks and buttons to the Arduino serial monitor. Test all of the axes and buttons before closing up.\nClosing\nScrew the back plate onto the top plate.\nReal Firmware\nIn progress...
With this file you will be able to print BLE Gamepad with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on BLE Gamepad.