S3 Touch Input freezing when two are linked
Posted: Thu Feb 08, 2024 1:59 pm
I have been working on a touch sensor application, I am just using touchRead() function to query 4 touch sensors on loop.
I found when touching two of them the ESP32-S3 values increase dramatically, when they get to 4000000 the unit crashes and reads a constant value until reboot. I have put inline resistors in line, which reduces sensitivity but improves the issue, however still possible to crash it with 33k on each line.
This can be easily replicated by touching together two touch pins, which causes all following touch read values to read the same stalled value until the chip is rebooted.
I cannot find any reports of this, so am raising a ticket, hoping that someone has found and resolved this issue by configuring the pins or touch module in some way.
I am programming this with Arduino IDE using 2.0.7 esp32 library, this seems consistent even the the latest (2.0.14). Tehre's no particaulr setting up for the touch pins, as per the examples, just using touchRead() in the loop with delays between reads.
This seems like it's crashing the actual touch ADC, as the chip continues to operate and provide values, however these values are no longer live readings.
Any suggestions to resolve or improve would be much appreciated. As I currently am just rebooting the ESP if I see this stall or go above 4million, but this is really inconvienient.
Thanks, Louie
I found when touching two of them the ESP32-S3 values increase dramatically, when they get to 4000000 the unit crashes and reads a constant value until reboot. I have put inline resistors in line, which reduces sensitivity but improves the issue, however still possible to crash it with 33k on each line.
This can be easily replicated by touching together two touch pins, which causes all following touch read values to read the same stalled value until the chip is rebooted.
I cannot find any reports of this, so am raising a ticket, hoping that someone has found and resolved this issue by configuring the pins or touch module in some way.
I am programming this with Arduino IDE using 2.0.7 esp32 library, this seems consistent even the the latest (2.0.14). Tehre's no particaulr setting up for the touch pins, as per the examples, just using touchRead() in the loop with delays between reads.
This seems like it's crashing the actual touch ADC, as the chip continues to operate and provide values, however these values are no longer live readings.
Any suggestions to resolve or improve would be much appreciated. As I currently am just rebooting the ESP if I see this stall or go above 4million, but this is really inconvienient.
Thanks, Louie