element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Community Hub
Community Hub
Member Blogs Ouch! Sensing Galvanic Skin Response (GSR)
  • Blog
  • Forum
  • Documents
  • Quiz
  • Events
  • Leaderboard
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Community Hub to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: fustini
  • Date Created: 8 May 2011 2:48 PM Date Created
  • Views 10017 views
  • Likes 3 likes
  • Comments 11 comments
  • hackerspace
  • maker
  • galvanic
  • body
  • education
  • pumpingstationone
  • hackerspaces
  • ps1
  • make
  • diy
  • gsr
  • chicago
  • schools
  • gghc
  • biology
  • response
  • arduino
  • psone
  • skin
Related
Recommended

Ouch! Sensing Galvanic Skin Response (GSR)

fustini
fustini
8 May 2011

Howdy,

 

The primary sensor I've been prototyping for the Pumping Station: One Biosensor Array is the galvanic skin response, or GSR, sensor.  GSR is a measurement of the electrical conductance of the skin.  Sweating causes changes in the conductance, which offers an indication of emotional excitement, because the sweat glands are controlled by the sympathetic nervous system.  GSR does not offer a fine grained indication of emotion, since it does not distinguish between the many different emotions which elicit a change in skin conductance.

 

image

     GSR graphed on SparkFun LCD shield

 

If you have a multimeter on hand, then you can measure the resistance between two fingers by pressing one probe against each finger.  The range for the resistance of skin is typically 50k to 10M Ohm (per Sean Montgomery).  Skin conductance is the reciprocal of that resistance.  Thus 50k Ohm is 20 uS (micro Siemens, not Seconds) and 10M Ohm is 0.1 uS.  To summarize, skin conductance is inversely proportional to skin resistance.

 

However, if one just looks at their skin resistance on a DMM, then it will be very difficult to determine when their skin is responding to emotional changes.  Thus, a circuit is required which produces an output voltage proportional to the change in skin resistance.  The circuit needs to filter out noise and amplify the GSR signal.  This output voltage can then read  by any microcontroller (an Arduino for this project) and graphed over time in software.

 

I tried many different approaches when prototyping GSR, but I found a modified version of the Truth Meter circuit by Sean Montgomery worked the best for our application:

 

image

 

Sean built this circuit so that no microcontroller is needed as it employs both a low & high pass filter to create a 0.5 Hz to 5 Hz band pass which works well for GSR since it is a slow 1 to 2 Hz signal.  The low-pass filter cuts off high frequency noise above 5 Hz such as 60 Hz noise from AC power.  The high-pass filter cuts off frequencies below 0.5 Hz, or 2 seconds.

 

image

Truth Meter uses a 9V for power and an LED for output. The brightness correlates to the GSR magnitude. (Photo by Jordan Bunker)

 

In effect, the high-pass filtering subtracts the baseline average skin resistance leaving the only change in skin resistance within the 1-2 second range of GSR.  The result is that the GSR sensor is able to auto-calibrate for each user regardless of the the baseline skin resistance.  Essentially, the Truth Meter circuit produces just the GSR events, or spikes, where an emotional response occurred which is illustrated by this graph on Sean's website:

 

image

 

Sean's Truth Meter circuit worked really well for our project as the voltage output of the circuit is already filtered and can be simply read by disconnecting the LED and instead connecting the output resistor to the Arduino via an analog input.  The complexity of the Arduino code is reduced as no additional filtering needs to be done in software.

 

image

Biosensor GSR circuit prototype based on the Truth Meter connected to Arduino analog input.

 

Arduinoscope, a Processing sketch, is running and graphing the output the Arduino is sending via serial link over USB.  The spike pictured below is the result of me poking myself in the leg with the leads of an LED to illicit pain:

image

I found slapping myself also worked well too:

image

 

Safety Tip:

