Measuring muscle activation via electric potential, referred to as electromyography (EMG) , has traditionally been used for medical research and diagnosis of neuromuscular disorders. However, with the advent of ever shrinking yet more powerful microcontrollers and integrated circuits, EMG circuits and sensors have found their way into prosthetics, robotics and other control systems. Yet, EMG systems remain expensive and mostly outside the grasp of modern hobbyist.

This instructable will teach you how to make your own muscle sensor / EMG circuit to incorporate into your next project. Use it to control video games, robot arms, exoskeletons, etc.

Click on the video below for a demonstrations on how to hook up and use your EMG circuit board!

You can now also purchase  EMG sensors, kits, cables and electrodes at www.AdvancerTechnologies.com!
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 culture 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

Click on the links to go to where you can buy items/order free samples.

Circuit Chips

3x TL072 IC Chip  - Free Samples
1x INA106 IC Chip  - Free Samples

Cables and Electrodes
1x EMG Cables   (set of 3)... Note: you could optionally connect the alligator clips directly to the electrodes.
3x EMG Electrodes  

2x 9V Battery
2x 9V battery clips  

• 2x 1.0 uF Tant 
• 1x 0.01 uF Ceramic Disc  
• 1x 1.0 uF Ceramic Disc   

• 3x 150 kOhm 1%  
• 2x 1 MOhm 1% 
• 2x 80.6 kOhm 1%  
• 6x 10 kOhm 1%
• 1x 100 kOhm Trimmer 
• 1x 1 kOhm 1%

• 2x 1N4148 Diode  
Jumper wires
• 3x Alligator clip cables

