Picture of Fabric Bend Sensor
Using conductive thread, Velostat and neoprene, sew your own fabric bend sensor.

This bend sensor actually reacts (decreases in resistance) to pressure, not specifically to bend. But because it is sandwiched between two layers of neoprene (rather sturdy fabric), pressure is exerted while bending, thus allowing one to measure bend (angle) via pressure. Make sense? Watch below:

So basically you could use most any pressure sensor to measure bend, but this one I find gives me the best results (sensitivity) for measuring the bend of human joints when attached to the body. It is sensitive enough to register even slight bend and has a large enough range to still get information when the limbs are fully bent.

The resistance range of this bend sensor depends a lot on the initial pressure. Ideally you have above 2M ohm resistance between both contacts when the sensor is lying flat and unattached. But this can vary, depending on how the sensor is sewn and how big the overlap of the adjacent conductive surfaces are. This is why i choose to sew the contacts as diagonal stitches of conductive thread - to minimize the overlap of conductive surface. But only the slightest bend or touch of the finger will generally bring the resistance down to a few Kilo ohm and, when fully pressured, it goes down to about 200 ohm. The sensor still detects a difference, right down to about as hard as you can press with your fingers. The range is non-linear and gets smaller as the resistance decreases.

This sensor is really very simple, easy to make and cheap compared to buying one. I've also found it to be reliable enough for my needs.

I am also selling these handmade fabric bend sensors via Etsy. Although it is much cheaper to make your own, purchasing one will help me support my prototyping and development costs >>

This neoprene bend sensor is also featured on the CNMAT resource site, among other great possibilities for making your own bend sensors >>

To see this sensor in action have a look at the following video. The dancer has fabric bend sensors (the same as this Instructable shows) attached to her: Underarms, elbows, wrists, shoulders, hips and feet.

There is a Bluetooth module on the dancer's back that is transmitting all of the sensor information to a computer that is then triggering instruments (LEMUR's musical robots) to play. For more info visit:

There is another video at the end of this Instructable that shows you it in wearable action!
1-40 of 77Next »
diller_171 year ago
What is the yellow orange (prototype board?) and why didn't you not use a breadboard? (Sorry if this seems dumb I have no experience with arduino and am just starting out with the duemilanove board)

its a perferated prototyping board. it basically reduces the electrical interference you can get from breadboards, can be cut to a smaller size (so he can attach it to a dancer), and is usually a little more durable then a bread board because its held together with solder.

Hi.. Can you please give more instructions on the assembling of hardware?
masterpj3 years ago
Hey plusea long time ago we had a chat about seeing your awsome motion capture suit in amsterdam, at the time i was unable to come, sorry for that.

Anyway i'm certainly going to attempt and make these awsome bend sensors for a glove with the arduino that allows you to make gestures to control patterns on a laser projection system (which I own)

Thank you so much for making all this, I keep recommending your documentations to clients I have that want to build their motion capture suits.
Simply because the idea's you share are brilliant.
Plusea (author)  masterpj3 years ago
thanks for your comment. i would love to see pictures of the glove you are building. feel free to post a link to any instructable you might publish on the work you are doing. also check out the e-textile workspace at V2_: http://www.v2.nl/lab/projects/e-textile-workspace
masterpj Plusea3 years ago
Hi plusea,

Thanks for both the link and response.
I will make an instructable.
Sadly I still need to learn java to master processing.
I will also certainly include references to your instructables and such when i publish about it.

I still need to find some of the parts you mentioned here too.
My hands are tingling of wanting to build it and i can't wait.

Best regards,

Hi! Thanks so much for your previous help, i've managed to get some velostat and "shieldit super" conductive fabric, but i've found that when i put a piece of velostat loosely between the two layers of shieldit, it bridges the gap instantly and reacts as though i'd connected input 1 to ground. When the wires are unconnected the whole graph just wiggles all over the place. Have i got the sensitivity wrong somehow?

I think i need a multimeter.

Huge thanks,

