Showing results for 
Search instead for 
Did you mean: 

want to know how to read EMG signal from Arduino UNO without the help of a DAQ


This is the first time i am working with Labview. I just wanted to know how i can read an EMG signal from my Arduino UNO without the help of a DAQ. Do i have to record a signal first or will i be able to read it in real time. Basically what i am trying to do is to control servos (Robotic arm) in real time using EMG signals. If any of you know of any forum from where i can get help, please do post it here.




0 Kudos
Message 1 of 11

EMG signals are typically low-level, so you'd need some kind of amplifier to get it to a level the UNO can use. Unless you have an EMG sensor that has a pre-amp built in. As for getting the Arduino to read it, I'm not sure if you're doing that directly, or are you trying to use the Arduino Toolkit?


As for real-time, that's not going to happen unless you're running this on a real-time OS. You did not indicate what platform you are using, but if it's Windows, that's not real-time.

0 Kudos
Message 2 of 11

i am using the arduino to transfer the signal to the computer.

No i am not using an arduino toolKit.

I am using a Windows 7 platform, 

sorry i meant real time control of the robotic arm using EMG signals, 

what i am planning to do is process these EMG signals and then send it to a robotic arm 

0 Kudos
Message 3 of 11

What do you mean/intend by using the Arduino to transfer the signal to the computer? Transfer how? Presumably you are referring to using the A/D inputs of the Arduino. Have you verified that the signal level is compatible with the A/D inputs?

0 Kudos
Message 4 of 11

the arduino is connected to the pc via a usb port, what i am trying to do is acquire the emg signal in labview so that i can process it. 


i dont understand your second question, as in what do i verify with what? .


thanks for your patience

0 Kudos
Message 5 of 11

yes it is compatible with the inputs

0 Kudos
Message 6 of 11

I don't think you understand what I mean in terms of the signal level. The Arduino has A/D inputs. Those A/D inputs are 5 Volts, and have 10-bit resolution. This means that each step is about 5 mV. If your signal level is low, then your dynamic range will be very very small (which is not good). An EMG signal is a low-level signal. Thus, if you were to connect an EMG signal directly to the A/D inputs, you would not be able to read it accurately. That is why you need to amplify the signal. Are you doing that? Or does the EMG signal have a pre-amp built in?


As for the communication, the Arduino has a serial port, so you can read/write stuff over the serial port. Obviously, you'd need to write code to run on the Arduino, but that's outside the scope of this forum.

0 Kudos
Message 7 of 11

yes  my signal is going first into a different circuit which gives me the amplifed and filtered signal this signal is then sent to the arduino uno but from here i am stuck, i dont know how to read this signal in Labview.


i am aware of the serial port of the arduino uno, but how do i sent the EMG signal to Labview or rather what do i use in labview so that i can read the signal and analyse it.


does NI have any other forum which lets me ask questions or doubts regarding the code i write



0 Kudos
Message 8 of 11

I would suggest starting by getting the Arduino Toolkit for LabVIEW (I mentioned it in my earlier response). It's free, and it allow you to access the analog inputs on the Arduino. It also comes with a sketch that you can program into the Arduino.

0 Kudos
Message 9 of 11



I am intending to do samething.I want to acquire 4 channel emg signals to PC(LabVIEW) using arduino UNO.I am using following circuit for acquisition of EMG.


>Can i give output of this amplified signal directly to arduino UNO analog i/p pins?


>I need to transmit data to LabVIEW by VISA-Arduino toolkit by USB interface between PC-Arduino UNO.Do I need to configure arduino for serial transmission.













0 Kudos
Message 10 of 11