Skip to content

AncientJames/jtouch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Software-only capacitive touch for the Raspberry Pi Pico

Any GPIO pin can be used as a capacitive touch sensor.

This code uses a PIO program to detect the capacitance of a finger. First the pin is set to output and pulled low. Then it's set to input with the internal pull up enabled, and the PIO counts how long it takes to go high. There's a tiny difference in the timing of this count depending on whether there's a finger nearby, and by repeating the test thousands of times in a loop, that difference is amplified.

The PIO loops for a fixed length of time (about 16ms, for a 60Hz update rate), and returns a count of the number of charge / discharge cycles.

The Python program tracks the minimum and maximum counts, and turns the current count into a 0-1 level.

jtouch.mp4

About

PIO based capacitive touch for the RP2040

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages