Maker Pro
Arduino

All About TTP223 Capacitive Touch Sensor

October 08, 2026 by Ashish Adhikari
Share
banner

Stop using clunky physical buttons for your Arduino projects. Instead, why not use the TTP223 capacitive touch sensor.

Stop using clunky physical buttons for your Arduino projects. Instead, why not use the TTP223 capacitive touch sensor. The sensor detects your finger just like your phone screen. But the best part? It works through plastic, glass, and wood.

Capacitive touch is a technology that detects touch by sensing changes in electrical capacitance on a surface — like when your finger (which conducts electricity) touches a screen or button and alters its electric field. It's the tech behind most smartphone screens and touch buttons (including the TTP223 module).


Video: https://www.youtube.com/watch?v=CAxqUMi57IQ

Blog: https://diy-projects4u.blogspot.com/2026/10/TTP223.html

⚡Components Required


🔗 1 x TTP223: https://s.click.aliexpress.com/e/_c3UT3PPb

🔗 1 x FNIRSI DPS-150: https://s.click.aliexpress.com/e/_c3EPIPtP 

🔗 1 x FNIRSI HS-02 Smart Soldering Iron: https://s.click.aliexpress.com/e/_c3K4TF9v

⚡Under The Microscope


This is the bottom of the module which carries the primary TTP223 IC. Both module and chip bear the same name TTP223. Then we have the 3 Pins VCC, Output and GND. These two solder joints labeled A and B - can be used to switch bet 4 diff modes, which I will explain in a moment. 


You can adjust sensitivity of the module by:

  • changing the size of the touch pad
  • by changing the thickness of the panel covering it
  • or by adding an external capacitor

A capacitor placed between the sense pin and ground Reduces Sensitivity. A smaller capacitance value means Higher Sensitivity. The adjustable range is typically between 0 to 50pF. 

  • No capacitor (0pF): Most sensitive.
  • Increasing capacitor value (up to 50pF): Module becomes progressively less sensitive.

The LED indicator lights up when the touch sensor is activated. This onboard LED gives a visual indication that the sensor pad has detected your touch.

The Front of the module has the circular or rectangular copper area, often with a fingerprint-like icon, which is the sensing surface you touch to activate the switch.

For battery-operated builds, power consumption is key - and the TTP223 delivers. At 3 volts, it consumes a tiny 1.5 microamps while waiting for a touch. When a finger approaches, it instantly ramps up to fast response mode, giving you seamless control without chewing through your battery.

⚡Operating Voltage


The Operating Voltage of the TTP223 Module is between 2.0V ~ 5.5V. While the chip can technically run down to 2.0V, the output signal strength weakens as the supply voltage drops. For reliable logic levels with 3.3V or 5V microcontrollers, powering the module at 3.3V or 5V respectively.

If you power the module with 5V, the output HIGH will be roughly around 4V. If you're connecting this to a 3.3V microcontroller, the output HIGH stays close to 2.64V. It is safer to power the module with 3.3V so it doesn't exceed the microcontroller's input limits.

⚡Jumper Config


The jumpers on the TTP223 module control two independent behaviors: Jumper A sets the output logic level, and Jumper B sets the switching behavior. So, lets connect this module to a breadboard and lets checkout the 4 operational modes.

When both A and B are not soldered - the output becomes HIGH upon touch and returns to LOW when released. This is the factory default state of a brand new module. So, it behaves like a momentary touch-to-on switch whose initial state is LOW. In other words it acts like a traditional push button switch.

When only Jumper A is soldered - The output goes LOW when touched, and stays HIGH when released. So, it behaves like a momentary touch-to-off switch whose initial state is HIGH.

When only Jumper B is soldered - The module acts like a self locking switch or toggle switch (where every touch flips the output state) that starts with an initial LOW state. One touch turns it ON, the next touch turns it OFF, holding that state until you touch it again.

When both A and B are soldered - the module still acts like a self locking switch or toggle switch however, this time it starts with an initial HIGH state. Same as before, One touch turns it ON, the next touch turns it OFF, holding that state until you touch it again.


Jumper A  Jumper B  Resulting Mode

Open    Open    Momentary Touch-To-On, Initially LOW (Default)

Soldered  Open    Momentary Touch-To-Off, Initially HIGH

Open    Soldered  Toggle, Initially LOW

Soldered  Soldered  Toggle, Initially HIGH


The sensor works from a distance, so it can be used under a plastic covering.

⚡Microcontroller Integration (Arduino / ESP32)


This module can either be wired to a standalone circuit, as demonstrated in all the earlier examples, or connected to a microcontroller of your choice.

As you can see, touching the pad triggers an interrupt which fades the LEDs on and another tap fades them off. In the code, instead of constantly checking the sensor in a loop, I have used an interrupt. When you touch the touch pad, it instantly triggers the onTouch() function and hence the system reacts with zero lag. The attachInterrupt(..., RISING) listens for a signal on GPIO 5 connected to the TTP223 touch module.

⚡Troubleshooting Tips


Now let's have a look at the four most common TTP223 issues:

  • Ghost Touches / False Triggers : Add a 100nF capacitor across VCC and GND to filter out power supply noise.
  • Not Detecting Through Wood/Plastic :  
  • Sensor Stuck ON or OFF : Check for accidental solder bridges on the A and B jumper pads.
  • Microcontroller Not Reading Signal : Ensure your microcontroller and TTP223 share a Common Ground (GND).

So now, you can build an invisible switches directly into your 3D prints or furniture and surprise your friends. Boom Magic, subscribe and dont miss out my upcoming videos using this touch sensor.

⚡ Thanks


Thanks again for checking my post. I hope it helps you.

If you want to support me subscribe to my YouTube Channel: https://www.youtube.com/user/tarantula3


Video: https://youtu.be/CAxqUMi57IQ

Full Blog Post: https://diy-projects4u.blogspot.com/2026/10/TTP223.html

GitHub: https://github.com/tarantula3/TTP223


Support My Work

BTC: 1Hrr83W2zu2hmDcmYqZMhgPQ71oLj5b7v5

LTC: LPh69qxUqaHKYuFPJVJsNQjpBHWK7hZ9TZ

DOGE: DEU2Wz3TK95119HMNZv2kpU7PkWbGNs9K3

ETH: 0xD64fb51C74E0206cB6702aB922C765c68B97dCD4

BAT: 0x9D9E77cA360b53cD89cc01dC37A5314C0113FFc3

BNB: 0xD64fb51C74E0206cB6702aB922C765c68B97dCD4

POL: 0xD64fb51C74E0206cB6702aB922C765c68B97dCD4


Thanks, ca again in my next tutorial.

Related Content

Comments


You May Also Like