Plusea (author)  katsideswide5 years ago
have you set the internal pull-up resistor? or connected an external one (about 20K, between plus and input)?
using conductive fabric instead of stitching with conductive thread does reduce the range of the sensor. so that it might just be acting like an on/off switch, with no analog range. you might want to try a few more layers of velostat in between. or making the conductive surfaces smaller.

hope this helps.

Thanks for your advice! I've tested it with a 9v battery and an led, it gives a great response! (although it heats up a little...) I'll fiddle with the resistors as you recommend, although i can't find the option for the internal resistor, is it in the arduino sketch or the processing sketch?

Plusea (author)  katsideswide5 years ago
you might want to use a 3V coin cell battery or two AA (or AAA) batteries. the 9V can burn through conductive thread if it shorts the battery.
you can set the internal pull-up in the arduino code. for analog input0:
void setup(){
digitalWrite(14, HIGH);
Ah! i've got it working! thank you so much!
Hi Plusea,

The links you posted appear broken, do you have them still.

Many thanks in advance!

cuchara4 years ago
Hi Plusea,

i really like your work, it's awesome!
I've followed your instructables and managed to build a bend sensor which I am now trying to visualize. The site to download the code and application does not exsits though.. :( Did you move the code somewhere?
Thank you and keep u the amazing work!
ghough cuchara4 years ago
You could use the standard Arduino Analog Input code, albeit slightly altered, to find the bend. I did it this way and then I was able to visualise it in Blender using a simple python script that read the bend sensor value from the serial port and applied it to the movement of an object.

This is just an alternative option in case you can't find the code of course.
I have the same issue - cuchara, did you manage to find the files for the visualization?

patstarace4 years ago
Thanks for the great instructable. Amazing work. I have a question on the conductive thread. What type do you recommend. lessemf.com has 66 Yarn 22+3ply 110 PET. And Sparkfun has 117/17 2 ply, and 234/34 4 ply. I can't wait to build one of these. Thanks again.
Plusea (author)  patstarace4 years ago
lessEMF used to sell the same thread that sparkfun now sells. be careful, the 66 yarn has very high resistance. so it is great for embroidering potentiometers but nor for the bend sensor!
That sounds great. So it's the 117/17 2 ply from Sparkfun? Check out my Animatronic Toucan I built that sings Lady Gaga Bad Romance. I take this up to hospitals here. Thanks again.

Wowza is all I can say. I went to your site and was fascinated with the beauty of your High-Low tech art. Amazing work!
azdelslade5 years ago
hi, first off, thanks for the brilliant instructable! i made one of these with all the components you listed here, neoprent and actual velostat. i can get readings off of my multimeter fine and change an led with a battery fine, but when i hook it up to my lilypad, I only see changes between 1023 and 998, which is not much. I tried loosening up the stitches and using digital 5 as a power source instead of +, but it doesn't seem to help. Any suggestions? When I put my multimeter on 200k i get readings between 20 and 0.5. I tried adding 10k, 1M and 10M resistors, but that still didn't improve the sensitivity. I also tried adding another piece of velostat.
I was able to get a decent reading by making a voltage divider circuit, after looking at this lilypad flex sensor example: http://mtifall09.files.wordpress.com/2009/12/rhinoglove.pdf
Plusea (author)  azdelslade5 years ago
yes, you need to use a pull-up resistor (voltage divider) around 10-20 K Ohm which you can also set in software for the lilypad arduino by writing "digitalWrite(14, HIGH);" in setup for analog 0.
leisure12315 years ago
which kind of sensors do you choice?
windrago5 years ago
I am following your instructable right now - I have only one question where do I get the software that you use for the measurement? (the graph that you show in the video)  - I have been on arduino web site but I didn't see anything. I am new and exicited at this.
Plusea (author)  windrago5 years ago
The graph is written in processing (www.processing.org). you can download processing for free and you can download the graph code from the Instructables.
ShaunHill6 years ago
Please could you tell me where I can get one of those popper machines/tools?
Plusea (author)  ShaunHill6 years ago
you can get hand held machines in almost every local fabric store for about 20USD. i bought mine in the garment district of new york. you'll also find them online on amazon and other textile/haberdashery websites. hope this helps.
Thank you, but if I am searching online what are they called?
Plusea (author)  ShaunHill6 years ago
i search for things like: snap pliers, snap machine, snap press, snap fly press... they often come in combination with an eyelet machine.
Thank you very much!
TashaDax6 years ago
I'm doing a school project about spine exercises and need to measure the bending and angle and stuff with the spine. These sensors you've made would be awesome to use. Only thing is I don't know how. Could you please help? Just a bit? How do you hook it up to the Arduino and get the graphic interpretation in Processing? Thanks.
Plusea (author)  TashaDax6 years ago
If you go to step 8, you will find all the code you need for arduino and processing. if you go to the arduino and processing websites, you will find step by step instructions to get you started. if you have any more concrete questions please ask.<br/>plus, there is also an updated version of this sensor >> <br/><a href="http://www.instructables.com/id/Neoprene-Bend-Sensor-IMPROVED/">http://www.instructables.com/id/Neoprene-Bend-Sensor-IMPROVED/</a><br/>
TashaDax Plusea6 years ago
Oh, thanks a ton! If I mess it up horribly, I'll ask :) Again, thanks P.S: Since I can't get my paws on to any conductive thread and stuff, I was thinking of ordering it from your etsy. How much time does it take to deliver around Europe?
Plusea (author)  TashaDax6 years ago
I'm based in Scotland/UK, so shipping should be quite fast within Europe - where are you?
TashaDax Plusea6 years ago
So the order was placed (from a dude named Aristides, in Switzerland). Yay! Another question: How do you hook this up to the Arduino? Perf board, pinheaders, flat cable, resistors.... But but but... How? Sorry for being ignorant :(
TashaDax Plusea6 years ago
I'm in Slovenia, so I'm guessing it shouldn't take more than... 10 days? Scotland? Seriously? Oh, you're so lucky. I'm moving there as soon as some wealthy and previously unknown relative dies and leaves me all his money.
tewfik7 years ago
WOW Really nice thing you've done here. I love the concept, could be used as you depicted as a glove-control-interface according to your video, it seems that you need some noise-filtering on pc-side (or arduino-side), just a thought you said that it is possible to measure the angle from this sensor, is it linear (ideally) or something non-linear and by the way, is the conductive fabric available or is it a special material you have to order on the internet ? very nice instructable thanks for sharing
Plusea (author)  tewfik7 years ago
Hi. thanks for the comment.
some more noise filtering would be nice. i normally just threshold the data (min, max) and then i at least get rid of the annoying flickering at both ends. i'm not a big programmer, but i'm sure more can be done.

you're right the decrease in resistance is not linear, it is much more sensitive to slight pressure and then becomes less sensitive the harder you press, but it still gets information in the high pressure (human finger pressure) range. still it is stable so you can/could approximate angle from it.
if you use Eeonyx's carbon fabric instead of the Velostat then you get more linear results, but this fabric is only available in large quantities.

the stretch conductive fabric that i use is really easy to order from LessEMF over the internet. they are based in NY but ship all over the world (i think). their stretch conductive fabric is not the cheapest and just went up in price to 60$/linear foot (= 30 x 110 cm). but you can also use a less expensive, non stretch, conductive fabric or probably also use conductive thread to make a good connection to the popper... or even don't use a popper at all but sew directly to something else (a perfboard for example). but stretch conductive fabric is cool.

endolith Plusea7 years ago
What's the circuit connecting the sensor to the Arduino? The sensor is just one half of a resistor divider to the ADC? You could do digital filtering in software, but it might be easier to do it with just an electronic filter.
Plusea (author)  endolith7 years ago
the circuit is just a series of pull-downs. if you have any tips on doing some electronics filtering, i'd be very interested to hear.
1-40 of 77Next »