How to approach RGB-666 TFT displays

dmhummel

Well-known member
Every day it seems there are more new, high quality, high-res RGB-666 displays available. Beyond a esp32 board offered by Adafruit, there isn't much out there to make them approachable. Is there a recommended software/hardware approach that would allow me to drive them with a Teensy 4.x controlled?

Thanks!
 
Last edited:

I think he is referring to this..
You can emulate and RGB dot-clk interface using FlexIO shifters and timers - but I have never done it myself - I’ve only emulated 8080 on FlexIO for display purposes
 
But what has TTL got to do with it? This is just a 16/18 bit parallel interface as far as I can figure out.
 
TTL is simply in the product name, but is not relevant to the question. @Rezo is correct in his reference to one example product. Looking for good existing libraries that might embed a FlexIO implementation under a common graphics library, or a simple dedicated (affordable) hardware solution that could be placed in a PCB.
 
To get 16 bits of color over flexio you’ll need to use FlexIO3 on a Teensy 4.1
Downside is it does not support DMA.

Or, go custom teensy routes and break out all FlexIO2 pins which are also the eLCDIF pins (I have don this - 24bit color over 8080)
Any other option than the above is a waste of time for a resolution of 480x480 IMO
 

I think he is referring to this..
You can emulate and RGB dot-clk interface using FlexIO shifters and timers - but I have never done it myself - I’ve only emulated 8080 on FlexIO for display purposes
I have those boards with 2.1" round display. They are not fast as they claimed. I've been working on them for 3 months and no good FPS above 20-30. DMA needs double buffer. And the code for Arduino has like 23523 files. I cleaned almost all of them but still flickering. I've tried phyton too. Slower than Arduino samples. So I was looking for to implement some of the code to Teensy 4.1 . And still working on. if you have any progress please feel free to tell us.

Now I'm trying to understand the FlexIO, but no example for that. I think we are alone in that subject.
 
I have those boards with 2.1" round display. They are not fast as they claimed. I've been working on them for 3 months and no good FPS above 20-30. DMA needs double buffer. And the code for Arduino has like 23523 files. I cleaned almost all of them but still flickering. I've tried phyton too. Slower than Arduino samples. So I was looking for to implement some of the code to Teensy 4.1 . And still working on. if you have any progress please feel free to tell us.

Now I'm trying to understand the FlexIO, but no example for that. I think we are alone in that subject.
What Teensy are you using?
You can try FlexIO3 on a Teensy4.1 to achieve a 16 bit color depth on RGB interface.
You can find the application note for driving a Dot Clock RGB display using FlexIO here: https://www.nxp.com/docs/en/application-note/AN5280.pdf
I also suggest you read through the FlexIO chapter of the Ref manual to better understand how it works

I have not played with this setup myself as I have used 8080 interface emulation on FlexIO and it's worked great - but that display you have does not support 8080/6800.
 
I have almost all the teensy's on my shelf. I want to use 4.1 for the screen now. I've found the AN5280 documents online too. I've started to read them. I wish I had an example for it. But no worries I hope to solve it in time.
The display, yes it is not easy to drive. I wish we had like a Teensy 4.2 with full LCD capabilities open for us. It would be much more easy . I have PSRAM and Flash already bought for the project. It will only take time. I don't think in start I will need DMA. so FlexIO3 would be enough. But I'll try to make the Hsync and Vsync first.
 
You can use my 8080 FlexIO library as a basis to learn how FlexIO shifters and timers are configured, but, getting it all configured based on the applications notes alone won't be easy. Search for the SW associated with that application note and see if it has the registers config in there.

But to be honest, I wouldn't invest much time into doing that. Luck you, Dogbone06 is sharing some public files for a custom Teensy 4 dev board (Micromod) that has all the eLCDIF pins exposed and you can just use the onboard lcd driver to run the display. If you search the forum, someone posted an example sketch of the eLCDIF configured for 8 bit color/bus so modifying that won't be too hard.
EDIT: found the eLCDIF example https://forum.pjrc.com/index.php?threads/teensy4-lcdif-sample.72657/#post-325068
 
Back
Top