Go Down

Topic: Which controller for this TFT screen 3.5 inch (Read 147 times) previous topic - next topic

krisduv

Hello everyone

I need help with a TFT screen like this one :
https://fr.aliexpress.com/item/Free-shippping-LCD-module-3-5-inch-TFT-LCD-screen-3-5-for-Arduino-UNO-R3/32679222857.html

I don't know which controller it is. After reading some topics on this forum I installed MCUFriend_kbv and ran LCD_ID_readred.

Here is the serial output :

Read Registers on MCUFRIEND UNO shield
controllers either read as single 16-bit
e.g. the ID is at readReg(0)
or as a sequence of 8-bit values
in special locations (first is dummy)

reg(0x0000) 00 00   ID: ILI9320, ILI9325, ILI9335, ...
reg(0x0004) 00 00 00 00   Manufacturer ID
reg(0x0009) 00 00 00 00 00   Status Register
reg(0x000A) 08 08   Get Power Mode
reg(0x000C) 66 66   Get Pixel Format
reg(0x0061) 00 00   RDID1 HX8347-G
reg(0x0062) 00 00   RDID2 HX8347-G
reg(0x0063) 00 00   RDID3 HX8347-G
reg(0x0064) 00 00   RDID1 HX8347-A
reg(0x0065) 00 00   RDID2 HX8347-A
reg(0x0066) 00 00   RDID3 HX8347-A
reg(0x0067) 00 00   RDID Himax HX8347-A
reg(0x0070) 00 00   Panel Himax HX8347-A
reg(0x00A1) 00 00 00 00 00   RD_DDB SSD1963
reg(0x00B0) 00 00   RGB Interface Signal Control
reg(0x00B4) 00 00   Inversion Control
reg(0x00B6) 00 00 00 00 00   Display Control
reg(0x00B7) 00 00   Entry Mode Set
reg(0x00BF) 00 00 00 00 00 00   ILI9481, HX8357-B
reg(0x00C0) 00 00 00 00 00 00 00 00 00   Panel Control
reg(0x00C8) 00 00 00 00 00 00 00 00 00 00 00 00 00   GAMMA
reg(0x00CC) 00 00   Panel Control
reg(0x00D0) 00 00 00   Power Control
reg(0x00D2) 00 00 00 00 00   NVM Read
reg(0x00D3) 00 00 00 00   ILI9341, ILI9488
reg(0x00D4) 00 00 00 00   Novatek ID
reg(0x00DA) 00 00   RDID1
reg(0x00DB) 00 00   RDID2
reg(0x00DC) 00 00   RDID3
reg(0x00E0) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   GAMMA-P
reg(0x00E1) 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   GAMMA-N
reg(0x00EF) 00 00 00 00 00 00   ILI9327
reg(0x00F2) 00 00 00 00 00 00 00 00 00 00 00 00   Adjust Control 2
reg(0x00F6) 00 00 00 00   Interface Control

As you see, a lot of 00 ...

Thank you for your time.

Christophe


david_prentice

I don't know.   

You can test every register by editing the setup() function.   If you find anything other than 0x00,   let me know.    Ignore reg(0x2E) and reg(0x3E) because they just read GRAM.

You can enable every SUPPORT_xxx macro and try forcing every 320x480 controller ID.

Please let me know how you get on.

David.


ZinggJM

Hi

Sorry to interfere, but I may have the same display; I bought it from

https://www.aliexpress.com/item/Free-shipping-LCD-Display-Module-TFT-3-5-inch-TFT-LCD-screen-for-Arduino-UNO-R3/32579880571.html

It identifies itself  as ILI9481 and has readable registers.

But you never know, the same shield can shoulder different TFTs.
Maybe there is less confusion with 3.5" displays than with 2.4"

Jean-Marc

david_prentice

#3
May 19, 2017, 04:37 pm Last Edit: May 19, 2017, 04:37 pm by david_prentice
I think that I originally replied to the OP from a Tablet.   Looking at his link on a PC,  yes I am 99.5% certain this is an ILI9481 on a Blue Uno Shield.    If it had a Red pcb,  all bets are off.

These ILI9481 shields are prone to overheating.   I would upload the graphictest_kbv sketch from MCUFRIEND_kbv onto your Arduino.   Unplug the power.    Mount the (cold) Shield.   Plug the power again.
The sketch should run on a cold screen.

If and when it crashes,  you probably get a white screen.   Place your wrist against the glass.   Does it feel hot?   Remove the power.

Mind you,  I would still expect the LCD_ID_readreg sketch to give some output even if the screen is hot.

David.

krisduv

Hello

Thank you very much for your reply David.

Like you suggested, I tested every registers. Here are the ones that are not null :
reg(0x000A) 08 08 08 08 00 00 00   f.k
reg(0x000C) 66 66 66 66 66 66 66   f.k
reg(0x002E) F8 F8 A8 38 54 AC 5C   f.k
reg(0x003E) 94 F8 A8 38 54 AC 5C   f.k
reg(0x00C6) 02 02 02 02 02 02 02   f.k

I also enabled every SUPPORT macro in MCUFRIEND_kbv.cpp and forced ID of every SUPPORT macro in graphictest_kbv.ino

The only one that produces a result is 0x9488. With this ID, sometimes the screen goes black with some green or red lines.

I don't have a UNO. I test the screen with a Nano. I don't think it's a problem but just in case... Is it ?

I hope those information can help you to help me.

Again, thank you for your time.

Christophe

david_prentice

So the only response is from regs 0x0A, 0x0C, 0xC6

I have no idea which make or model.

I would always be happier with a properly mated Shield.   The Nano has no proper headers.
Why not plug it into a friend's Uno, Mega, Zeo, Due, ... ?

David.

Go Up