How to Use a Force Sensitive Resistor - Arduino Tutorial




Introduction: How to Use a Force Sensitive Resistor - Arduino Tutorial

About: Arduino Tutorials by Team

In this tutorial you will learn how to use an FSR - Force Sensitive Resistor with Arduino to fade an LED. This sensor is a variable resistor just like a photocell or flex sensor. The resistance changes by applying pressure on it.

Let's get started!

Step 1: What You Will Need

For this tutorial you will need:

  • Arduino uno
  • Breadboard
  • Force sensitive resistor
  • LED
  • 10KOhm & 220 Ohm resistors

Step 2: The Circuit

The connections are pretty easy, see the image above with the breadboard circuit schematic.

Step 3: The Code

Here's the code, embedded using Codebender!

Try downloading the Codebender plugin and clicking on the "Run on Arduino" button to program your Arduino board with this sketch. And that's it, you've programmed your Arduino with this sketch.

How it works:

  • Read analog value from flex sensor
    :: value=analogRead(sensorPin);
  • Map analog values 0-1023 to PWM values 0-255
    :: value = map(value, 0, 1023, 0, 255);
  • Send pwm value to led
    :: analogWrite(ledPin, value);

You can make your own modifications to the code by clicking the "Edit" button.

Step 4: Well Done!

You have successfully completed one more Arduino "How to" tutorial and you learned how to use a Force Sensitive Resistor with Arduino.

I hope you liked this, let me know in the comments.

There will be more of them, so make sure to click Follow button!



    • Water Contest

      Water Contest
    • Tiny Home Contest

      Tiny Home Contest
    • Metalworking Contest

      Metalworking Contest

    23 Discussions

    what is the maximum force?

    i need a code to measure how much force is applied on the sensor.....

    i need a code to measure how much force is applied on the sensor.....

    i need a code to measure how much force is applied on the sensor.....

    I am really new to all of this but would there be a way to measure the time that a force is applied? the amount of force is irrelevant for what i want to do. I just need to know if the time that the force is applied is < or > a certain time. many thanks


    2 years ago

    What I don't really understand, why do I need a resistor to connect to the ground of arduino? How can I decide about the value of the resistor?

    1 reply

    when we use any analog type sensors, we need to connect a resistor having around equal value to the sensor in series to make VOLTAGE DIVIDER CIRCUIT. VOLTAGE DIVIDER CIRCUIT is necessary to observe and grab the change in sensor parameter according to its physical correspondences..

    What if I was to want to take 4 FSR's and apply a direction to each one such as left, right, up, and down. To make a controller that responded to where you push on the screen. Would anyone have any ideas on how to do that.

    1 reply

    You could definitely do that! You just have to wire four of these sensors up, and write some fairly simple code. What do you want to use the controller for? I'd be glad to help out if you have any trouble with the project.

    how to masure the force or load(gor kg) using force sensitive resistor

    I know there are a million uses for this resistor (sensor), but I would really appreciate a list of some applications that this would excels as a viable option to use. Is there a place where I could see some of its current applications?

    1 reply

    Hi! You can use it as a touch button switch!! :D

    Thanks for posting this. I have a few of these in a kit I got a few years ago but I hadn't gotten around to trying them out. Your Instructable has piqued my interest!

    I hate to state the absolutely Obvious, But you can see in the circuit that there are jumpers, wouldn't you think there are necessary when using a breadboard?

    Hey, be nice. This could be a 7 year old kid that invents an artificial epiglottis for you someday. Jumpers are not mentioned in the stuff you will need. It's easy for us who do this without thinking to forget what is obvious to a veteran is obscure to a noob.

    Yes, there are jumpers. Keep looking at following pictures, it will begin to make sense.

    To be fair, if Ramasamy hasn't had a load of experience with Arduino, there 'could' be a little confusion and perhaps not necessarily obvious is obvious. The list of items didn't include cables and the completed assembled photo shown in step four appears to be a shield rather than a regular breadboard and the wiring is kinda hidden behind the Arduino/Shield/components. The Fritzing diagram showed the connections, but unless one is truly familiar there could be some doubt. Besides, isn't this a forum to ask questions without fear of ridicule? A little empathy or at least withholding the unnecessary snarky should be the rule.