• 1x Oscilloscope
• 1x Multimeter
<p>How much do the meterials fot this cost in total? Is it cheaper than the pre-build myoware muscle sensors?</p>
Well it's not really apples to apples. The MyoWare sensor uses much more advanced circuitry, has built in protection against burning out the ICs, can be powered directly by an Arduino, and the embedded snaps eliminate cables. Electrode cables alone for this tutorial will cost you $5-15 depending on where you order it from. The electrical components cost about $20 from Digikey. However, it would cost you way more to build your own MyoWare than it is to purchase it. That's one reason we started selling the fully assembled versions instead of the kits with just the components packaged together... we were able to get the price of the fully assembled sensors well below the cost of the the component kits.&nbsp;<br> <br> So my two cents is... <ul> <li> <strong>If you want to explore how an EMG circuit works and intend on tweaking/playing around with the internal circuitry</strong>, then you would probably want to build your own using this tutorial. <li> <strong>If you just want a reliable sensor that requires little to no setup and you are more interested in its applications than the circuitry itself,</strong> you're much better off purchasing the MyoWare. </ul>
<p>what programs and code for arduino you used for the data acquisition and the visual representation of the emg signals?, thanks for your time and for your project (:</p>
Hi The sample code can be found on our website: http://www.advancertechnologies.com/p/muscle-sensor-v3.html
<p>Hi,</p><p>I am trying to build a human to human interface wherein i control someonelse hand movement by moving my own. Part of it requires making the EMG. I am very poor at electronics.so could you pls clarify some doubts of mine.</p><p>1)with respect to my project, i can stop before the rectification right? cause i am guessing we need the complete signal .</p><p>2)I can use any wires with alligator clips attached to the electrode patch?What exactly is the role of emg recording role.</p><p>the above qs may seem repetitive, but ill be glad if you could clear it</p>
Hi Sarega!<br> <br> 1) It depends on how you are planning to use the EMG. The rectified and integrated signal (envelope) is useful for determining the force the muscle is exerting but you lose the frequency characteristics of the raw signal. The frequency characteristics can tell you what type of muscle fibers are firing but I don't see why you wouldn't be OK using the EMG envelope. The envelope would probably be preferable because it is more easily read by a microcontroller.<br> <br> 2) Yes alligator clips will work fine. What do you mean when you say &quot;role of emg recording role&quot;? I do not understand that part of your question.<br> <br>
<p>Hi Gundanium,</p><p>and first of all thank you very much for you great tutorial!! <br>I was wondering if there are any other solutions for the power supply problem (refering to a negativ voltage-supply), as two 9V blocks are really oversized for my project..</p><p>Since i was planing to use a Arduino-Nano/node-MCU i thought of using something similiar to the LM324-IC (as recommended in this tut <a href="http://gureckislab.org/blog/?p=3027" rel="nofollow"> http://gureckislab.org/blog/?p=3027 </a> ) or a setup as described in this link:</p><p><a href="http://www.instructables.com/id/How-to-create-voltage-using-one-power-supply/" rel="nofollow">www.instructables.com/id/How-to-create-voltage-usi...</a></p><p>With the Arduino only supplying 5V i will get around -5V from both setups; will this be enough to power the system you created or will i run into problems (e.g. amplification of the signal not high enough)?! </p><p>Looking forward for a supply!</p><p>Cheers </p><p>JI</p>
Hi JI!<br><br>This is a very old tutorial and our new sensors don't require the positive/negative power supply and can be powered directly from an Arduino. http://www.advancertechnologies.com/p/shop_3.html<br><br>Setup 1: Voltage inverter<br>The INA106 and TL072 chips need a minimum of +/-5V so you should be fine using an inverter powered via an Arduino 5V supply.<br><br>Setup 2: Voltage divider<br>If you want to use the schematic/chips from this tutorial and a voltage divider, you're going to need at least a 10V power supply to get the minimum required voltage. The INA106 and TL072 chips need a minimum of +/-5V so you can't use a single 9V battery and a voltage divider to do this. <br><br>Setup 3: Use Muscle Sensor v3 schematic<br>You could also build your circuit using our Muscle Sensor v3 schematic. While it is still an older design than the MyoWare, the minimum power supply is +/-3.5V so you would easily be able to make a +/-4.5V supply using a single 9V battery and a voltage divider.
Wanted to know why you used an inverting op amp in step 4 instead of a non inverting one, as well as why you used an inverting lpf instead of a non inverting one?
<p>Please ,I wanna to test the sensor using PC is there any programs I could get </p><p>Thanks again </p>
<p>sir why my sensor value on serial monitor arduino not changed? i dnt know what should i do to fix that ? change position of electrode not effect for me, before electrode i use, sensor value is 150-160, if i place on my muscle just got 180 and not change anymore. </p>
<p>why did we use the 1Mohm resistances, c1 and c2 capacitors and full wave rectifier? I tried to take EMG with INA125 in another circuit without use this parts and it worked(I used only high and low filters). so what is the their profit if i use them too in the circuit?</p>
The full wave rectifier plus the integration circuit is what produce the EMG envelope. If you want the RAW EMG signal you really just need the first phase of this circuit like you said.
<p>Hello</p><p>It's amazing what you done </p><p>It's open the way to alot of projects to be established</p><p>Thanks alot for you and your team</p><p>By the way</p><p>Please, I want the circuit if I used the ad620 instead of ina106</p><p>Cause I haven't any about electronics and I can't find ina106 in my country</p><p>Thanks alot again .</p>
<p>Hi, I would encourage you to try to figure this out on your own first. It shouldn't be too difficult to puzzle out if you read through the AD620 datasheet.</p>
It's complicated :(<br>i haven't any knowledge
<p>the legs are <a href="https://www.google.com.eg/search?q=different&spell=1&sa=X&ved=0ahUKEwjw17i7k8PMAhVIGZoKHdLnC3kQvwUIGCgA" rel="nofollow"><strong><em>different<br><br></em></strong></a></p>
<p>i figured it out bro</p><p>i think this is right </p><p>i am probably wrong</p>
<p>this is what i have done with the AD620 ic</p>
<p>Legs are different but it shouldn't take a rocket scientist to figure out which pins to connect to which legs on the new chip. I'm confident you can figure this one out without my help.</p>
which software?
<p>hi i really appreciate your job. i build sensor and everythings works fine, but i need raw emg signal. i can't see negative portion of signal. Recently i find out that you build sensor with raw signal option. However i would like to finish my job:)</p><p>i saw that you write that is needed to add DC offset, i m not sure how to change project to obtain such result. I'm not very good at electronics but i need this sensor for bigger project, so sorry if it's some trivial job:)</p>
<p>Thanks for showing us how to build an emg, I tried to buy INA106 but as many others, it isn&acute;t available in my country, instead I bought INA126. Do you think it is a good replacement? I already saw both datasheets and the internal resistances in both IC are quite different....</p>
<p>i tried to do as u said but i was not able to make head or tail of it</p>
<p>i have built thid circuit, but i have a problme that the signal it simulate are too small is there any other way to get the signal to be biggger, can i change the low pass filter into a high pass filter?</p>
Depends on what you mean by &quot;too small&quot;. The signal should be able to get up to +9V if you adjust the potentiometer. If you are seeing &lt;2V signals, then there's probably something wrong with the way you built the circuit or your setup in general.
<p>thank you.. </p>
<p>kindly suggest alternate of <a href="http://focus.ti.com/docs/prod/folders/print/ina106.html" rel="nofollow">INA106 IC Chip.???. can i used op amp 741? will it work<br></a></p>
<p>Many have already been suggested in previous comments.</p>
<p>is micro controller is necessary? </p>
The output signal is an analog signal so you need some method to convert it to a digital signal unless you don't plan on interfacing with anything digital (computer, microcontroller, etc). A microcontroller, ADC, DAQ are just a few ways to convert an analog signal to a digital signal.
I haven't study microcontroller, I just want to show my emg signal on oscilloscope directly through circuit... should this circuit works for this
Yes, an oscilloscope will work with this circuit.
<p>hey, nice work. I just wanna know that I am using LM358 instead of TL072 and output i am getting is any random number even if I don't do anything. So i should use TL072 only for this or the problem is something else.</p>
<p>Most general op amps can be used instead of the TL072. Your issues probably lie elsewhere.</p>
Yup I got that as I tried it with TL072 but still I am getting any random number as my output! Thank you for the reply :)
<p>Sir,</p><p>Is the circuit going to work if I change the cut off frequencies of the HPF and the LPF to 20Hz and 150Hz respectively? I need the circuit to pick up signals only for muscle activity in fingers, which the doctors say, lies in the above specified range.</p>
The circuit works for fingers as is. If you want to add more filtering, I would recommend adding it prior to the rectification phase. I would not recommend modifying the LPF frequency as it is acting as an integration circuit not a LPF.
<p>Hi <a href="http://www.instructables.com/member/Gundanium" rel="nofollow">Gundanium</a> , the connection of pins are different ( not same ) in bread board and circuit diagram , which one is true ? </p><p>can i use INA128 in place of INA106 ? </p>
Which pins are you referring to?
please tell me , which one is correct ( Step 11: Connecting to a Microcontroller ) OR ( Step 13: EMG Circuit Schematic )<br><br>can i connect my circuit according to Step 11 ?
<p>I don't understand your question. Step 13 and 11 are the same just represented in a different format.</p>
<p> hi, can you please mail layout of the board (with Proteus), to fadwa.lasswed@gmail.com</p>
<p>Sorry but we don't publish our PCB layouts.</p>
<p>Can you please mail PCB layout of the board, to rovardeakr@gmail.com.</p><p>What is special about EMG electrodes and cables?I find them very costly.</p><p>Is there any cheaper way to replace these electrodes and cables.</p><p>Where can I get AD8226 IC from? </p><p>Thanks alot. Excellent Tutorial. </p>
<p>Sorry but we don't publish our PCB layouts.</p>
<p>I will be needing more than 3 electrodes in my system. So naturally I will be needing more than 1 INA106. But it is exceeding my budget. So i wanted to know if there's a cheaper alternative to the INA106 IC?</p>

About This Instructable




Bio: Brian Kaminski Owner - Advancer Technologies Brian graduated from North Carolina State University with a BS in Biomedical Engineering with a concentration in Biomechanics in May ... More »
More by Gundanium:Bionic Wolverine Claws Bionic Iron Man Glove Bionic Iron Man Armor (w/ Sound Effects) 
Add instructable to: