Item specifics
Description
MPR121 Capacitive Touch Sensor Module Product Overview
The MPR121 capacitive touch sensor module is based on NXP‘s (formerly Freescale) MPR121QR2 chip, designed for proximity detection and touch control applications. The chip communicates via an I2C interface, detecting capacitance changes on up to 12 independent electrodes, and also provides a simulated 13th electrode for global proximity sensing. Pins not used as electrodes can be configured as 8 LED drivers. The board features address jumpers and pull‑up resistor jumpers, with a default I2C address of 0x5A. Operating voltage range is 2.5V – 3.6V DC. It is ideal for touch keyboards, proximity switches, capacitive sensing panels, and interactive installations.
MPR121 Capacitive Touch Sensor Module Core Features
The MPR121 chip uses capacitive detection technology to output touch/release status for each electrode over I2C. It monitors up to 12 touch electrodes and includes a simulated 13th electrode for global proximity sensing (e.g., detecting a hand approaching). Sensitivity for each electrode is independently adjustable via registers to accommodate different panel thicknesses and environments.
The chip integrates eight LED drive pins. When not configured as electrodes, these pins can directly drive LEDs to indicate touch status without extra driver circuits.
The board has four jumpers: one address jumper (ADD tied to ground, default I2C address 0x5A – cutting it allows address changes); three pull‑up resistor jumpers (for SDA, SCL, and interrupt pins to 10kΩ pull‑ups, closed by default). Users can cut the traces to disable pull‑ups.
The board has no onboard regulator; an external DC supply of 2.5V – 3.6V (typically 3.3V) is required. The VREG pin is connected to ground via a 0.1µF capacitor, meaning low‑supply voltage mode (1.71-2.75V) is not supported without board modification.
MPR121 Capacitive Touch Sensor Module Applications
Capacitive Touch Keyboards: Build 12‑key touch pianos, control panels, or numeric keypads.
Proximity Switches: Detect hand approach for non‑contact switching (lights, automatic doors).
Interactive Art Installations: Create touch‑responsive interactive effects.
Robotics / Toys: Add human‑machine interaction through touch sensors.
Industrial Control Panels: Replace mechanical buttons for improved durability and aesthetics.
MPR121 Capacitive Touch Sensor Module Key Advantages
The MPR121 module simplifies multi‑channel touch system design with a single chip providing 12 capacitive touch inputs. Compared to discrete touch circuits, the MPR121 offers reliable capacitance detection with auto‑calibration and strong noise immunity. The I2C interface uses only two wires, conserving MCU I/O pins. Onboard pull‑up resistors and address jumpers make it plug‑and‑play. Eight LED drivers provide visual feedback without extra driver chips. Wide operating voltage (2.5-3.6V) is 3.3V‑compatible. Mature Arduino libraries (e.g., Adafruit_MPR121) allow reading touch data in just a few lines of code. The compact size fits easily into products, making it a low‑cost, highly integrated capacitive touch solution.
Why Choose QIXINWEI
Years of experience in the electronics industry. Trusted by global customers.
Massive In-Stock Inventory – Ready to ship promptly
BOM Matching Service – One-stop solution, save time
PCBA Customization – Professional engineering team creates tailor-made solutions based on your needs
Cost-Effective & Efficient – Better channel, better cost
A dedicated team makes your procurement smoother.
Contact us for BOM quotes or PCBA inquiries
FAQ:
What is the MPR121 capacitive touch sensor module and what are its key features?
The MPR121 is a 12‑channel capacitive touch sensor controller from NXP that communicates over I²C. It can independently monitor up to 12 touch/proximity electrodes, drive 8 LEDs, and support basic proximity detection. The module usually comes on a breakout board with a built‑in LDO regulator, making it easy to interface with 3.3V systems like Arduino and Raspberry Pi.
What is the default I²C address of the MPR121, and can I change it?
The 7‑bit I²C address is selectable by connecting the ADDR pin to different voltages: 0x5A (GND), 0x5B (3.3V), 0x5C (SDA), and 0x5D (SCL). This allows up to four MPR121 chips to share a single I²C bus without address conflicts. The breakout boards usually default to 0x5A with a pull‑down resistor.
Can the MPR121 detect proximity, or is it only for direct touch?
Yes, the MPR121 can be configured for proximity detection by using one or more electrodes as a large‑area sensor. It measures the change in capacitance caused by a hand approaching, often at distances of a few centimeters. This is done by adjusting the electrode charge/discharge current and touch/release thresholds in the registers.
How do the 8 LED drivers work? Can I control them independently from the touch inputs?
The MPR121 has 8 dedicated LED driver pins (LED0‑LED7) that can sink up to 8 mA each. They are not hard‑wired to the touch channels; you can map any touch or proximity event to any LED by writing to the LED control registers. This gives you full flexibility to create visual feedback for each sensor pad.
How does the MPR121 compare to the CAP1188? Which one should I choose?
Both are 8‑channel capacitive touch chips with I²C interfaces and LED drivers, but they have different strengths. The MPR121 offers 12 touch channels, 8 LED drivers, and a well‑established Arduino library (“Adafruit_MPR121”). The CAP1188 provides 8 touch channels, 8 LED drivers, and additional features like automatic recalibration. Choose the MPR121 if you need more touch inputs and a proven open‑source ecosystem; choose the CAP1188 for a simpler 8‑channel design with robust noise filtering.
What supply voltage does the MPR121 module require? Is 5V safe?
The MPR121 chip itself operates from 1.71V to 3.6V. Most breakout boards include a 3.3V LDO regulator, so you can power the module with 5V (via the VIN pin) and the on‑board regulator will supply the chip with clean 3.3V. Never apply 5V directly to the I²C lines or the VDD pin without a level shifter.
Is there an Arduino library for the MPR121, and how do I install it?
Yes, the popular “Adafruit_MPR121” library provides a high‑level API to read touch status, set thresholds, and control the LED outputs. You can install it directly from the Arduino Library Manager (Sketch > Include Library > Manage Libraries, search “MPR121”). The library includes examples for basic touch, proximity, and LED driving.
How can I increase the sensitivity of the MPR121 touch pads?
Sensitivity is controlled by three register values: electrode charge/discharge current, touch threshold, and release threshold. Lowering the touch threshold makes a channel more sensitive. The electrode current (AFE configuration) can also be adjusted per pin. The library allows you to call `setThreshholds(touch, release)` for each pin, and there are global configuration registers to fine‑tune the charge current. Start with the default values and test on your actual PCB/pad material.
Can I use long wires to connect the touch electrodes to the MPR121 board?
Keep the connection between the MPR121 pin and the touch pad as short as possible—ideally less than 10 cm. Long wires add parasitic capacitance and act as antennas, causing false triggers and reduced sensitivity. If you must use longer leads, use shielded cable, reduce the touch threshold, and consider adding a small series resistor (100 Ω–1 kΩ) near the MPR121 pin.
What are the most common applications of the MPR121 capacitive touch module?
It is used in interactive installations, musical instruments (MIDI controllers), custom keyboards, smart‑home control panels, beverage‑level sensing, and any project that needs touch buttons, sliders, or proximity detection. The 12 channels and integrated LED drivers make it a popular choice for cost‑sensitive, compact HMI designs.