Prototyping Capacitive Sensors

Previous blog posts explored capacitive sensing and proposed it as ideal for our digital Peabody quilt. However, unlike a smartphone or tablet, we have a very interesting design problem: how can we embody the quilt form and feel such that the sensors create a foldable and flexible 30×30 matrix and peacefully combine with Adafruit NeoPixel strips?

So, I rapid prototyped and tested four flexible materials for capacitive touch sensing with Arduino’s CapSense library:

  • Copper mesh
  • Copper tape
  • Conductive wool yarn
  • Conductive cloth

I broke the problem down to its smallest component – one sensor using one piece of the above materials – and created a very simple animated schematic with an online circuit simulator. Notice the latency between the send pin going high (‘H’) and the receive pin going high (‘H’). This is what is detected by CapSense as you touch the material:

Capacitive Proto Schematic

You can further play with this simulator setup. If you would like to learn more, the prototyping and schematic setup was inspired by a very well done and straightforward CapSense video tutorial that explains it well.

The test I used looked like the following:
copper mesh cap test

Which produced this visible change in the serial output, printing milliseconds and the output of the sensor:
copper cap test serial output

I also tested what would happen when I added LEDs on top of the material:
giphy (3)

Which produced a serial output change one order of magnitude smaller for conductive fabric, copper mesh, and copper tape:
giphy (4)

I am unsure that the change caused by the material with the LED strips is large enough for the sensor to work effectively.

1. Copper Mesh
✔︎ worked well on its own
✔︎ seemed to work through LED strips powered off

setup_copper-mesh

2. Copper tape
✔︎ worked well on its own
✔︎seemed to work through LED strips powered off

setup_copper-tape

3. Conductive wool yarn
✔︎ worked well on its own
✘ did not work through LED strips powered off

setup_conductive-wool

4. Conductive fabric
✔︎ worked well on its own
✔︎seemed to work through LED strips powered off

setup_conductive-fabric

Grounding

Properly grounding the setup ‘A to Z’ – laptop, Arduino, conductive material – was tricky. When the laptop wasn’t plugged in to an outlet, the higher serial output was hardly detectable. But when plugged in thus using main power as ground, the capacitive touch worked very well. Also, because my desk was static dissipative, I put everything on top of a large cardboard box (i.e. an insulating material).

Inductance

It is very important to note that the LED strips were powered off – when powered on, the current passing through the LED strips can create an electromagnetic field that may or may not cause inductance with the other wires for the conductive fabric. My background doesn’t allow me to say for sure, but it’s worth noting and testing in the future.

Reliability vs. Replicability

If each square in our Peabody blanket were to be an individual touch sensor, we would require 900 unique inputs/output ports. Even with multiplexers and Arduino Megas, allowing each sensor to be a special snowflake may well be an implementation nightmare, only worthwhile later when debugging.

We could instead reduce input/output requirements by making, say, each row one capacitive sensor that is able to determine the position of touch along the quilt’s two meters. (Michael Nietsche in Digital Humanities hypothesized this is not possible but has not tried it; thus, I must try it).

Thoughts

Controlling an object with the touch of fabric has some element of surprise. Commonly we interact with capacitive touch interfaces via cold, hard glass and plastic blocks we carry in our pockets. There are pixels in the block. Those pixels tell us what our touch will do. The little blue box with a letter ‘f’ inside provides an affordance to press followed by dynamic feedback, filling our block with vacation albums and videos of indulgent recipes in 30 seconds or less.

Now we encounter soft, flexible fabric and wool thread that we’ve associated with being passive our entire lives, worn as the favorite jacket or snuggled into as the favorite blanket. But by allowing them to carry current and implementing capacitive touch, our interactions become active, thus introducing a new conceptual model for control interfaces that does not require the push, flick, pull of everyday affordances but rather a light touch on fabric, like tapping a friend on the shoulder to get their attention.

Meta

My first blog post outside of ’thoughts’ feels very cut and dry. I think my scientific paper persona was speaking loudly: here is introduction, here is methods, here is results, here is discussion. My hope is that the more blog posts I write, the more conversationally I’ll be able to ponder upon and weave in discussion about some of the touch interaction’s nuances and implications. Things a schematic doesn’t talk about.