- Email: [email protected]
The FSR402 is a round force-sensitive resistor for pressure pads, touch buttons, robot grippers, and interactive electronics. It converts applied force into a resistance change, allowing makers and engineers to detect touch intensity with a simple analog circuit.
The sensor is especially practical for Arduino and ESP32 projects because it only needs a fixed resistor and one ADC input. Pair it with the Sensor Shield Expansion Board V5 for quick classroom wiring, and compare mechanical options with the official Interlink FSR402 information when designing the actuator surface.
Use the FSR402 for contact detection and relative force feedback rather than precision weighing. Its strongest signal changes are in lower force ranges, making it ideal for soft switches, squeeze controls, and prototype measurement fixtures.
| Parameter | Value |
|---|---|
| Sensor model | FSR402 round force sensitive resistor |
| Sensor type | Polymer thick film force sensor |
| Output | Variable resistance |
| Recommended circuit | Voltage divider to analog input |
| Force sensitivity range | Approx. 0.2 N to 20 N |
| Usable pressure range | 0 g to 10 kg for detection-oriented projects |
| Best sensitivity | Light to medium pressure; strongest change below about 2 kg |
| Interface | 2-pin flexible tail |
| Response time | Microsecond-level sensor response |
| Repeatability | Approx. +/-2% for a single sensor after controlled loading |
| Supply compatibility | Works with 3.3 V or 5 V divider circuits |
| Development support | Arduino, ESP32, STM32, Raspberry Pi Pico ADC |
Use FSR402 as a thin contact pad on a robot gripper finger. The sketch reads a voltage divider and reports whether the gripper is touching an object.
const int FORCE_PIN = A0;const int CONTACT_THRESHOLD = 260;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); bool contact = raw > CONTACT_THRESHOLD; Serial.print("force_raw="); Serial.print(raw); Serial.print(" contact="); Serial.println(contact ? "yes" : "no"); delay(100);}After measuring the raw ADC values for no load and a known load, this example maps the reading to a simple 0-100 pressure percentage.
const int FORCE_PIN = A0;const int RAW_EMPTY = 40;const int RAW_FULL = 820;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); int percent = map(raw, RAW_EMPTY, RAW_FULL, 0, 100); percent = constrain(percent, 0, 100); Serial.print("pressure_percent="); Serial.println(percent); delay(200);}For test fixtures, log only events above a threshold so the serial output stays readable during repeated pressing or loading.
const int FORCE_PIN = A0;const int EVENT_THRESHOLD = 500;unsigned long lastEvent = 0;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); if (raw > EVENT_THRESHOLD && millis() - lastEvent > 500) { Serial.print("force event, raw="); Serial.println(raw); lastEvent = millis(); } delay(20);}Q: Can this sensor be used as a precision scale?
A: It is best for relative force, contact, and calibrated trend measurement. Use a load cell for certified weighing.
Q: Does the output increase linearly with force?
A: No. Film force sensors are nonlinear, so project-specific calibration is important.
Q: Can I use it with Arduino or ESP32?
A: Yes. Read it through a voltage divider using an analog input on an Arduino-compatible board or an OpenELAB Sensor Shield V5 setup.
Q: What resistor value should I start with?
A: 10 kOhm is a common first test value; increase it for lighter forces and decrease it for heavier force ranges.
Q: Can I cut or fold the sensor?
A: Do not cut the active area or conductive traces. Avoid sharp folds on the tail.
Q: Why do readings drift over time?
A: Mounting pressure, sensor hysteresis, temperature, and mechanical creep can all affect readings.
Q: How should I mount it?
A: Use a flat backing plate and a consistent actuator so force is applied to the sensing area, not the tail.
Q: Is it waterproof?
A: No. Protect the film and connector from moisture, abrasion, and conductive debris.
The FSR402 is a round force-sensitive resistor for pressure pads, touch buttons, robot grippers, and interactive electronics. It converts applied force into a resistance change, allowing makers and engineers to detect touch intensity with a simple analog circuit.
The sensor is especially practical for Arduino and ESP32 projects because it only needs a fixed resistor and one ADC input. Pair it with the Sensor Shield Expansion Board V5 for quick classroom wiring, and compare mechanical options with the official Interlink FSR402 information when designing the actuator surface.
Use the FSR402 for contact detection and relative force feedback rather than precision weighing. Its strongest signal changes are in lower force ranges, making it ideal for soft switches, squeeze controls, and prototype measurement fixtures.
| Parameter | Value |
|---|---|
| Sensor model | FSR402 round force sensitive resistor |
| Sensor type | Polymer thick film force sensor |
| Output | Variable resistance |
| Recommended circuit | Voltage divider to analog input |
| Force sensitivity range | Approx. 0.2 N to 20 N |
| Usable pressure range | 0 g to 10 kg for detection-oriented projects |
| Best sensitivity | Light to medium pressure; strongest change below about 2 kg |
| Interface | 2-pin flexible tail |
| Response time | Microsecond-level sensor response |
| Repeatability | Approx. +/-2% for a single sensor after controlled loading |
| Supply compatibility | Works with 3.3 V or 5 V divider circuits |
| Development support | Arduino, ESP32, STM32, Raspberry Pi Pico ADC |
Use FSR402 as a thin contact pad on a robot gripper finger. The sketch reads a voltage divider and reports whether the gripper is touching an object.
const int FORCE_PIN = A0;const int CONTACT_THRESHOLD = 260;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); bool contact = raw > CONTACT_THRESHOLD; Serial.print(“force_raw=”); Serial.print(raw); Serial.print(” contact=”); Serial.println(contact ? “yes” : “no”); delay(100);}
After measuring the raw ADC values for no load and a known load, this example maps the reading to a simple 0-100 pressure percentage.
const int FORCE_PIN = A0;const int RAW_EMPTY = 40;const int RAW_FULL = 820;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); int percent = map(raw, RAW_EMPTY, RAW_FULL, 0, 100); percent = constrain(percent, 0, 100); Serial.print(“pressure_percent=”); Serial.println(percent); delay(200);}
For test fixtures, log only events above a threshold so the serial output stays readable during repeated pressing or loading.
const int FORCE_PIN = A0;const int EVENT_THRESHOLD = 500;unsigned long lastEvent = 0;void setup() { Serial.begin(115200);}void loop() { int raw = analogRead(FORCE_PIN); if (raw > EVENT_THRESHOLD && millis() – lastEvent > 500) { Serial.print(“force event, raw=”); Serial.println(raw); lastEvent = millis(); } delay(20);}
Q: Can this sensor be used as a precision scale?
A: It is best for relative force, contact, and calibrated trend measurement. Use a load cell for certified weighing.
Q: Does the output increase linearly with force?
A: No. Film force sensors are nonlinear, so project-specific calibration is important.
Q: Can I use it with Arduino or ESP32?
A: Yes. Read it through a voltage divider using an analog input on an Arduino-compatible board or an OpenELAB Sensor Shield V5 setup.
Q: What resistor value should I start with?
A: 10 kOhm is a common first test value; increase it for lighter forces and decrease it for heavier force ranges.
Q: Can I cut or fold the sensor?
A: Do not cut the active area or conductive traces. Avoid sharp folds on the tail.
Q: Why do readings drift over time?
A: Mounting pressure, sensor hysteresis, temperature, and mechanical creep can all affect readings.
Q: How should I mount it?
A: Use a flat backing plate and a consistent actuator so force is applied to the sensing area, not the tail.
Q: Is it waterproof?
A: No. Protect the film and connector from moisture, abrasion, and conductive debris.
There are no reviews yet. Be the first to review this product!
Add a review
Your email address will not be published. Required fields are marked *