Report: Inexpensive SPI based TFT Displays (PCF8833, ST7735, ILI9341)

Hi
I recently ordered some cheap displays to see if i could connect them to my Arduino Boards. Along with this, i decided to write my own library. Of course existing libs (Arduino TFT, UTFT) probably will also work.

Here are my results:

PCF8833/132x132 Color TFT

  • Price: US $15 (free shipping)
  • Shield + Display
  • Com: 9 Bit SPI (slower performance on the Arduino Uno)
  • Arduino Uno: HW and SW SPI with Ucglib
  • Arduino Due: Works, but some sw problems, only SW SPI
  • Libs: Ucglib and UTFT (not tested)
  • Good: Shield connects to Arduino Uno HW SPI pins, three extra buttons
  • Notes: Power supply unreliable, display not fixed, thin connectors to the Arduino Board

ST7735/160x128 Color TFT

  • Price: US $6-7 (free shipping)
  • Breakout Board + Display
  • Com: 8 Bit SPI
  • Arduino Uno: HW and SW SPI with Ucglib
  • Arduino Due: SW SPI, HW SPI not tested
  • Libs: Arduino TFT, Ucglib and UTFT (not tested)
  • Good: Works without level shifters with Uno and Due
  • Notes: Additional resistor required.

ILI9341/320x240 Color TFT Color TFT (Elec Freaks Shield)

  • Price: US $20 (shipping included)
  • Shield + Display
  • Com: 8 Bit SPI
  • Arduino Uno: Only SW SPI (Shield connects TFT to none-HW SPI pins)
  • Arduino Due: Only SW SPI
  • Libs: Ucglib and UTFT (not tested)
  • Good: Reliable and stable shield, works with Uno and Due, excellent TFT
  • Notes: TFT not fully fixed, slow (no HW SPI for the Uno)

ILI9341/320x240 Color TFT (Red Breakout Board)

  • Price: US $6 (free shipping)
  • Breakout Board + Display
  • Com: 8 Bit SPI
  • Arduino Uno: Requires extra hardware (level shifter)
  • Arduino Due: SW SPI tested, HW SPI not tested.
  • Libs: Ucglib and UTFT (not tested)
  • Good: Excellent TFT
  • Notes: Requires extra resistor for the backlight, requires level shifter for Uno.

Shipping took between 2 to 6 weeks (Asia / US to Europa).

One of the displays was broken (4 weeks shipping time):

I have attached Beta 0.02 of my library. User manual for Ucglib is here: http://code.google.com/p/ucglib/wiki/ucglib .

Oliver

ucglib_arduino_v0.02.zip (827 KB)

Great, very interesting !

+karma for all the work you put into displays and for us to grab. Hope this to be a nice reference page for displays that are supported by Ucglib (including those pictures and all). Thanks again.

Hi Nice and usefull post. Where did you buy the displays from ? will they work with a mega2560 ?

All are ordered on ebay.com. Mostly from far east, one from US. Although cheap, there is some risk, that he display is broken (see above).

If the display works with the Arduino Uno, it will also work with the Arduino Mega.

Oliver

Any links for the above displays on ebay?

You will find the items if you just search for the controller name on ebay.com: PCF8833, ST7735, ILI9341 Some of the displays are not available anymore, i ordered them more than 8 weeks ago. But usually you will find a similar display.

Oliver

ILI934x with 32U4 Arduino Pro Micro pinouts: http://forum.arduino.cc/index.php?topic=234601.msg1688777#msg1688777

So fast, I have 7 good ones out if 7 ordered.

Well done Oliver for Ucglib

Do you have in mind to support ot her controller chips like RA8875

Again thanks

Hi

I do not own this device,so i can not test any implementation for this controller. Additionally i focus more on SPI based displays. Not sure whether this controller has an SPI input.

Oliver

The RA8875 supports spi that's why I asked if there is any plan because the controller is very powerful and besides that you can find cheap tft's using it .

Below are the communication it supports Supporting MCU Interface: _ 8080/6800 with 8/16 Data Bus Width _ I2C or 3/4-wire SPI I/F.

It seems to be difficult to find an SPI based display with RA8875 on ebay.

Oliver

I have seen them here http://www.buydisplay.com/default/4-3-tft-lcd-display-module-controller-board-w-serial-spi-i2c-mcu

Ok, looks nice. Still the main problem is the price. Ucglib is just a private project.

Oliver

olikraus: Ok, looks nice. Still the main problem is the price. Ucglib is just a private project.

Oliver

These are available in the $6 U.S.D. range from Hong Kong. I have received 12 out if 12 good ones in excellent condition. They work great with 3.3V 328 @8MHz and I have had no issues over clocked at 16MHz. Ideal mate for those $3 "mini" modules which attach to the back of the display with double-stick foam tape. http://www.ebay.com/itm/141147721733

Bottom line, color display and UNO compatible for under $10 ... The Adafruit GLCD works well with the Adafruit libraries if anyone is concerned about the nature of the UGClib.

Ray

@Ray The request was to support a display with RA8875 controller. This kind of display, i have not seen for less than $10.

Oliver

olikraus: @Ray The request was to support a display with RA8875 controller. This kind of display, i have not seen for less than $10.

Oliver

Thank you, I totally missed the context of the response! I agree, the RA8875 is a different beast.

Regrets,

Ray

Hi Oliver

i have bought a 4 wire spi ILI9341 2.8" display from below link and I have tried it using your library and works great.

Due ---> 2,8" TFT(From BuyDisplay)

4---> pin 27 (LCD_SDI) 5-----> pin 24 (D/C_SCL)

10 ------> pin 23 (LCD_CS) 8--------> pin 25 (/WR_D/C) 7 -------> pin 21 (RESET)

Link http://www.buydisplay.com/default/spi-serial-2-8-inch-320x240-tft-lcd-display-module-ili9341-arduino-stm32 Thanks

Thanks for your report on this display.

Oliver

Oliver, thank you very much! Your library saved my "SPI TFT 1.8". I thaught it's broken, but it just was a wrong lib - Adafruit_ST7735;

Thanks. Good to see, that someone finds Ucglib useful. Also note, that Ucglib is now hosted on github and can be installed directly from the Library Manager of the current Arduino IDE.

Oliver