State of STxxxx and ILIxxxx libraries?

macardoso

Active member
Working on developing a personal project which is primarily be focused in high speed AC servo motion control and I’d like to utilize a touchscreen with LVGL to display telemetry and basic control interface. Using Teensy 4.1.

I’ve gotten a 2.4” ILI9341 display running with LVGL but have had issues getting asynchronous DMA working. Additionally the color quality and viewing angle leave a lot to be desired on this TFT display. Using the ILI9341_T4 library by vindar (https://github.com/vindar/ILI9341_T4)

I’d be interested in learning what the current best display options and libraries are today. The ST7796 based displays with IPS and capacitive touch seem like a nice option but it’s hard for me to understand which of the several dozen display libraries support which features. I’m mostly interested in ensuring I can take advantage of the double buffering, differential frame buffer, and asynchronous DMA SPI transfers for most efficient compute time.

Unsure if pertinent, but this will eventually all get rolled up into a FreeRTOS schedule where display compute is the lowest priority task running the LVGL tick at 60-100Hz being constantly preempted by high speed motion control compute tasks.

Thanks!
 
The ST7796 is indeed a nice upgrade over the ILI9341. You get much better viewing angles, better color, higher resolution, faster SPI speed (up to 80MHz in my testing) and capacitive touch that doesn't require calibration. Teensyduino now directly supports the ST7796 as of the latest 1.60 release.

More details regarding level of support for features like asynchronous updates and other stuff can be found on this thread. I don't remember where some of that netted out: https://forum.pjrc.com/index.php?threads/st7796-teensyduino-support.76510/
 
Much appreciated for the feedback. I don’t frequent the threads and updates so it’s a bit of a slog to try to read through everything a parse what is current info vs deprecated.

It’s probably worth picking up one of these screens. I’ve been having good success in building some interactive displays with LVGL and square line studio. If this ports well to that workflow and has most of the same features as the ILI9341_T4 library then I’ll likely jump over to it.
 
Back
Top