SOLVED: Display model WB7"TFT color LCD doesn't shows nothing

Hy Guys,

The info:
7" Display purchased: 5 Inches HDMI Capacitive Touch Screen (Driver free) for Pi, BB Black, PC, Mac Book - Free shipping - DealExtreme
Info from Dx (diagram): http://m2.img.dxcdn.com/CDDriver/153336.docx

The display controler is SSD1963QL9.
Here I find the pdf with the controller info: http://www.techtoys.com.hk/Components/SSD1963QL9/SSD1963_1.1.pdf
I use an Arduino Due with ide 1.56 r2

The program:
"As a good seller" Dx doesn't gives more info from the display unit. When I recive it I just see a plastic bag and the display... no wires, no cd or link with libraries and test programs... :astonished:

So, thanks to another very good posts that I read. I found the UTFT and Utouch libraries to try something.

Actually I'm trying this:

#include <UTFT.h>

// Declare which fonts we will be using
extern uint8_t BigFont[];
extern uint8_t SevenSegNumFont[];

// Set the pins to the correct ones for your development shield
// ------------------------------------------------------------
// Arduino Uno / 2009:
// -------------------
// Standard Arduino Uno/2009 shield            : <display model>,A5,A4,A3,A2
// DisplayModule Arduino Uno TFT shield        : <display model>,A5,A4,A3,A2
//
// Arduino Mega:
// -------------------
// Standard Arduino Mega/Due shield            : <display model>,38,39,40,41
// CTE TFT LCD/SD Shield for Arduino Mega      : <display model>,38,39,40,41
//
// Remember to change the model parameter to suit your display module!
UTFT myGLCD(SSD1963_800,38,39,40,41);

void setup()
{
  myGLCD.InitLCD();
  myGLCD.clrScr();
  myGLCD.setFont(BigFont);
}

void loop()
{
    myGLCD.print("Text rotation", 0, 0);
    myGLCD.setColor(0, 0, 255);
    myGLCD.print("0 degrees", 0, 16, 0);
    myGLCD.print("90 degrees", 319, 0, 90);
    myGLCD.print("180 degrees", 319, 239, 180);
    myGLCD.print("270 degrees", 0, 239, 270);

    myGLCD.setFont(SevenSegNumFont);
    myGLCD.setColor(0, 255, 0);
    myGLCD.print("45", 90, 100, 45);
    myGLCD.print("90", 200, 50, 90);
    myGLCD.print("180", 300, 200, 180);

  while (true) {};
}

It compiles and charge the code without problems... But...

The config:
I see how to configure the pins for Arduino due thanks to the Utft and Utocuh libraries.

| PIN | LABEL | PIN | PIN
| NUM | TFT | ARD | FUNCTION
| | | |
| | | |
| 1 | 3v3 | >> | 3v3 power
| 2 | GND | >> | Ground
| 3 | D0 | 22 |
| 4 | D1 | 23 |
| 5 | D2 | 24 |
| 6 | D3 | 25 |
| 7 | D4 | 26 |
| 8 | D5 | 27 |
| 9 | D6 | 28 |
| 10 | D7 | 29 |
| 11 | D8 | 30 |
| 12 | D9 | 31 |
| 13 | D10 | 32 |
| 14 | D11 | 33 |
| 15 | D12 | 34 |
| 16 | D13 | 35 |
| 17 | D14 | 36 |
| 18 | D15 | 37 |
| 19 | CS | 40 |
| 20 | RS | 38 |
| 21 | WR | 39 |
| 22 | RD | no use |
| 23 | RST | 41 | general reset
| 24 | TE | | Don't know
| 25 | TD0 | 3 | SPI_MOSI
| 26 | INT | 2 | TP_IRQ/IRQ
| 27 | TD1 | 4 | SPI_MISO
| 28 | PWM | | just to regulate backlight
| 29 | TSCK | 6 | SPI_SCK
| 30 | PCS | | Don't know
| 31 | TCS | 5 | T_CS
| 32 | SDCS | | Don't know I think is relationated to sd card...
| 5V | 5V | 5V | Backlight +
| 0V | 0V | 0V | Backlight GND

The problem:
I can't see nothing in my display :roll_eyes: just a white color, and dark blue when 1 min passed.

Can anybody lose time to help? Thanks in advance.

Hy Again,

I just finish to study all initlcc.h with the SSD1963 manual. SO this is the code and the modifications that I think that could helpfull

