L’ESP32 té integrats 10 sensors tàctils de tipus capacitiu.
El sensor tàctil de l'ESP32 admet fins a 7 canals GPIO com a pins tàctils capacitius. Cada pin es pot utilitzar per separat com a interruptor tàctil independent o combinar-se per produir múltiples punts de contacte.
El sensor capacitiu pot detectar canvis elèctrics quan apropem el dit:
Si toquem un d’aquests pins, aquest produirà una sortida proporcional a la càrrega elèctrica del dit, perquè el cos humà també té càrrega elèctrica.
Cada sensor (Touch) està associat a un GPIO:
Com a circuit associat utilitzarem simplement un cable connectat al pin per fer contacte amb el dit, així podrem comprovar com varia la capacitància en funció de la intensitat del contacte.
Pautes de programació
Per utilitzar el TouchPad, cal trucar la classe TouchPad de la llibreria machine i inicialitzar els pins correspondents.
Les lecturas són molt fluctuants, però podem comprovar que són altes quan no toquem i baixes quan toquem.
L'ús més adient és establir un llindar a partir del qual (si toquem) passa alguna cosa:
despertar (reiniciar) de son profund o de son lleuger, encendre un led, enviar una dada al núvol...
Un altre exemple, una mica més elaborat, és el següent script en què es comprova cada 100 ms la capacitància del GPIO4. Quan la capacitància sigui inferior a 300 – T0.read()<300 – s'encendrà el LED connectat amb el GPIO23: