How to convert analog data in GSR SENSOR?

Hi Guys

Can anyone help me I am currently using GSR sensor it's a sensor that using two electrode and attached to finger this sensor allowing us to detect stress

I bought it and turn out the output it's analog ,Can you guys help me to convert this analog data to Resistance or microsiemens

I have seen other forums but I can't seem to understand the equation I have Vo , Vin but I don't have the Rref to convert to Rskin , please help me thank you guys


Hello dazzbones,
Welcome to the forum.

The PCB has an op-amp circuit and also a variable resistor to adjust the sensitivity, this makes the output somewhat arbitrary.

There is some information from the manufacturers at: https://wiki.seeedstudio.com/Grove-GSR_Sensor/

Thank you so much for the response john ,but this still dont answer what I am asking about how to convert the output or explaining the equation in my question

The equation provided by namhkim on that other topic is for a simple circuit comprising of a potential divider comprising of a reference resistor and the resistance of your finger.
image

The actual circuit of your sensor is much more complicated, and so that equation does not apply. (especially when there is a sensitivity control that can be set to any random/arbitrary position).

Grove - GSR_v1.2_SCH.pdf (24.0 KB)

Did you notice that it was namhkim's only ever post and that he posted it 2 years after the original question was asked?

Thank you for the response john! You're a legend

Your response really make me more understand of this sensor because I am new
to it and I thanks you for that , so the conclusion is this equation doesn't apply on GSR sensor because of the difference complexity of circuit which is include potentiometer that can setting the output , therefore I still have the problem about the output john, I am only able to convert it to Voltage and I need to convert volt to Resistance , can you help me out here john

1 Like

I've just spotted that there is a formula given in that wiki that I posted a link to in post #2

Read the instructions there on how to adjust the variable resistor, before taking a measurement.

Here's the formula they give you:

Human Resistance = ((1024+2Serial_Port_Reading) 10000)/(512-Serial_Port_Reading), unit is ohm, Serial_Port_Reading is the value display on Serial Port(between 0~1023)

I have seen this response about this equation john , what do you think about this

dazzbones,
If the variable resistor is placed in a random/arbitary position, then yes the equation is invalid.

However there is a rudimentary 'calibration procedure' detailed in the wiki that I linked to in posts #2 and #6.

From the Grove wiki website, here it is:

  • Step 1. Copy the code into Arduino IDE and upload.
const int GSR=A0;
int sensorValue=0;
int gsr_average=0;

void setup(){
  Serial.begin(9600);
}

void loop(){
  long sum=0;
  for(int i=0;i<10;i++)           //Average the 10 measurements to remove the glitch
      {
      sensorValue=analogRead(GSR);
      sum += sensorValue;
      delay(5);
      }
   gsr_average = sum/10;
   Serial.println(gsr_average);
}

  • Step 2. Do not Wear the GSR sensor.
  • Step 3. Click the Tools-> Serial Plotter from Arduino IDE
  • Step 4. Use the screw driver to adjust resistor until the serial output as 512.
  • Step 5. Wear the GSR sensor.
  • Step 6. We will see the below graph. Please deep breath and see the trends.

Human Resistance = ((1024+2*Serial_Port_Reading)*10000)/(512-Serial_Port_Reading), unit is ohm, Serial_Port_Reading is the value display on Serial Port(between 0~1023)

After performing this procedure then I believe that the equation may be correct/valid.

So I've been using the new equation and turn out the output it's minus :rofl: , but if I do the calculation with the equation the output should be 100K+ by using 400 for gsr_average
Which is common skin resistance is 100k ohm , maybe I should adjust the potentiometer if It didn't work idk what else could work

Where does a resistor need to be added? I am new in this domain and want to callibrate Grove GSR sensor V1.2.

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