case SSD1963_800:
	LCD_Write_COM(0xE2);		//PLL multiplier, set PLL clock to 120M
	LCD_Write_DATA(0x1E);	    //N=0x36 for 6.5M, 0x23 for 10M crystal
	LCD_Write_DATA(0x02);
	LCD_Write_DATA(0x54);
	LCD_Write_COM(0xE0);		// PLL enable
	LCD_Write_DATA(0x01);
	delay(10);
	LCD_Write_COM(0xE0);
	LCD_Write_DATA(0x03);
	delay(10);
	LCD_Write_COM(0x01);		// software reset
	delay(100);
	LCD_Write_COM(0xE6);		//PLL setting for PCLK, depends on resolution
	LCD_Write_DATA(0x03);
	LCD_Write_DATA(0xFF);
	LCD_Write_DATA(0xFF);

	LCD_Write_COM(0xB0);		//LCD SPECIFICATION
	LCD_Write_DATA(0x04);  //////changed 0x24 with 18bit
	LCD_Write_DATA(0x60);  //////changed 0x00 serial rgb + dummy
	LCD_Write_DATA(0x03);		//Set HDP	799
	LCD_Write_DATA(0x1F);
	LCD_Write_DATA(0x01);		//Set VDP	479
	LCD_Write_DATA(0xDF);
	LCD_Write_DATA(0x00);  ////// RGB order

	LCD_Write_COM(0xB4);		//HSYNC
	LCD_Write_DATA(0x03);		//Set HT	928
	LCD_Write_DATA(0xA0);
	LCD_Write_DATA(0x00);		//Set HPS	46
	LCD_Write_DATA(0x2E);
	LCD_Write_DATA(0x30);		//Set HPW	48
	LCD_Write_DATA(0x00);		//Set LPS	15
	LCD_Write_DATA(0x0F);
	LCD_Write_DATA(0x00);

	LCD_Write_COM(0xB6);		//VSYNC
	LCD_Write_DATA(0x02);		//Set VT	525
	LCD_Write_DATA(0x0D);
	LCD_Write_DATA(0x00);		//Set VPS	16
	LCD_Write_DATA(0x10);
	LCD_Write_DATA(0x10);		//Set VPW	16
	LCD_Write_DATA(0x00);		//Set FPS	8
	LCD_Write_DATA(0x08);

	LCD_Write_COM(0xBA);
	LCD_Write_DATA(0x0F);		//GPIO[3:0] out 1 

	LCD_Write_COM(0xB8);
	LCD_Write_DATA(0x07);	    //GPIO3=input, GPIO[2:0]=output  4 gpio controled by host
	LCD_Write_DATA(0x01);		//GPIO0 normal

	LCD_Write_COM(0x36);		//rotation
	LCD_Write_DATA(0x22);

	LCD_Write_COM(0xF0);		//pixel data interface
	LCD_Write_DATA(0x04);  ////changed 0x03 now 18 bit


	delay(1);

	setXY(0, 0, 799, 479);
	LCD_Write_COM(0x29);		//display on

	LCD_Write_COM(0xBE);		//set PWM for B/L
	LCD_Write_DATA(0x06);
	LCD_Write_DATA(0xf0);
	LCD_Write_DATA(0x01);
	LCD_Write_DATA(0xf0);
	LCD_Write_DATA(0x00);
	LCD_Write_DATA(0x00);

	LCD_Write_COM(0xD0); ////controls de backlight
	LCD_Write_DATA(0x0D);	

	LCD_Write_COM(0x2C); 
	break;

One more time I don't have succes. I'm starting to speak alone in the dark XD

Me again!

I find an error in the pins config.. :astonished: So I reconnect the pins with the display like this:


| PIN | LABEL | PIN | PIN
| NUM | TFT | ARD | FUNCTION
| | | |
| | | |
| 1 | 3v3 | >> | 3v3 power
| 2 | GND | >> | Ground
| 3 | D0 | 37 |
| 4 | D1 | 36 |
| 5 | D2 | 35 |
| 6 | D3 | 34 |
| 7 | D4 | 33 |
| 8 | D5 | 32 |
| 9 | D6 | 31 |
| 10 | D7 | 30 |
| 11 | D8 | 22 |
| 12 | D9 | 23 |
| 13 | D10 | 24 |
| 14 | D11 | 25 |
| 15 | D12 | 26 |
| 16 | D13 | 27 |
| 17 | D14 | 28 |
| 18 | D15 | 29 |
| 19 | CS | 40 |
| 20 | RS | 38 |
| 21 | WR | 39 |
| 22 | RD | no use |
| 23 | RST | 41 | general reset
| 24 | TE | | Don't know
| 25 | TD0 | 3 | SPI_MOSI
| 26 | INT | 2 | TP_IRQ/IRQ
| 27 | TD1 | 4 | SPI_MISO
| 28 | PWM | | just to regulate backlight
| 29 | TSCK | 6 | SPI_SCK
| 30 | PCS | | Don't know
| 31 | TCS | 5 | T_CS
| 32 | SDCS | | Don't know I think is relationated to sd card...
| 5V | 5V | 5V | Backlight +
| 0V | 0V | 0V | Backlight GND

And It works partiallly!!! :grin:

Well now I'm going to find a solution to:

  • The image is mirrowed
  • The image displayed only in a quarter of the display... I supose that culd be because of changing the 18 bits mode... I have to check it.