Go Down

Topic: Conductive Paint Touch Sensor and CapSense Library (Read 382 times) previous topic - next topic



I'm not sure if this question is posted in the right place or not, but here goes.

I have a project where I am using conductive paint as touch sensors using the CapSense library.  I have 4 sensors, each connected with a 1MegOhm Resistor and sense pin each.  I am not sharing a single sense pin.

It works OK for a while, but then after a while the sensors show a steady reading as though they are being touched even though they are not being touched.

I have tried turning auto calibrate off, and manually calibrating periodically, I've also tried adjusting the auto calibrate frequency.  But, nothing seems to change this.

I don't have a ground anywhere near the sensors, and the arduino Uno is grounded via the power jack.

Do I need a ground on the surface near the sensor to make this get steady readings?

What I'm trying to accomplish is for the arduino to check for all four sensors to be touched at the same time, and then to flip a relay.

Maybe there's some other sensor better suited to the purpose?

Thanks in advance for your thoughts.


What material are putting the paint on? How are making the electrical contact with the paint? Which conductive paint are you using? Have you tried repainting the area?



Hi Paul,

The paint I'm using is very simple.  It's off the shelf acrylic paint(black), with powdered graphite mixed in.  This paint is applied to a faux wall panel made of foam.  The connection is via a hole that I drilled through the foam and then inserted a coiled copper wire into.  The paint is applied into various shapes on top and fills in the hole where the wire is to make good contact..

I spent some time this weekend adding some indicator leds to the four sensors, as well as adding a ground lead to the arduino via one of the holes from where the old power jack was.  So, now I have a ground and positive going to the panel mount barrel connector, and another ground coming out to a small screw(stud) which goes through the panel as well.  My plan is to ground out the arduino to a water pipe or other suitable ground.  From what I've read grounding the arduino is important for capacitive sensing.



Hi, Dave.
I had to go read what "CapSense library" had for documentation. I see no mention of how they avoid creating an antenna that will pick up all kinds of signals, particularly 60 cycle AC from building power wiring. Any thoughts?



Heh Heh, no you're absolutely right, and many things that I've read say that Capacitive sensing in this way is not reliable, over longish distances.

I have read about shielding the wires leading to the sensors as a way to mitigate any stray capacitance/signals, but that's a non-starter for me.  If it comes to that, I'll just use one of the Atmel CapSense IC's that Sparkfun has some nice breakout boards for and then the analog part of things is limited to a very short distance(maybe 1 inch of wire) and then the signal comes back as a digital (HIGH, LOW) via the sensor wires to the Arduino.  I already ordered one of these to test with, but in the meantime I figured I'd try and see if adding an additional external ground would help.

It's very strange in that the failure mode is that the sensor keeps reading a high capacitance.  I assume this means that the charge isn't dissipating as I would expect.

Is there any harm in connecting an additional ground from the arduino uno to a water pipe, and or steel mains electrical conduit?  Presumably, not, but then again it may not help either.  Right now just have the arduino connected to power via a 9v USA style double insulated power adapter and corresponding barrel jack.


An update.  I added a separate ground to the arduino and have it connected to a nearby water pipe.  This seems to have stabilized the values a good bit.  Not sure if it will be the solution to the issue, but we'll see.  More testing to come.


Hi all,
So I have made a sensor using Arduino and the CapSense library.
I am particularly interested in the interference that most people are trying to get rid off.
I notice if I reduce the samples with the function long capacitiveSensor(byte samples) to a low value then it reads values very fast.
If I plot this data using processing then it appears it is actually receiving some kind of signal.
Even if I am not near the sensor the value constantly varies but every now and again a large spike is picked up.
The spikes are in my view some kind of signal but does anyone know what the source could be?
I plan to take my sensor out of the home and into a field to see if the interference is from say Wi-Fi or electrical appliance.
I also found out if I turn on a lightning ball then it activates my sensor quite wildly.
Maybe it can detect Neutrinos ha ha

Go Up