TFT LCD Shield unknown ID (9595)


I have a question regarding a TFT LCD Shield for an arduino uno. I have read the ID of the screen with the function tft.readID. With the first screen I got 9325 as the ID a I could get the screen running (exept for the touch function but I´m working on that). Both screens are from defferent ebay sellers.

Now the problem: With the second screen I bought I got the ID 9595. I searched for quite some time but I could not finde this problem anywhere. I can´t get the screen to show anything because the ID 9595 is not defined in the libraries i have. Does anyone know if there is a library for this chip outthere? Or maybe one of you figured out how to controll this chip an cant give me the nessecery code.

Hier is an code example of what I need for the other working screen.

if(driver == ID_932X) {

    uint16_t t;
    switch(rotation) {
     default: t = 0x1030; break;
     case 1 : t = 0x1028; break;
     case 2 : t = 0x1000; break;
     case 3 : t = 0x1018; break;
    writeRegister16(0x0003, t ); // MADCTL
    // For 932X, init default full-screen address window:
    setAddrWindow(0, 0, _width - 1, _height - 1); // CS_IDLE happens here



I also have display with ID 9595. After many attempts I found library that works with it: MCUFRIEND_kbv. There was necessary to modify code a little. In MCUFRIEND_kbv.cpp: original

//#define SUPPORT_68140           //very untested
#define SUPPORT_8347D

//costs about 472 bytes, 0.27s modified

#define SUPPORT_68140             //very untested
//#define SUPPORT_8347D                   //costs about 472 bytes, 0.27s

Please run LCD_ID_readreg.ino and copy-paste the output from the Serial Terminal.

It does look like you have an HX8347-I. Yes, define SUPPORT_HX8347D would be correct.

Do not modify the library unless you understand what you are doing.