Questions? Call us: +1 760-918-6722

Using SPI interface

Hi, we have an application where the display cannot be located right next to the processor. In some cases, it could be a meter away. We want a simple way to do that using common low cost components. We have developed an interface using impedance-matched drivers, 20-conductor ribbon cable, and good board design, and this works reliably using other vendors 2.8" 320x240 touchscreen. We use 4-wire SPI and we do read the display in part to confirm it is still connected and working. We use the XPT2046 res touch now but are open to cap touch. The ILI9341 specifies a SPI clock of 10 MHz for reading (oddly writes are faster if I recall correctly), so we use that. We use this in test fixtures and so far it works flawlessly testing as the UI for thousands of board tests. In testing we have driven up to 3 meters of cable between controller and display! But that Chinese touchscreen rapidly fades out in less than a year (we buy direct from vendor, not eBay or alibaba). This is an industrial system so we need a more long-life 2.8" display.

We are using ARM Cortex M4 from Freescale. We don't have an HDMI or 24-bit wide RGB interface. We are not showing video or animation, just simple UI buttons and status text. We have developed a library for dynamically-sized, algorithmically-generated buttons instead of fixed-size GIF or JPG. The performance is more than adequate for a UI, and there is no pile of fixed-size icons consuming code memory.

We have tried some of the "premade" embedded displays but they are not open source, APIs are limited, much more expensive, and we have had issues with bugs and reliability there. Our simple code works fine over SPI, and with touch controller. Our code is open source and builds on other open source projects. We don't want to get locked into one vendor custom API and hardware. Been there, done that.

Now in addition to the 2.8" we have a new application where the customer wants a larger screen. So we are looking at your 5" touch. No one (Mouser or Digikey) has stock on the cap touch so I guess it will be resistive.... but you caution against using SPI because it is slow. And I don't see a SPI interface option in the res touch DT050TFT datasheet. The ILI6122 datasheet doesn't seem to include SPI support. So is SPI really an option?

So here are my questions.

A - What are our options for 5" touchscreen

  1. res or cap touch up to 5", 800x480
  2. display remote from controller by up to one meter
  3. preferably 4-wire SPI interface for simple GUI, no video or animation
  4. useable in high ambient light industrial yard, in a large covered work area. Not outdoors but neither is it an indoor setting

B- More reliable ILI9341 smaller touchscreen

  1. res or cap touch using ILI9341 4-wire SPI
  2. at least 2.8", could be larger (3.2 or 3.5?)
  3. 320x240 resolution is OK, there's a limit to the ILI9341
  4. display remote from controller by up to one meter
  5. preferably 4-wire SPI interface for simple GUI, no video or animation
  6. using indoors in factory setting or retail store

Are we wrong to be looking at TFT touch for the 5" in this application? Do we have to instead look at character RGB backlit display with external keypad/navigation? Something like 128240D-RGB 92x53 mm (about 4.2" diagnonal)? Can we overlay a touchscreen on that?

It seems like there should be a simple solution to this. Maybe I am missing something.


Bruce Boyes


engineering_seacomp's picture
August 30, 2018

We have many customers using SPI over a 1 foot for smaller displays, but I do not recommend for larger displays like 5".  The resolution is higer, so you must send more data in the same amount of time for changes not be noticiable in the User Interface.  More data means higher clock rate.  High clock rate means more reflections and loss of signal integrety at longer lengths.  Also consider radatiated emissions.

The most ideal solution is going to be LVDS (our 7" display), or you could make a converter board from RGB to LVDS.  LVDS is meant to carry high data rate with low radiated emssions (since it uses differential signal).

A - What are our options for 5" touchscreen

  • The DT050TFT-PTS 5” capacitive touch TFT display is currently available for purchase on Digikey: The resistive touch version is also available:
    • This display has an RGB interface and is not available with SPI.
    • This would not be recommended for distances longer than a few inches due to EMI and signal integrity issues.
  • The DT070BTFT module is available with an LVDS interface, which is better suited for distances longer than a few inches (and is available with resistive or capacitive touch) at higher data rate.
  • You can use SPI interface DT035BTFT (available with resistive or capacitive touch).
  • When using SPI, clock speed will affect the distance at which you can reliably transmit a signal.


B- More reliable ILI9341 smaller touchscreen

  • Displaytech will launch a standard 2.8” TFT with capacitive touch screen and SPI interface within the next 6 months which will be available for purchase on Digikey and Mouser.  It uses the capactivie touch shown own our website, which is the same interface for the larger pcap like 7".
  • Displaytech currently offers a 2.8” TFT with resistive touch and SPI interface on Mouser: - It's worth mentioning that this is a "high efficiency" module due to the higher efficiency backlight LEDs (according to the website description). This may improve on the problem the customer is having with the display fading. However, the DT028ATFT datasheet doesn't list any details about the LED lifetime, so I couldn't give you specifics on how much more efficient they are than the "original" version.