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% (Note: You don't need exactly 80.6k resistors. Anything around 80k should suffice. Our MyoWare sensor uses 82k resistors for example.)

• 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>hello sir </p><p>can i use electrolyte 1 uf 50v capacitor instead of tantalum and ceramic disk capacitor because in our country 1 uf tantalum and ceramic disk capacitor are not available.plz sir reply me fast</p>
<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>And u used 1uF and 80.6k .l calculated f is 1.9746Hz but its must be 10-500Hz low-hıgh past filter isnt it ? why did u use 1uf and 80.6k ?</p>
<p>You're looking at this from the wrong angle. The 10-500Hz range applies to the raw EMG signal not a rectified signal. This &quot;filter&quot; is actually a simple integration circuit. This is what converts the rectified EMG to the EMG envelope.</p>
<p>ok Thank u very much.</p>
<p>can i Build Electrooculography (EOG) sensor using this circuit</p>
<p>Hello </p><p>What is the total gain ? and I want to use +-12V is there any problem ?</p><p>Thank u</p>
<p>Sir, can i use 1uf 63v electrolytic capacitor in place of the 1uf 50v <br>ceramic capacitor? If yes then how will i know which terminal needs to <br>be connected to which pin?</p>
<p>Thanks a lot for the tutorial. Was able to <br>make this and the output is pretty much same as myoware sensor kit. In <br>India it cost me about 2K. The output voltage to uC is still about 3.8V <br>but adjusting the input voltage takes care of it. I suggest adding a <br>trimmer with your batteries to get the +/- voltage and start with a low <br>voltage (like 10V instead of 18) since it makes it a lot safer with <br>these expensive parts. (Check bottom part of circuit in attached image)</p><p>Nice instructions.</p>
<p>Hey bro from where did you ordered the 80.6k ohm resistor? i couldn't find them anywhere</p>
<p>If you are in India, digikey might not help. I used kitsnspares.com for most of the stuff. However there are few components like 80.6k resistor which are not available anywhere for retail. So i had to order them directly from element14 (kitsnspares' parent site). I ordered 50 pieces (that was the minimum for wholesale order).</p>
<p>I should mention that you don't need exactly 80.6k resistors. Anything around 80k should suffice. The MyoWare uses 82k resistors for example.</p>
<p>sir can i use 1uf 63v electrolytic capacitor in place of the 1uf 50v ceramic capacitor? If yes then how will i know which terminal needs to be connected to which pin?</p>
<p>Good to know that the 82k will work since i have already ordered them. Desperately waiting for the components to come. Thanks again Sir.</p>
I see. in that case you have plenty of options like digibay, robokart or kits spares. there are many other sites from where you can get standard resistors.
<p>i have ordered all the components from the site electronicscomp.com. They have cash on delivery option too. Only the things that i couldn't find there was the 80.6k resistor and the EMG cables and the electrodes. So i had to compensate the 80.6k with the 82k resistor and i am still searching for the EEG/EMG lead cables since they are very less prone to noise compared to the simple copper ones. So did you used the EMG/EEG lead wires or just directly the copper wire attached to an alligator clip?</p>
<p>I am using alligator cables directly connected to electrodes on one end and circuit on the other. </p>
There's links for each component in the Materials section. Digikey is usually our go to vendor for components like that.
<p>What is so special about the INA106 IC than the other class of differential amplifier? Is it because of its high gain of 110? Or is there any other reason? </p>
<p>Hi Gundanium,</p><p>I am facing 2 issues with my output voltage.</p><p>1. The minimum voltage (output at 0 muscle exertion) at uC end is going to 1.25V. I think this is due to some mismatch on the circuit but i ma not sure what. Increasing the potentiometer gain makes this go higher and decreasing it makes it go lower. Of course decreasing the gain to solve this problem is not an option. I was thinking of using a voltage shifter however it will only be a hack. I am not sure why this problem is happening.</p><p>2. The maximum voltage at output is saturated at 3.75V. Irrespective of how much gain i increase, the output never goes above 3.75V. I think this is happening due to my supply voltage. Earlier i was using +/-9V directly from battery and output sometimes went over 5V. Today i switched to +/-5V and have been facing this issue ever since.</p><p>I am using a basic op-amp inverter using TL072 and 5V supply from arduino to get +/-5V. I checked through multimeter, my input voltages are steady at +/- 4.88V.</p><p>I see that myoware sensor only requires a 5V supply from arduino and still achieves about 0.2V to 4.8V output. Have you faced these problems before ? Is there something i am missing ? Anything you would suggest to read ?</p><p>Thanks<br></p>
<p>Sir its really damn important. I am building a prosthetic arm as my <br>final year engineering project. I am using this muscle sensor to do it <br>but i have some confusion. </p><p>First one is- In one of your earlier <br>version of the muscle sensor you had used 453k resistor in between pin 1<br> and pin 2 instead of the 150k in case of chip B. Sir, what difference <br>did it make by updating it with a 150k resistor?</p><p>Second one is- <br>In the earlier version you had used a 10k resistor instead of the 1k,why<br> is that? What are the complications that you observed in the earlier <br>version?<br></p>
Hi, I'm a little confused as to which version you're using and what you mean by &quot;earlier version&quot;. The version in this Instructable was our very first version.
<p>actually i found a pdf file same as this- here's the link., maybe someone has manipulated with it -</p><p><a href="https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&cad=rja&uact=8&ved=0ahUKEwitjZS_7_HRAhUDgI8KHZ4ECl4QFggrMAM&url=https%3A%2F%2Fgypsyware.files.wordpress.com%2F2013%2F03%2Fmuscle-emg-sensor-for-a-microcontroller.pdf&usg=AFQjCNH0UDKYq_dUcnl6lg8i1QgcemIE5w&sig2=4ytQYfH2pKPClZVIHNljwA" rel="nofollow">https://www.google.co.in/url?sa=t&amp;rct=j&amp;q=&amp;esrc=s&amp;...</a></p><p></p>
<p>Hmm I think we modified the instructions shortly after it was published to consolidate parts (we used to sell a kit for this tutorial). The change from the 453k resistor to 150k resistor changed the gain of that phase from around -3 (453/150=3.02) to -1 (150/150=1). All this difference could be compensated for in the last gain stage but was beneficial because it eliminated 1 part from the BOM.</p>
<p>Thanks Sir,its quite a relief knowing the reason.</p>
<p>Hi, Gundanium! First of all, thank's a lot for this tutorial! My output looks like 0.62, 0.0, 0.0, 0.63, 0.61, 0.0... etc. So... it's clear that I missed something. I don't have tantalum capacitors. They're pretty hard to find. Are they so important to the circuit? Can they change the output values? Thanks for your time!</p>
<p>Ceramic capacitors work just as well as the tantalum. The uF value is important though.</p>
<p>is it possible to use it with a raspberry pi?</p>
<p>Raspberry Pi's don't have analog input pins. I could be wrong about that though. If they do, then this will work.</p>
<p>Does the circuit that filter out the 60Hz/50Hz noise? If so, which portion of the circuit does that?</p><p>From what I understand, there will be an ambient wall outlet noise, due to electromagnetic fields, even if the circuit is powered from a battery</p>
The 60/50 Hz noise gets removed by the high common mode rejection ratio (CMRR) of the instrumentation amplifier. A high CMRR basically removes all signals common to both input lines. This is why braiding the cables is very important; it ensures the 60/50 Hz noise is in the same phase across both input lines.
<p>Hi!</p><p>What apps did you use for mac?</p>
www.processing.org<br><br>You can find the code we used on our Git Hub repository https://github.com/AdvancerTechnologies/MyoWare_MuscleSensor/tree/master/Example%20Code/BarGraph
<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>
<p>Hi, Can you share your work till now as how you are doing this?</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, im working with the INA106U wich is a SOIC size, so i solder it on an adapter and the plug it in the circuito, my question is, how can i know if i burned it? or damage it, etc, my final voltage is around 7.5 ~ 7.7v, </p><p>Using an O-scope is the only way to know this?</p><p>Thanks and awesome job man</p>
<p>Hi Gundanium,<br></p><p>I am in the middle of making this circuit. I have<br> just made Stage 1 (Differential amplification using INA106) and Stage 2<br> (15x amplification WITHOUT AC coupling). I tried analyzing the output <br>of these stages using oscilloscope.</p><p>I am seeing that <br>stage 2 output is going to about +-9V. It's like a square wave with some<br> distortion. I am unable to understand this output. As per my <br>understanding, the max output should go to 750mV (muscle output is +-5mV<br> and total amplification in circuit is 150x).<br></p><p>Is <br>the circuit / chip flawed or will AC coupling or the next stages bring <br>the output down ? Do you know what should the output of this stage look <br>like ?</p><p>Thanks</p>
<p>Hey Gundanium, thanks for the amazing DIY.</p><p>I could not find any 1uF Tantalum or 1uF Ceramic Capacitors, my question is pretty dumb, i`m a newbie.</p><p>So could i use 1uF Electrolytic capacitors instead of the Tantalum and Ceramic Capacitors in this circuit ?</p>
<p>Hi i am using IC 741 instead of INA 106. Where do i connect the reference electrode to the circuit. since there is no ground in the circuit.</p>
<p>This is something you're going to have to figure out yourself. Good luck!</p>
<p>hello sir, thank you so much for this tutorial....if we use 6 mid muscle sensors with a mux...the muscle end and body reference sensors will be common to single o/p of mux is this idea works??</p>
<p>Are you trying to measure 6 different muscles with 1 circuit and a mux? It's hard to follow what you're proposing to do. If you are indeed trying this, then my recommended approach would be to put the mux between the signal acquisition phase (step 3) and the Signal Conditioning - Amplification phase (step 4) and you will need a signal acquisition phase for each muscle. The reason for this is that your skin has an extremely high impedance and will cause ghosting effects (aka a trace of the previous input will appear when you switch the mux inputs). The opamp of the signal acquisition phase will act as an impedance buffer and eliminate all ghosting effects.</p>
<p>is it ok sir??</p>
<p>and can u please tell me how much amount of i/p power is required for that??</p><p>like 4 batteries are enough?</p>
<p>can i remove R3 10k? due to internal impedance present in mux?</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: