Introduction: Knit Touchpad

Picture of Knit Touchpad
This knit touchpad is possible due to the properties of the anti-static gloves, which are sold for handling sensitive electronic components. The glove is knit from stretchy fibers that also include resistive yarn (poorly conductive). Because of the way the fibers in knits travel from one side to the other, from top to bottom, the resistive yarn travels it doubles back on itself in a way that maintains the resistive connection even when the knit is cut (interrupted). The surface thus has a unique resistance at any point when measuring from at least three points. In this demonstration I chose to measure from all four corners.

The following updated video shows the data visualization from all four inputs. And calculates the position of the nail. As you can see it is not perfect, but you can also see that it does kind of work >>



This is the original video using the finger cap >>



Instead of attaching the Vdd or Vcc to the finger, one could also have it as a continuous conductive layer mounted underneath or above the knit, separated by perforated foam. Although this minimizes resolution to the number of perforations, it does free the user from the additional step having to wear the finger cap. But in this case I consciously wanted to test this method for a future project idea.
The knit does not need to be kept on a flat surface, I just did this for demonstration purposes and the next Instructable will show how this method can be used to turn the whole glove into a touchpad. And then hopefully the whole body, though the problem I have to solve here is how to isolate against the knit interfering with the measurable continuous resistance by touching back on itself.

Step 1: Materials and Tools

Picture of Materials and Tools

MATERIALS:
- Conductive acrylonitrile stretch glove from http://www.all-spec.com
also see http://cnmat.berkeley.edu/resource/conductive_gloves
- Conductive copper tape with conductive adhesive by 3M http://www.3m.com/
also see http://cnmat.berkeley.edu/resource/conductive_tape_conductive_adhesive
- Ni/Cu Fabric Tape with conductive adhesive from LessEMF http://www.lessemf.com/fabric.html
also see http://cnmat.berkeley.edu/resource/ni_cu_fabric_tape
- Solderable perfboard with copper line pattern from All Electronics http://www.allelectronics.com/
- Male and female headers from Sparkfun http://www.sparkfun.com/
- Ribbon cable
- 4x20K resistors
- Thin, flexible wire
- Double-sided sticky tape
- Stretch conductive fabric from http://www.lessemf.com
also see http://cnmat.berkeley.edu/resource/stretch_conductive_fabric
- Fusible interfacing from local fabric store or
also see http://www.shoppellon.com
- Stretch fabric (jersey)
- Thread
- Cardboard
- Arduino and USB cable from Sparkfun http://www.sparkfun.com/
- Computer
- Arduino software free for download from http://www.arduino.cc/
- Processing software free for download from http://processing.org/

TOOLS:
- Sewing needle
- Scissors
- Wire clippers
- Wire strippers
- Soldering iron and solder
- Iron

Step 2: Preparing Touchpad Surface

Picture of Preparing Touchpad Surface

For demonstration purposes I wanted to get the largest rectangle possible out of the glove and cut this from the palm section. I cut it so that the knit does not run diagonally, but from side to side and from top to bottom.
To mount this piece of knit, which likes to roll up on itself, I cut a piece of cardboard, about 2cm larger than the knit all around and mounted it on some strips of squishy double-sided sticky tape. The reason I chose to use squishy tape was only because it was the only kind I had that day, but I also thought it could be nice than a hard surface and to some extent the surface is even pressure sensitive, since the harder one presses, the better the electrical connection becomes. Increasing electricity flow equally to all measuring points.
Before sticking the knit to the tape I connected 4 wires to the corners of the cardboard by stripping their ends and simply fastening them down underneath a small corner of copper tape that has conductive adhesive.

Step 3: Connecting the Touchpad

Picture of Connecting the Touchpad

After sticking down the knit I connected its corners to the copper tape at the corners by simply sticking another small squares of conductive fabric tape with conductive adhesive. Be sure to check that the fabric tape is sticking well to both the knit and the copper.

Step 4: Sewing Conductive Finger Cap

Picture of Sewing Conductive Finger Cap

Trace both sides of your index finger onto a piece of stretch fabric and add a bit for the seam and cut out. Iron-on (fuse) a strip of stretch conductive fabric along the center length of one side. Fold in half (right sides together, conductive strip inside) and sew around the edges. Turn inside out and affix a wire to the conductive strip at the open end of the finger cap.

Step 5: Soldering Pulldown Resistors

Picture of Soldering Pulldown Resistors

I actually made a silly mistake here in my circuit. Not that it doesn't work, it just does not plug in directly to the Arduino. So you can either follow my faulty version which is also what the pictures are of, or you can follow the text bellow that offers a more ideal way of connecting.

MY WAY
Cut a 6 x 7 hole piece of perfboard (copper lines running the shorter, 6 hole, length). Cut a row of 7 female headers and solder them to the first row of 7 holes. Solder 20K resistors between the third hole and each of the 4 holes next to it. Also see photos for instruction.
Solder the ends of all four (red) cables coming from the corners of your knit touchpad to the other end of the perfboard so that each input runs to the ground through a resistor. Solder the (red) wire coming form the finger cap to one of the two leftover holes on the perfboard that does not pass through a resistor and goes directly to the header. To connect this version to your Arduino you will need to use a piece of rainbow wire that connects things in the right way. The inputs from the four corners should go to your first four analog inputs. The header that is connected to the other end of all the resistors should go to your GND and the header that goes directly to your finger cap should connect to the +5V. See photos!

BETTER WAY
Cut a 6 x 9 hole piece of perfboard (copper lines running the shorter, 6 hole, length). Cut a row of 4 male headers and solder them to the first four holes in the row of 9 holes. Cut 2 male headers and solder them to the last two holes in the same row of 9 holes. Solder 20K resistors between each of the 4 male headers and the closest of the two male headers - these match up with your Arduino board. Solder the ends of all four (red) cables coming from the corners of your knit touchpad to the other end of the perfboard so that each input runs into a resistor. Solder the (red) wire coming form the finger cap to the left over header in the corner. Now this should fit directly on top of your Arduino and should be able to plug the male headers sticking out of your perfboard into the first 4 analog inputs and the two headers should plug into your GND and +5V. See sketch!

Step 6: Testing, Testing

Picture of Testing, Testing

For Arduino microcontroller code and Processing visualization code please look here >> http://www.kobakant.at/DIY/?cat=347

Enjoy!

Step 7: Updates

Picture of Updates

I recently modified the touchpad slightly. Instead of the finger cap I attached a nail to the +5V wire and instead of the square pieces of conductive fabric tape on each corner, I stuck on a longer strip that runs further down the sides, starting at each corner and connecting to the copper tape. See pictures >>

Comments

sli7 (author)2013-03-21

it is awesome and very nice project, but I can not find the code. Could you give me any information about the code? I will appreciate it. Thank you very much.

gtkid_1990A (author)sli72017-02-07

yeah same here is it possible if you could upload the code?

GeekCrafterGirlz432 (author)2016-12-11

What is it for?!?

Barsoomian (author)2011-01-04

Hi, I was wondering if you remembered which corners were attached to which analog input port on the arduino?

NoSuchNick (author)2010-04-18

Hi,
i was wondering if this sensor has a varying resistance relative to the amount of pressure applied.
If it has, how do you correct for it? Do you first calculated the total pressure out of the 4 individual inputs, adjust the values and then calculate the position?

Bye,
NsN

Radobot (author)2009-07-05

This is a great project! But can you change the Conductive acrylonitrile stretch glove to something different (like some metal)? And can you use instead Arduino some circuit (what don't need program and have USB)?

Plusea (author)Radobot2009-07-10

if you use any resistive material you can measure from multiple points and calculate the position. and i'm not quite sure if i get the next part of your question. you want to use another analog/digital converter that is not the arduino? of course you can do this, but since i mainly work with the arduino, i don't really have any other recommendations. what are you trying to do?

avibank911 (author)2009-02-22

wow nice project!! can you use something besides Arduino , like usb or summin?

Plusea (author)avibank9112009-02-22

Don't quite understand your question? Arduino is translating the analog signals into a serial signal, which is what is sent via USB to the computer. You can use other A/D converters, it does not need to be an Arduino.

chrischavez (author)2009-01-09

I don't have any access to conductive fabrics or anything of the sort. would there be anything that i could make. i have access to a multitude of hardware stores and a walmart. maybe a conductive glue that is spread on a mesh. maybe just maybe a few items from the Internet.

Plusea (author)chrischavez2009-01-11

well you can order conductive fabrics super easily online from >> www.lessemf.com

from a hardware store you might be able to get some velostat in form of antistatic plastic bags that are used for storing/packaging sensitive electronic components.

and it would be very cool if you could try making conductive glue and coating textiles with it. there is a good instructable for conductive glue, though it hardens and can not handle the stretchiness or flexibility of textiles >>
https://www.instructables.com/id/Make-Conductive-Glue-and-Glue-a-Circuit/

chrischavez (author)Plusea2009-01-11

Thanks what I will try to do is make a drawing pad. maybe not that accurate but its something.

AnarchistAsian (author)2008-11-17

a little shaky, but great. is there any way to make it more accurate?

leahbuechley (author)2008-11-15

love this & all of your instructables plusea! so glad you're out there doing all of this cool stuff & sharing your projects!

macsimski (author)2008-10-01

you can also use the antistatic bags Farnell uses to send you chips in. it's black plastic and also has a decent resistance. i've made one measuring 20x20cm to be used as a life midi interface, with a teaspoon as a controller.

Plusea (author)macsimski2008-10-05

Yes, i've been working with Velostat (black anti-static plastic) for making bend sensors and combinations with layering and grids might make for a nice pressure sensitive, wearable touchpad.

archipeep (author)macsimski2008-10-05

I would love to know a little more about your 20x20 midi interface! Perhaps you are thinking of posting your own instructable on this? ;) How well does it work, how accurate, etc.?

muffin1 (author)2008-10-05

what if you had a carpet made out this stuff and you incorporated it in a video game, so you could walk around the room (with a peace of metal on your shoes) in the game. you could wear your suit thingie and it would be like a virtual reality game.

srhadaham (author)2008-10-02

Any reason why you would use this over the touch pad on your laptop or is this just something to have fun playing around with?

Plusea (author)srhadaham2008-10-04

It is something to have fun playing around with the basics of available materials. and is a prototype for a wearable touchpad... coming soon... i'm not actually using it over the touchpad on my laptop, i just put it on top of my laptop so that it would fit in the video frame along with the laptop screen. although you can use this fabric on top of your laptop touchpad, because it is conductive and will transfer the position of your finger. which would not work with a non-conductive piece of fabric in between finger and laptop touchpad.

vanbo (author)srhadaham2008-10-02

Both, but it could also be used for a desktop.

kylemcdonald (author)2008-10-03

This is very cool. I think there might be a way to do this without a glove or nail. Do you have plans yet for using this? I'd like to see two contact improvisers wearing full-body suits made of this :)

Plusea (author)kylemcdonald2008-10-04

Hi Kyle!
This touchpad is actually a prototype for this project idea: Everywhere I can touch myself, which would be a full bodysuit for documenting touch between body parts.

Noblevagrant (author)2008-10-03

I heard about car makers putting sensors in the seats that affect the way an airbag deploys. if the actual seat fabric was made of this material it could really improve the accuracy. Also this would be nice as an interface for a carputer, imagine sewing a cap on your stickshift and be able to control the pc without removeing your hand from the shifter.

GWJax (author)2008-10-02

Very interesting project, I could see some use for this kid of thing in robotics. This is one project I'll have to play with. Thanks for info. Jax

Kaiven (author)2008-10-01

That is just awesome! I'm voting for it :D

srilyk (author)2008-09-29

I think if you wrote in some jitter correction you could improve the accuracy. And considering the fact that you have 4 sample points, that should give you a reasonable margin of error, methinks. This is a really cool idea!

Plusea (author)srilyk2008-09-29

yes. it could probably be made lots more stable with some code and maybe even a better circuit. but one thing is that the knit fabric itself gives adds to the noise, because there is just one fine conductive fiber knit in and you can make contact with the same position in different ways, so that the input flickers. but i think that i'm also demonstrating the knit fabric in a bit of a wrong way. the really cool thing about it is that you can sew sample points directly to the glove (without cutting out a square) and measuring from them, know where you are touching you hand. this is one more thing i'm working on.

srilyk (author)Plusea2008-09-30

That's a really cool idea... I can think of some really interesting possibilities for use with the disabled...

sleepydog (author)2008-09-29

What a wonderful way of figuring position! I love your project!
Rachel from Instructables and Soft Circuit fame has used bolt (that meshy stuff they make ballerina outfits from) as a separator between conductive fabrics in her switches. The "weave is open enough to allow easy contact under light pressure, but provides good separation between layers of fabric when it isn't being touched.
If you're looking for conductive fabric, check out http://lessemf.com/fabric.html it may be a little tin-foil-hat, but they have good prices and selection.

Plusea (author)2008-09-27

I've modified (improved) this Instructable and uploaded a new video!

PKM (author)2008-09-26

Hmm.. how expensive is the stretchy fabric? Build one six feet across, project onto it and have a huge touchscreen without that pesky mucking about with webcams and IR :) You wouldn't even have to use a finger, one of those extending pointers like a radio aerial would work. Also, can you calibrate it to give absolute position? It seems like it would be a non-linear nightmare because of the multiple paths from the finger to the sensors...

Plusea (author)PKM2008-09-26

I don't think this techniques is made for precision. though i'm interested to see how much precision i can get out of it. the fabric is relatively cheap for small amounts, but so far i've only been able to find it knit as gloves: 3$/pair

About This Instructable

39,086views

140favorites

License:

More by Plusea:PIFpack SERIOUSOrganized Organization - Tiered Zip Pouches3D Sewing: Rings With Rope
Add instructable to: