Capacitive Touch Sensing


Capacitive touch sensing is a relatively new interface method for electronics, which probably owes at least some of it’s popularity with the iPhone (although capacitive touch interfaces did exist a long time before them).

Types Of Interfaces

  • Buttons
  • Sliders
  • Wheels

Detection Methods

There are two main methods, single and differential.

How simple cap sense buttons work.

Detection Limits

Most capacitance detection hardware has VERY good resolution and can detect capacitance changes as small as or less than one femto-Farad (that’s 1×10^-15F). Considering a finger coming close to a copper pad increases the resistance by about 1pF (1×10^-12F), this can detect changes a 1000 times smaller!


The button footprint can vary between the designs. One of the easiest is simply a copper circle (typically around 10mm in diameter).

A recommended cap button shape by Atmel. Image from

ESD Protection

ESD protection can be important in certain applications due to the human body getting very close to the capacitive touch pads, which can capacitively couple static into the system. However careful consideration must be taken in what ESD protection is employed as to not affect the circuits operation. In general, TVS diodes are unacceptable as theri parasitic capacitance and leakage currents greatly reduce the button sensitivity. Series resistors are a much better option (between 50 and 200R).

The Silicon Labs application note AN376 explains this in greater detail.


The Cypress range of PSoC micro-controllers have in-built hardware to support self-capacitance touch sensoring.

Analog Devices make a range of stand-alone capacitance sensing chips that use mutual capacitance and range from 12 to 24-bit.

Useful Links

Physical Design And Layout Guidelines For Capacitive Sensor Systems (SMSC) –

Capacitive Touch Sensing Layout Guidelines (Semtech) –

CapSense Best Practises (Cypress, but funnily enough this isn’t on their website as far as I know) –

Signal-To-Noise Ratio Requirement For CapSense Applications (Cypress) –