Grove - GSR Sensor

GSR stands for galvanic skin response, is a method of measuring the electrical conductance of the skin. Strong emotion can cause stimulus to your sympathetic nervous system, resulting more sweat being secreted by the sweat glands. Grove - GSR allows you to spot such strong emotions by simple attaching two electrodes to two fingers on one hand. It is an interesting to create emotion related projects like sleep quality monitor.


Grove-GSR Sensor measures the resistance of the people, NOT Conductivity!


Product Version Changes Released Date
Grove - GSR_Sensor V1.0 Initial June 19, 2013
Grove - GSR_Sensor V1.2 Add C3 100nf between M324PW-TSSOP14 and GND July 31, 2014


Parameter Value/Range
Operating voltage 3.3V/5V
Sensitivity Adjustable via a potentiometer
Input Signal Resistance, NOT Conductivity
Output Signal Voltage, analog reading
Finger contact material Nickel


More details about Grove modules please refer to Grove System

Platforms Supported

Arduino Raspberry Pi BeagleBone Wio LinkIt ONE


The platforms mentioned above as supported is/are an indication of the module's hardware or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Getting Started


  • Step 1. We need to prepare the below stuffs:
Seeeduino V4.2 Base Shield Grove - GSR
enter image description here enter image description here enter image description here
Get ONE Now Get ONE Now Get ONE Now
  • Step 2. Connect the Grove-GSR to A0 on Base Shield.
  • Step 3. Plug the base Shield into Seeeduino-V4.2.
  • Step 4. Connect Seeeduino-V4.2 to PC by using a USB cable.


If we don't have a Base Shield, don't worry, the sensor can be connected to your Arduino directly. Please follow below tables to connect with Arduino.

Seeeduino Grove-GSR Sensor
GND Black
5V Red
NC White
A0 Yellow


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

void setup(){

void loop(){
  long sum=0;
  for(int i=0;i<10;i++)           //Average the 10 measurements to remove the glitch
      sum += sensorValue;
   gsr_average = sum/10;
  • 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)


Please click here to see all Grove - GSR sensor FAQs.


Tech Support

Please do not hesitate to contact techsupport@seeed.cc if you have any technical issue. Or submit the issue into our forum.