# \[Solved\] 2.4 TFT LCD shield - 0x4747 - SCREEN WHITE

**URL:** <https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434>\
**Category:** Displays\
**Created:** [August 20, 2017, 5:43pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434 "2017-08-20T17:43:29Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![simoninthelakes](https://avatars.discourse-cdn.com/v4/letter/s/b9bd4f/32.png) [@simoninthelakes](https://forum.arduino.cc/u/simoninthelakes)\
**Post date:** [March 15, 2019, 10:56am UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/21 "2019-03-15T10:56:23Z")

</div>

Thank you for your guidance here David, and all the related MCUFRIEND work over on GutHub, much appreciated!

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 12:29pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/22 "2019-05-22T12:29:56Z")

</div>

Hello!

I´m having the white screen problem with my TFT Touch screen too... 😕  
I´ve tried to solve the problem like you said but i can´t!

This is the link of the product!

> **[Display LCD TFT 2.4" Touchscreen Shield para Arduino](https://www.electrofun.pt/arduino/display-lcd-touchscreen-shield-arduino)**
>
> Se está a procura de um Display LCD para fazer uma interface gráfica com o seu Arduino, encontrou o que precisava.

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 12:48pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/23 "2019-05-22T12:48:35Z")

</div>

Thanks for the link. It shows a red shield with yellow header pins and an AMS1117 regulator U1. The text says that it has an ILI9341 controller.

Please confirm whether the photos of the pcb are accurate.  
Please confirm the ID that is reported on the Serial Terminal e.g. from graphictest\_kbv or diagnose\_TFT\_support

Follow the instructions in #18  
Make notes on paper.

Please type from paper notes to your message.  
Please copy-paste any messages from the Serial Terminal. (Click on the Terminal Screen. Press ctl-A ctl-C to copy. Press ctl-V to paste to your message.)

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 12:58pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/24 "2019-05-22T12:58:49Z")

</div>

I have the product in front of me and it is the same but this my first time ever using an Arduino.... 😕

I´ve followed the instructions but the controller ILI9341 doesn´t even appear on the document...

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 1:08pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/25 "2019-05-22T13:08:39Z")

</div>

Comparing the pcb photos there are some differences...

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 1:30pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/26 "2019-05-22T13:30:09Z")

</div>

You do not need to understand technical things.  
Just describe the difference(s) between the pcb and the photos on the link e.g.

1. colour of header pins. Yellow or Black?
2. presence of regulator U1. Yes or No?

Do you know how to run the Serial Terminal? Click the icon at the top-right of your Sketch window. Set to 9600 baud.

Do you know how to install Libraries?

Everyone has to start with Arduino. There are a lot of things to learn. Many are intuitive if you are familiar with a PC.

If English is not your first language, use Google to translate.

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 1:49pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/27 "2019-05-22T13:49:42Z")

</div>

1- The header pins are yellow

2 - Yes

the only difference is that there are not those two small components called C1 and C2 (as you can see in the link photo) and the other "components" are in slightly diffrent positions...

I don´t think so... 😕 i can´t find the option to change that to 9600 baud. ( i´m using IDE on Windows).

Yes i think so but it´s better if you tell me the right way to install them so i can confirm please.

thanks for all the help you´re providing!

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 1:58pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/28 "2019-05-22T13:58:41Z")

</div>

it´s already in 9600 baud

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 2:16pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/29 "2019-05-22T14:16:07Z")

</div>

> Make sure that you install/upgrade MCUFRIEND\_kbv, Adafruit\_GFX, TouchScreen libraries from the IDE Library Manager.

Sketch-\>Include Library-\>Manage Libraries... (works with all IDEs)

Then search for "kbv" or "GFX" to find the library. Click on [Upgrade] or [Install]

The current IDE v1.8.9 can reach the Library Manager via Tools-\>Library Manager

Regarding Serial Terminal:

1. did you see any text ?
2. have you tried to copy-paste ?

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 2:37pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/30 "2019-05-22T14:37:34Z")

</div>

ok the libraries are ready and I downloaded the touch screen library from the internet and then I used the function: add zip library.

When I ran the diagnostic\_TFT\_suport and opened the Terminal Serial appeared this:

Diagnose whether this controller is supported  
There are FAQs in extras/mcufriend\_how\_to.txt

tft.readID() finds: ID = 0x0

MCUFRIEND\_kbv version: 2.9.8

This ID is not supported  
look up ID in extras/mcufriend\_how\_to.txt  
you may need to edit MCUFRIEND\_kbv.cpp  
to enable support for this ID  
e.g. #define SUPPORT\_8347D

New controllers appear on Ebay often  
If your ID is not supported  
run LCD\_ID\_readreg.ino from examples/  
Copy-Paste the output from the Serial Terminal  
to a message in Displays topic on Arduino Forum  
or to Issues on GitHub

Note that OPEN-SMART boards have diff pinout  
Edit the pin defines in LCD\_ID\_readreg to match  
Edit mcufiend\_shield.h for USE\_SPECIAL  
Edit mcufiend\_special.h for USE\_OPENSMART\_SHIELD\_PINOUT

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 2:55pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/31 "2019-05-22T14:55:00Z")

</div>

Please do not install from ZIP. The Library Manager is much better. I found [Adafruit Touchscreen](https://github.com/adafruit/Adafruit_TouchScreen) from the Library Manager. It will install with a click from the Manager. (you do not need to visit Github)

You can run the LCD\_ID\_readreg sketch. I _might_ be able to help.

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 3:01pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/32 "2019-05-22T15:01:53Z")

</div>

Is that library compatible with my non Adafruit tft shield?

ok i´ll do it

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 3:08pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/33 "2019-05-22T15:08:52Z")

</div>

This is what i got from the LCD\_ID\_readreg:

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) 00 00 Get Power Mode  
reg(0x000C) 00 00 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

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 4:02pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/34 "2019-05-22T16:02:12Z")

</div>

That looks BROKEN to me.

You can try forcing the ID e.g. edit setup() function in graphictest\_kbv.ino

```cpp
void setup(void) {
    Serial.begin(9600);
    uint32_t when = millis();
    //    while (!Serial) ;  //hangs a Leonardo until you connect a Serial
    if (!Serial) delay(5000);          //allow some time for Leonardo
    Serial.println("Serial took " + String((millis() - when)) + "ms to start");
    //    tft.reset();                //hardware reset
    uint16_t ID = tft.readID(); //
    Serial.print("ID = 0x");
    Serial.println(ID, HEX);
    if (ID == 0xD3D3) ID = 0x9481; // write-only shield
//    ID = 0x9329;                            // force ID
    tft.begin(ID);
}

```

change the "force ID" line to 0x9320 or 0x9329 e.g.

```cpp
    ID = 0x9329;                            // force ID

```

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 4:13pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/35 "2019-05-22T16:13:55Z")

</div>

Do I need to execute that code?

i´ve executed the graphictest\_kbv and the result in the Serial Terminal was:

Serial took 0ms to start  
ID = 0x0

(i´m using the COM8 door)

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 4:19pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/36 "2019-05-22T16:19:23Z")

</div>

Is it possible that i´m doing something wrong?

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 4:26pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/37 "2019-05-22T16:26:17Z")

</div>

You have "graphictest\_kbv.ino" in your IDE "edit window"

Find the setup() function. It is near line #85.

You just need to delete the two slash characters `//` at the left of line #96

Then click the [Upload] icon (second from left)

It will still report ID = 0x0 to the Serial Terminal.  
But the TFT _might_ work with ID=0x9320 or with ID=0x9329

David.

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 4:35pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/38 "2019-05-22T16:35:46Z")

</div>

I can´t seem to find that on the edit window....

---

<div class="post-metadata">

**Author:** ![david\_prentice](https://avatars.discourse-cdn.com/v4/letter/d/96bed5/32.png) [@david\_prentice](https://forum.arduino.cc/u/david_prentice)\
**Post date:** [May 22, 2019, 4:40pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/39 "2019-05-22T16:40:31Z")

</div>

Use ctl-F to search for "force" or "setup"

---

<div class="post-metadata">

**Author:** ![Ricardo\_da\_Silva](https://avatars.discourse-cdn.com/v4/letter/r/47e85d/32.png) [@Ricardo\_da\_Silva](https://forum.arduino.cc/u/Ricardo_da_Silva)\
**Post date:** [May 22, 2019, 4:44pm UTC](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434/40 "2019-05-22T16:44:22Z")

</div>

While running the graphictest.kbv?

[Previous page](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434.md?page=1)

[Next page](https://forum.arduino.cc/t/solved-2-4-tft-lcd-shield-0x4747-screen-white/476434.md?page=3)
