USB Biofeedback Game Controller using arduino

Building upon our last tutorial, which taught you how to build a muscle sensor, we’ve decided to give you a project that really showcases the power of our muscle (EMG) sensors. Advancer Technologies’ “USB Biofeedback Game Controller” harnesses the power of electromyography to allow players to directly control video games with their muscles. At the core of this plug-in-play controller is the powerful yet low-cost Arduino UNO microcontroller, a favorite among hobbyist and students, acting as a HID keyboard interface. Integrated with the Arduino UNO are four of our Muscle (EMG) Sensors, allowing four muscles to act independently or in combination with each other to control over four buttons. In our setup, we elected to use a six button setup with the left forearm controlling the B button (RUN/ATTACK), the right forearm controlling the A button (JUMP), the left bicep controlling the LEFT button, the right bicep controlling the RIGHT button, and combinations for UP and DOWN.

USB Biofeedback Game Controller
This tutorial will teach you to build a USB Biofeedback Game Controller. Use it to play any computer game (that uses keyboard inputs) using your muscles as the controller.

Check out our previous Instructable to learn how to build your own Muscle Sensor

or

Drop by our webstore to purchase muscle sensors, kits, cables and electrodes
Muscle Sensor Kit (now also on SparkFun)
Muscle Sensor Electrodes

Note: This sensor is not intended for use in the diagnosis of disease or other conditions, or in the cure, mitigation treatment, or prevention of disease, in a man or other animals.

About Advancer Technologies
Advancer Technologies is a company devoted to developing innovative game-changing biomedical and biomechanical technologies and applied sciences. Additionally, Advancer Technologies promotes all forms of interest and learning into biomedical technologies. To help cultivate and educate future great minds and concepts in the field, they frequently post informative instructions on some of their technologies. For more information, please visit www.AdvancerTechnologies.com .

Step 1: Materials

Basics
1 x Arduino Uno R2 (needs the atmega8u2 USB chip which is only available on newer Arduino MCUs)
1 x Arduino Project Enclosure
1 x USB cable for your Arduino
4 x Advancer Technologies Muscle Sensor
1 x +/-5V Power Supply
1 x 12V Power Supply (Wall wart) 
1 x Muscle Sensor Electrodes

Misc.
Jumper cables or solid core wire
3 x 1″ length pieces of 24-30 AWG wire (1/8″ stripped off each end)
3 x 2″ length pieces of 24-30 AWG wire (1/8″ stripped off each end)
3 x 3″ length pieces of 24-30 AWG wire (1/8″ stripped off each end)
3 x 4″ length pieces of 24-30 AWG wire (1/8″ stripped off each end)
3 x 3 position Female Receptacle 
1 x 3 position Female Housing
3 x Crimps for Female Housing
Plastic board (ABS)
1 pack x 3/8″ 4-40 Screws (91772A108)
2 packs x 4-40 Nuts

Tools
Soldering Iron
Scissors or Tin Snips
Crimping tool
Screw driver
Drill with 1/8″ bit
Sandpaper
Dremel tool or other cutting tool

Software
Arduino
Processing

Step 2: Constructing the plastic insert

First we will need to create a insert to attach the Power Supply board and three of the Muscle Sensors. This insert will fit inside the project enclosure and rest on top of the Arduino UNO and the last muscle sensor.

If you’re using relatively thin plastic board material, you can probably use a set of heavy duty scissors or tin snips to cut out the insert.

The dimensions (in inches) are shown in the drawing above and are approximate. You might need to do some sanding for a better fit.

After you construct the insert, try sliding it into the bottom of the enclosure and putting the top on. If it doesn’t fit properly, get the sand paper out and sand down the parts that are interfering.

Step 3: Preparing the bottom of the project enclosure

Next we’ll prepare the Arduino project enclosure.

First, trim down the two middle supports on the bottom of the enclosure. Leave enough height so that they will still go through your Arduino mounting holes but not go past the Arduino headers. (Pic 1)

