Skip to content

A simple Arduino-based lie detector using skin conductivity (GSR). It calibrates a baseline, then lights LEDs based on deviations. Real-time data is plotted via the Serial Plotter. Great for learning about biofeedback and signal thresholds.

License

Notifications You must be signed in to change notification settings

David-mtcc/Arduino_Lie_detector

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

🧠 Arduino Lie Detector (Skin Conductivity / GSR)

This is a simple Arduino-based lie detector prototype using Galvanic Skin Response (GSR) to measure changes in skin conductivity.

During the first 5 seconds, the system calibrates a baseline (skinConductivity). It then compares real-time readings to detect deviations, which are visualized through LEDs and plotted in real time.

🔧 Features

  • Automatic 5-second calibration at startup
  • LED feedback:
    • 🟢 Green LED → Conductivity below threshold (low stress)
    • 🟡 Yellow LED → Moderate increase (+10%)
    • 🔴 Red LED → High increase (+20%)
  • Serial Plotter visualization with 4 signals:
    • Baseline
    • Baseline + 10% (tolerance)
    • Baseline + 20%
    • Real-time A0 reading

🧪 How It Works

  1. Two electrodes are placed on the skin (e.g., fingers).
  2. Arduino reads analog values from pin A0.
  3. A baseline is computed as the average of 250 samples taken during the first 5 seconds.
  4. The current reading is compared to this baseline:
    • If over +20% → Red LED ON
    • If over +10% → Yellow LED ON
    • If below +10% → Green LED ON

🖥️ Serial Plotter Output

Every cycle, the following values are sent (tab-separated):

  1. skinConductivity (baseline)
  2. skinConductivity + tolerance (10% above)
  3. skinConductivity + 2 * tolerance (20% above)
  4. value (real-time A0 reading)

This allows you to track the skin response over time via Arduino’s Serial Plotter.

🧰 Hardware Requirements

  • Arduino Uno (or compatible board)
  • 3 LEDs (Green, Yellow, Red) + resistors
  • 3x 220Ω resistors
  • 1x 1MΩ resistor
  • Breadboard + jumper wires
  • 1 human finger

📷 Preview

image

⚠️ Disclaimer

This project is for educational and experimental purposes only. GSR is not a reliable lie detector but can demonstrate physiological changes.

📄 License

GNU License

About

A simple Arduino-based lie detector using skin conductivity (GSR). It calibrates a baseline, then lights LEDs based on deviations. Real-time data is plotted via the Serial Plotter. Great for learning about biofeedback and signal thresholds.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages