Read EMG sensor values

Hi, I need help
I’m using a muscle sensor and have correctly set up all the hardware with the Arduino Uno. However, when I open the serial monitor or the serial plotter, I always get a value around 12 even if I contract the targeted muscle where the electrodes are placed. What could be causing this unexpected behavior?

The code, the sensor or wiring could be a problem.

For informed help, please read and follow the instructions in the "How to get the best out of this forum" post, linked at the head of every forum category.

1 Like

Welcome! If everything is OK and the sensor is connected properly it should work. A wiring error, bad sensor, bad code, grounding, EMI etc will cause problems. I could not see how you wired it so and the software is ok so it is a bad part. I suggest you read the forum guidelines.

I'm using the next clear code :


int sensorPin = A1;    // select the input pin for the sensor
int sensorValue = 0;

void setup() {
  pinMode(sensorPin, INPUT);
  
  Serial.begin(9600);
}

void loop() {
  // read the value from the sensor:
  sensorValue = analogRead(sensorPin);
  Serial.println(sensorValue);
}

And I'm always gettting the value arround 12

I used the following schematic
schema

Please post a close up, focused picture of your setup. Did you solder connections to the sensor and/or check the continuity of each connection?

If the wiring is correct, the EMG amplifier may be defective.

I didn't solder the connections to the sensor but only used jumpers to connect them.
I think that continuities are not the problem because when one of the three electrodes is not in contact with the skin, the value of the sensor rises to the maximum.

That is the problem.

I connected the amplifier to the Arduino with the jumpers cables like in the picture
jumper
the EMG amplifier that I used is the next
emg2

Are the header pins shown in the product photo soldered to the amplifier board?

Please post a focused, close up photo of your setup, showing the solder side of the PCB.

Use your multimeter to check for +9 and -9V at the board power inputs.

Hello sir,

We are facing the same issue. I have attached a snapshot of our circuit. Please look into it. Also, the code is written below:

int EMGPin = A0;

int EMGVal = 0;

void setup() {

Serial.begin(9600);

}

void loop() {

EMGVal = analogRead(EMGPin);

Serial.println(EMGVal);

delay(30);

}

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.