Dashboard thoughs

Manu

Well-known member
Hello,

Due to chips shortage, I currently have time to start new projects. With, hopefully, the right chip that can be find in the future :p

From years I always delayed one project because of my lack of experience with this kind of use. I would like to build a car dash. Ok, today I'll start it, or maybe tomorrow in regard with answers I can get there.

I have read many informations about what I need and finally I think my best bet is to use an RGB(24) interface between the LCD screen and the MCU to allow me to have fast update of the screen. This interface is standard and one can have a great choice of screens, which is important. I listed my needs and think that I have to use :

- CAN
- ADC
- GPIO
- external memory (for LCD buffer and some other stuff)
- FS (for storing logs and conf)
- RGB (DOTCLK interface)

Currently, I'd like to know if teensy 4.x would be a good choice for this purpose. I know that there are actually pins limitations to access full RGB pins, but I can build a custom board for this purpose.

The reason : I use teensy since years and I really like it (and know it too). You guys put so many force in writing excellent libraries, etc. Plus Luni VisualTeensy and VisualCode is really cool.

The questions : should I continue to use arduino/pjrc stuff or move to, for example, MCUexpresso ? I have to say that I'm not an Eclipse fan.

The main need in all case : I have to use/dev an new library if I stick with pjrc : eLCDIF. I guess that if I switch to NXP IDE there is already a such library, but I'm unsure that other libraries are as good as teensy ones, if they exists. I mainly think about FlexCAN_T4, TeensyTimerTools, FS. I know that they can be adapted to NXP IDE, but the work should be lighter to adapt/create an RGB library to pjrc rather than adapt all pjrc libraries to NXP ?

Any though is welcome.
Thank you,
Manu
 
The Teensy 4.x seems to have the needed hardware I/O to fit the listed needs, the T_4.1 for extra QSPI RAM or FLASH storage. And all he PJRC and related libraries to make them work with TeensyDuino.

Not clear what the display needs are - a TFT panel the Teensy has libraries for or other? Moving to MCUexpresso would be an adventure.
 
The Teensy 4.x seems to have the needed hardware I/O to fit the listed needs, the T_4.1 for extra QSPI RAM or FLASH storage. And all he PJRC and related libraries to make them work with TeensyDuino.

Not clear what the display needs are - a TFT panel the Teensy has libraries for or other? Moving to MCUexpresso would be an adventure.

Be careful with TFT displays in cars. I find in terms of using camera displays (both rear monitor and electronic viewfinder) that often times TFT displays have one orientation that is problematical when you view it with polarized sunglasses on. On some of the cameras with TFT viewfinders, there are horizontal waves where things are clear and horizontal waves where they are completely unreadable. Then there are other displays that go completely opaque when viewed with polarized sunglasses in one orientation. My daughter bought a 2012 Honda Prius and I discovered that her dashboard display is completely unreadable when you wear polarized sunglasses. Because I need to wear polarized sunglasses all of the time when I'm outdoors due to photophobia which makes my migraines worse, I cannot drive her car. I did have to find adequate non-polarized sunglasses for my wife to use when she drives that car.

Another issue with TFT screens is that they have a narrower viewing angle than OLED has.

So if you can find a reasonably large display that uses OLED instead TFT, use that. OLED doesn't tend to have the problems with polarization that TFT LCD screens do. Now, I tend to think TFT LCD screens are a bit more color accurate than OLED (which tends to supersaturate the colors), but I would rather be able to view the display, and have to deal with slightly different colors.
 
Thank you. For sure an OLED screen will be welcome but I have some doubt about :

- The availability of a 5" 800x480 OLED screen (and it price)
- The time it will last as OLED screen, at least old ones, don't last long. After a some years, they tend to degrade (from my own experience).

Anyway, I'll stick with teensy as this is really a good solution.

Not clear what the display needs are - a TFT panel the Teensy has libraries for or other?
As I need a fast refresh and that there will have many pixels to change, I envisage to use RGB24 interface, not a dedicated chip like ILI or RA ones
 
After some search over the net, it appear that big OLED screen (5" and above) are often driven per MIPI interface. It's also look like i.MRXT106x don't have this feature. It's available on i.MXRT11xx series.
Is this interface can be "soft coded" ?
I guess not, but I prefer to ask.

Thank you,
Manu
 
The RT1062 on the teensy does not have MIPI interface, nor do lower models of the RT10xx
The new RT117x does have though, but it's not a teensy product (yet..)
 
I had a look at OLED screen. There dimensions better fit a phone screen than a car dashboard. They tend to be very wide :-(

So back to LCD displays. They have better size for this purpose (still). With this kind of screen, RGB (DOTCLK) seem to be the very standard when come to performance. Looking at IMXRT1064 Processor Reference Manual, this interface need all the GPIO pins for B0 and B1 buses to allow a full 24bit RGB use (Chapter 35.3.6 and 35.4).
Theses pins are not fully available in any T4 module, even the micromod. So I guess I have to build a specific Teensy 4 for eLCDF and PXP purpose. Does anyone is interested too with this kind of *possible* new module ?
Before going to design it, any interest is welcome as maybe one have a more need that can be design at the same time (SRAM or other).

Best regards,
Manu
 
I have an IPS 3.5” tft running on 8 bit 8080 @65k colors on a Teensy Micromod. It used FlexIO for the port and DMA for async transfers
I can get around 45-60FPS with no issues. Its butter smooth

There is another option, use a Teensy 4.1 with a 7” tft driven via 16bit parallel but no DMA. You can fit the full screen sized framebuffers in PSRAM
https://youtu.be/kmOkUK644m8
The performance is great from what Ian (beermat) has told me.

I wouldn’t rush to design a custom teensy, before considering the options above
 
Hello rezo,
Thank for your help and links. Effectively, there are good results. As there are "dimensions" restrictions with this kind of products, I envisage to have a specific PCB with the MCU and the bootchip directly sold to it, not to use a micromod or a 4.1 due to the height it will add.
This is why I consider to build a custom PCB to develop the code because, with this constraint in mind, it will be benefit to use the real GPIOs needed.
Anyway, maybe (surely) using an 4.1 or a micromod at the beginning may be useful to make a "proof of work".
Best,
Manu
 
Have you thought about using the EVE4 controller with 5", 7" or 10" display? I've been using an EVE2 5" for years in my race cars, and have just moved to an EVE4 7" display with the teensy 4 (1026x600). More than adequate for dash board display, 1000 nits as well. Not gone touch screen as its easier to use buttons when racing rather than touching screen through the steering wheel!
 
Back
Top