Posts with «polygraph» label

Little Lie Detector is Probably No Worse Than The Big Ones

Want to know if somebody is lying? It’s always so hard to tell. [dbmaking] has whipped up a fun little polygraph, otherwise known as a lie detector. It’s nowhere near as complex as the ones you’ve seen on TV, but it might be just as good when it comes to finding the truth.

The project keeps things simple by focusing on two major biometric readouts — heart rate and skin conductivity. When it comes to the beating heart, [dbmaking] went hardcore and chose an AD8232 ECG device, rather than relying on the crutch that is pulse oximetry. It picks up heart signals via three leads that are just like those they stick on you in the emergency room. Skin conductivity is measured with a pair of electrodes that attach to the fingers with Velcro straps. The readings from these inputs are measured and then used to determine truth or a lie if their values cross a certain threshold. Presumably, if you’re sweating a lot and your heart is beating like crazy, you’re telling a lie. After all, we know Olympic sprinters never tell the truth immediately after a run.

Does this work as an actual, viable lie detector? No, not really. But that’s not just because this device isn’t sophisticated enough; commercial polygraph systems have been widely discredited anyway. There simply isn’t an easy way to correlate sweating to lying, as much as TV has told us the opposite. Consider it a fun toy or prop to play with, and a great way to learn about working with microcontrollers and biometric sensors.

“The Arduino lie detector determined that was a lie”

Want to know if someone is telling you the truth? Well, unfortunately Juan Gg’s “USB Polygraph” isn’t a professional product and won’t actually give you an answer. However, it is a neat exploration into biometrics that incorporates Arduino, some sensors, and data visualization.

The DIY lie detector does measure one’s galvanic skin response, pulse, and breathing, so it’s an interesting way to observe “suspects” when questioned. Perhaps one could even use it to monitor a person’s vitals when performing various physical activities.

The device collects sensor readings via an Arduino Uno. These are then passed along to a nearby computer over serial, which graphs everything using a custom Python program. 

If you’d like to make your own, code and mechanical files are available on GitHub!

This is a USB Polygraph, which I designed and built as a classroom project on June 2018. The hardware side is pretty simple, an Arduino UNO collects data from some sensors and sends it via serial. On the computer, a Python program takes that data and not only graphs it, but it also allows the user to save it, manages questions and adds question and answer markers to the graphs so results can later be inspected. All results are saved in .txt files.

Arduino Blog 28 Jan 15:30

Arduino Polygraph Shows How It’s Done

Sometimes, a project comes along that makes a good reference design for anyone doing similar work. In this particular case, it’s a DIY USB polygraph-like machine by [Juangg] using an Arduino and sensors on the hardware side, and a Python front end for data visualization. It’s even complete with 3D printed enclosure and sensor elements.

[Juangg] designed it to use three sensors: a pulse sensor, a breath sensor, and one to measure Galvanic Skin Response (GSR). The pulse sensor uses a piezo element pressed against a fingertip to detect changes in pressure resulting from blood flow. It can be picky about placement, but finding sweet spot can yield remarkably good readings. The breath sensor works on a similar principle but uses a 3D printed fixture to hold the sensor between a strap and the subject’s chest, so that breathing in and out can be detected. The GSR sensor is a voltage divider used to measure small changes in skin conductivity. How well does it all work? That depends on what one is looking to get out of it, but the documentation and design files are available from the project page and the GitHub repository if anyone wants a reference for similar work.

The polygraph may have a mixed reputation, but it makes a good project that demonstrates just how messy biometrics can be from an engineering perspective. And in case you missed it, here’s a reminder that Wonder Woman and the polygraph have much more in common than you might realize.

Arduino Detects Pants on Fire

Hard as it is to imagine, lie detectors have been sold as children’s toys for a number of years. A simple battery-operated device clipped to your fingers and would show the conductivity of your skin. The concept — which is probably not very reliable — observers that lying causes you to imperceptibly sweat which causes a sudden increase in your skin’s conductivity. These cheap toys would have a meter and you’d note the meter deflection to determine if the subject was lying.

You can debate the amusement value of interrogating your friends, perhaps, but they were pretty common and still exist (including some that shock you if they detect you are lying). Seventeen-year-old [BuildIt] has his own modern take on this classic device using — what else? — an Arduino. You can see a video of the device below.

Of interest is how he used the latest version of the Arduino IDE to visualize the data graphically (see right). This is easier than interpreting a bunch of numbers scrolling by on the serial terminal or having to import the data into a spreadsheet. You can find the graph under the Tools menu listed as Serial Plotter.

You don’t need a lot of external parts for this project, although the finger clips and the cardboard box will take a little mechanical skill to complete.

We’ve looked at galvanic skin response and other biosignal processing before. You can do a lot more if you build a little more hardware.


Filed under: Arduino Hacks, Medical hacks