suchmememanyskill / CYD-Klipper

An implementation of a wireless Klipper status display on an ESP32 + screen
https://suchmememanyskill.github.io/CYD-Klipper/
GNU General Public License v3.0
257 stars 34 forks source link

ESP32-3248S035C - Hardware Interrupt for GT911 #129

Open pepe-el-pepe opened 1 month ago

pepe-el-pepe commented 1 month ago

Hello, according to LINK there is a small hardware issue on this esp board. In case the software change is not a “big deal”, it would be great to have this here in CYD-Klipper :)

suchmememanyskill commented 1 month ago

Unsure what the benefit would be in this project; lvgl takes up most of the cpu time and polling happens inside the lvgl main loop, thus maxing out at 25 polls a second.

pepe-el-pepe commented 1 month ago

I mean, the author writes: “This results in excessive CPU utilization of more than 80%. The changes listed below result in significantly lower CPU utilization of less than 10% on average (for static screens).”

Maybe I don't fully understand the pooling/interrupt issue, but in my life so far I've learned to use the available resources as efficiently as possible. Wouldn't one of the big advantages then be a cooler uC, longer life and more time for other things? You never know when you'll need it :)

If you don't think it's worth the effort, feel free to close the issue :)

suchmememanyskill commented 1 month ago

For (eventual) sleep mode support, this would be useful, but lvgl is architected in a way to do polling-based touch screen sensing. Don't think it's wise to use it for the main touch sensing routine