Next, place one of the muscle sensors in the bottom left of the enclosure by sliding the bottom left support through the muscle sensor’s mounting hole (the one near the female headers). Straighten the sensor by rotating it around the support such that its sides are parallel with the enclosures. Gently and such that you don’t jostle the sensor board, slide your plastic insert onto the enclosure and hold it above the sensor. Now, look down the rectangular cutout on your insert and verify the three male headers of your sensor are directly below. If not, remove the insert, adjust the sensor position and repeat until it is in position. Once it is in position, mark the location of the muscle sensor‘s second mounting pin, remove the sensor, and drill the hole.

Note: If you don’t get the hole in exactly the right position, it’s OK you can just widen the cutout more to compensate.

Step 4: Preparing the top of the project enclosure

Next, you’ll need to modify the top portion of the enclosure as well. Using a Dremel tool or some other cutting tool, completely cut off the reinforcement wall near the front of the enclosure (see picture). Additionally, completely cut off the two middle supports that complement the supports you cut on the bottom portion of the enclosure. These both need to be removed to give us some more head room for the muscle sensors and plastic insert

Step 5: Soldering the power supply connectors

We now need to create a way to connect the Power Supply board to each of the sensors. Grab your power supply board, the four sets of wire lengths, and the female housing and receptacles.

On the Power Supply board, there is a grid of through holes in a 3 col x 4 row pattern. Solder the three 3″ wires to the holes in row 1, solder the three 2″ wires to the holes in row 2, solder the three 1″ wires to row 3, and solder the 4″ wires to the holes in row 4.

Next, grab your 3 female receptacles and bend all the solder tabs so that they’re at a 90 degree angle. For the 1″-3″ wire sets, solder the female receptacles (with the ports facing downward) such that the wire soldered to the +5V column is soldered to the right solder tab, the GND wire is soldered to the middle solder tab, and the -5V wire is soldered to the left solder tab. For reinforcement, dab a glob of hot glue on the joints.

Using a crimping tool (you can also choose to solder instead of crimping), crimp the crimp tips to each of the 4″ wires with the tabs pointing upward. Now insert each of the wires’ crimp tips into the female housing, again following the +5V right, GND middle, -5V left order.

Your power supply board should be ready to go. double check each solder and crimp to make sure they’ll good and solid.

Step 6: Mounting the muscle sensors and power supply board

Now it is time to mount your sensors using the 4-40 screws and nuts.

Grab three of your sensors and the power supply board and put a screw into each mounting hole. Thread a nut on each screw but leave it slightly loose. These nuts will be used as standoffs.

Next, place each sensor’s mounting screw into each corresponding mounting hole. Remember to keep the muscle sensors‘ female headers on the same side as the shelf’s offset. Thread another nut onto each screw until they are nice and tight. Tighten more with a screw driver and a wrench, holding the second nut secure.

Next, follow this same process for the power supply board. Make sure the power jack is facing the front side of the shelf.

For the last muscle sensor, insert a screw up through the bottom of the enclosure and secure with a nut. Then slide the muscle sensor down the support column and insert the screw into the sensor’s mounting hole and secure with a nut.

Check to make sure you can fit the female housing through the gap between the sensors and down into the rectangular cutout and onto the male headers of the sensor below. If the gap is too tight, remove one of the top sensors and sand one of its mounting holes on the shelf until the gap is wide enough.

For the remainder of these instructions we’re going to refer to the sensors as follows:
Sensor 1 = Closest to Power Supply
Sensor 2 = Middle
Sensor 3 = End
Sensor 4 = Bottom

USB Biofeedback Game Controller

Step 7: Connecting the power supply to the muscle sensors

By this time, your muscle sensors and power supply should be mounted and your Arduino should be in the project enclosure. Now you should be ready to start connecting everything together and setup your electrodes.

First you’ll want to give all your sensors power. Insert the plastic insert into the project enclosure and then connect each female receptacle and housing to the corresponding sensors. (Hint… the 1″ wire goes to the sensor closest to the power supply, the 2″ wire goes to the middle sensor on the insert, the 3″ wire to the last sensor on the insert, and the 4″ wire goes through the rectangular cutout to the sensor on bottom).

MAKE SURE THE CORRECT VOLTAGES ARE CONNECTED TO THE CORRESPONDING SENSOR PINS (+Vs = +5V, GND = GND, -Vs = -5V). IF NOT, YOU CAN POTENTIALLY BURN OUT YOUR SENSOR BOARD.

DOUBLE CHECK…. BETTER SAFE THAN SORRY!


About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top