Raspberry Pi: PiTFT-display touch stops working after some touches

839 Views Asked by At

I use a Raspberry Pi and the PiTFT display for a program with kivy. In the program you can start a process and amongst other things you can then pause or stop it. Clicking "Pause" will lead to the button saying "Continue". Now when you click "Pause" and then without continuing "Stop", something weird happens: The touchscreen stops working. You can't click any more buttons, neither in my program nor in any other.

I know you might think it has to be something in my code, but I promise it's not. The process does things in a while loop over and over again which contains another while loop that is only executed if the value 'paused' is not set. And it works fine on my laptop. Also: There are two versions of the program. One reading values from an AD-converter connected to the pins and one just generating random values instead. And the one with the random numbers does not have this problem. So it's really not about the code..

Sometimes it happens that after like 2 minutes suddenly the "Start"-button that I pressed the 2 minutes ago is reacting again. So it somehow seems as if there's just a huge delay. It then works fine again until you do the "Pause" -> "Stop" thing.

The last weird thing is that when I reboot, the touchscreen is not working at all, not even at the beginning. And also not after a few minutes, there's no delay. It always works again after the second reboot.

So I really don't know where this is coming from. The only difference is the AD-converter-part, but that worked fine before. I used the device for months and this is just happening now. And it's so weird that not the program crashes but the whole touchscreen.. even after the reboot.

I also tried another Pi, but it gives me the same problem.

Does anyone have an idea what I can do?

1

There are 1 best solutions below

0
On

Any chance you see a tiny little rainbow square in the upper right? The Pi uses it to indicate that you're drawing too much power.

Since TFTs are normally powered directly from the Pi, it stands to reason that if you're putting extra load on the system while already using a TFT, it could be enough to push it over the edge.