As an aside, always have your laptop unplugged from AC power when doing biosensing prototyping.  First and most important reason is safety.  Second reason is that the analog inputs will have 60 Hz noise imposed on their waveforms.  I found this to to be the case even with the bandpass filter in the GSR circuit.  The above screenshot was taken when the laptop was plugged in AC and the waveform looked much smoother when laptop is running off battery.  For our actual biosensor array, a Bluetooth module & 6xAA batteries are used so that there is no connection to laptop or AC power.

 

After prototyping on breadboard with good results, I made the Biosensor Array GSR shield which is pictured below.  It is stackable with the ECG shield and has header for the BlueSMiRF bluetooth module.  It is essentially the Truth Meter circuit but with pots for the important resistors to enable maximum calibration by the user: 1MOhm (skin voltage divider), 10kOhm (non-inverting reference voltage divider, substituted for the diodes) and 100kOhm (gain of final op-amp):

image

These simple finger straps below connect to header on the GSR shield and are extended for actual usage by our biosensor array cabling system.  Based on the Truth Meter instructions, I built the straps from copper foil & velcro tape I got at Jo-Ann Fabrics.  After building several pairs, I went out and got some stranded wire as it makes a much better solder joint than solid core wire on the copper foil.  Also, I made sure to use lead-free solder as the solder joints are in direct contact with fingers during usage.

image

And finally, if your interested in building your own Truth Meter, the circuit is featured in Make Magazine Vol 26 (Spring 2011) in the "Biosensing" article by Ira M. Laefsky & Sean M. Montgomery:

  • Make Magazine: The Truth Meter  
    • http://makeprojects.com/Project/The-Truth-Meter/703/1

 

  • MakerShed Truth Meter kit:  
    • http://blog.makezine.com/archive/2011/04/new-in-the-maker-shed-galvanic-skin-response-kit.html

 

  • Truth Meter kit assembly & usage video by Make:
You don't have permission to edit metadata of this video.
Edit media
x
image
Upload Preview
image

 

     

     

    In my next blog post, I will share the other circuits I prototyped and challenges encountered along with how I plan to improve the GSR sensor in the future, like refining the LCD display:

     

    image

     

     

    Cheers,

    Drew

    http://twitter.com/pdp7

    • Sign in to reply
    • richiet96
      richiet96 over 8 years ago in reply to DAB

      Alright. I'll give it a go. image

      • Cancel
      • Vote Up 0 Vote Down
      • Sign in to reply
      • More
      • Cancel
    • DAB
      DAB over 8 years ago in reply to richiet96

      Try aluminum foil.

       

      It is not as conductive, but if you play with the gain, it should make an inexpensive alternative.

       

      DAB

      • Cancel
      • Vote Up 0 Vote Down
      • Sign in to reply
      • More
      • Cancel
    • richiet96
      richiet96 over 8 years ago

      Hey! I'm building this circuit as a part of a project and I'd like to know if the copper foil is a must for the sensors. If it is, it'd be nice to know why and if it isn't, what are the substitutes?
      I'm having some trouble finding copper/ brass foil in my locality.

      Thanks!

      • Cancel
      • Vote Up 0 Vote Down
      • Sign in to reply
      • More
      • Cancel
    • clem57
      clem57 over 9 years ago in reply to Former Member

      Amazon.com: Basic GSR2 Biofeedback Relaxation System THE NEW ONE with CD!: Health & Personal Care

      • Cancel
      • Vote Up 0 Vote Down
      • Sign in to reply
      • More
      • Cancel
    • Former Member
      Former Member over 9 years ago

      Hello. How can I get a GSR?

      • Cancel
      • Vote Up 0 Vote Down
      • Sign in to reply
      • More
      • Cancel
    >
    element14 Community

    element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

    • Members
    • Learn
    • Technologies
    • Challenges & Projects
    • Products
    • Store
    • About Us
    • Feedback & Support
    • FAQs
    • Terms of Use
    • Privacy Policy
    • Legal and Copyright Notices
    • Sitemap
    • Cookies

    An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

    Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

    ICP 备案号 10220084.

    Follow element14

    • X
    • Facebook
    • linkedin
    • YouTube