Needed info on Chinese ILI9481 IPS LCD display

Hello, I was looking for an LCD display for my arduino project.

I was considering this one - link

Specifically, the last option - 3.5inch IPS 320X480 ILI9481. I plan on connecting it to an esp8266 via SPI.

I had a few questions -

  • Has anyone used this one or a similar LCD module?
  • What library would I need to drive it?
  • Since the LCD module itself does not have an SD card slot, can I use a separate SD card module via SPI and load images from it and display them on the LCD?
  • Should I even go for it, or should I stay away from it? Are there any better/more reliable alternatives I should go for instead?

I was hoping I could find an LCD that's not tiny and has reasonable image quality. However I live in a 3rd world country so I have very few options.

Any advice is appreciated!

Yes, all the screens have access to the IM# pins. So you can select either 3-wire (9-bit) or 4-wire (8-bit+DC) SPI. ESP8266 can drive 9-bit and 8-bit SPI with no trouble.

You can share the SPI bus with an SD card. Note that ILI9488 SDO pin does not 3-state properly. The ILI9341 behaves fine. I can't test the ILI9481 SDO pin because I only have bidirectional SDA pin on the ILI9481 SPI display that I own.

The obvious answer is. Don't connect SDO pin. If you want to read GRAM or registers, use the SDI pin bidirectionally.

Note that 9-bit and bidirectional is a nightmare with AVR and most STM32. But your ESP8266 should be fine. (Untested)

Bear in mind that you have to design your own pcb to receive the ribbon. Either by mounting a ZIF connector or soldering directly to the pcb. Life is much easier with a display + SD + Touch Controller chip that is already mounted on a pcb. For modest number of files you can use SPIFFS i.e. no need for SD.

David.

Hello David, thanks for your response.

Bear in mind that you have to design your own pcb to receive the ribbon.

That was the first thing that came to my mind when I was browsing for LCD modules. The product page has a 40pin breakout for the LCD. I'm assuming I can use that?

Although that does not solve the issue of mounting the LCD module itself. It does not have any screw holes as I can see. How is it supposed to be mounted?

You can share the SPI bus with an SD card. Note that ILI9488 SDO pin does not 3-state properly. The ILI9341 behaves fine. I can't test the ILI9481 SDO pin because I only have bidirectional SDA pin on the ILI9481 SPI display that I own.

The obvious answer is. Don't connect SDO pin. If you want to read GRAM or registers, use the SDI pin bidirectionally.

Good to know I can use a separate SD card module as well.

So this is what I should do - Set IM# to 110(4 wire SPI mode) and connect SDO to ground?(is a resistor required?)

Thanks for the SPIFFS bit, I forgot I could use it as well.

The ribbon folds underneath.
You use double sided sticky tape or foam tape to mount to a pcb.

You may be using SPI but there are still several other connections to the ribbon. e.g. backlight, IM#, ...
XP, XM, YP, YM if you are using a Touch screen..

Leave SDO open.

I strongly advise buying an SPI screen that is already mounted on a pcb e.g. from BuyDisplay or Surenoo.
This will be much easier for a prototype.

If you intend to buy 100s of screens you can do a good deal with a Chinese agent.
You need to design and make custom pcb for your product.

David.

Ah, pity. Alright, I'll order a pre-assembled LCD for now. Are there any guides for creating PCBs out of dot PCBs for these LCDs?

Just look at how Ebay module pcbs are designed.
You connect #1 - #16 and #33 - #40.

You will probably control the backlight with a transistor.
But otherwise it is not much more than connecting to your ESP8266 and the odd 100nF on VCC.

Don't worry about controller. We can show you how to use ILI9481, ILI9488, HX8357, ...

David.

Thank you, David.

I had a look at this LCD breakout board schematic by adafruit - link

What I understood was - ignoring the SD card module, they are using an LED driver IC to control the backlight, and a voltage regulator(with some auto reset IC) to feed the correct voltage to the LCD. Apart from that there's some bypass caps on VCC and, some diodes on the LED driver IC.

So in essence I have the following -

  1. 4 touchscreen pins
  2. VCC and GND at 3.3V
  3. Reset pin
  4. the 3 SPI pins(SDI, CS and SCLK)
  5. 4 backlight pins
  6. 3 pins for selecting the mode(IM#)

If I'm using SPI, these are all the connections I'll have to make. Am I correct?

I know how to join wires and connect resistors and bypass caps so if I feed the voltage through a buck converter at 3.3V, that only leaves me with the backlight that I'm not sure how to connect.

What kind of transistor will I need for the backlight? I have some IRLB8721 that I used to test 12V LED strips but I'm sure that would be overkill.

Also, could I instead connect say a potentiometer to control the brightness manually?

I have never seen a TFT with 24V backlight.
They are often regular white LEDs in parallel. Just feed anodes from 3.3V. And switch the cathodes with a transistor.

Just look at other schematics.

Obviously Adafruit schematic is matched to the Adafruit product.
I would check availability and bulk prices if you want to commit yourself to a specific display.

I have used this Surenoo display

And this BuyDisplay screen

I suggest that you ask Adafruit for help with their 24V backlight.
Or at least post a link to the specific Adafruit product.

David.

I used that schematic to understand what a breakout PCB for an LCD looks like, as I'm not at the level where I can look at the image of a PCB and tell what SMD components there are in it yet. I am not buying the adafruit display itself.

The LCD I linked to originally does have a 3.3V LED backlight. What transistor would I use for that?

A 3.5" backlight will draw 80 - 150mA

Any switching transistor that can sink 200mA with an hFE > 100. i.e. 2-3mA base current would saturate.

David.

Will a 2N2222 work? According to the datasheet it has a max continuous Ic of 600ma and Ib of ~20mA.

Also, if I follow this sparkfun transistor guide, I understand that -

  • 3.3V(from a buck converter not from esp8266) goes to backlight Anode and Cathode connects to transistor collector
  • esp8266 GPIO connects to transistor base
  • emitter connects to ground

Is that correct?

I assume the esp8266 ground has to be connected to the 3.3V source ground in order for this to work?

The 2N2222 is pretty useless.
hFE (min) = 100 @ 150mA i.e. Ib = 1.5mA
hFE (min) = 30 @ 600mA i.e. Ib = 20mA

I would prefer a better hFE. And a better Vce (SAT)
I doubt if the ESP8266 can drive 20mA. Check the datasheet.

It is always wise to drive the Base hard when switching. This ensures saturation. And hence the power dissipation. i.e. Ic x Vce

The Sparkfun site shows the basics.

Buy a ready-made board. Then copy the known working pcb layout and schematic.

David.

No. TIP120 has a crap Vce (SAT). And the Vbe is fairly high.

I am sure that a hardware expert can answer your questions.

David.

Alright, I suppose the basic question has been answered - that the LCD in the OP can be used, just that a PCB has to be made for it. A suitable transistor has to be used to control the backlight.

I'll ask for transistor recommendations elsewhere then. I will make a new thread in case I have any problems when I receive the display.

Thank you for helping out.