Hi Guys. I hope someone can help me on this.
I recently bought a 3.95" TFTLCD for arduino Mega 2560 (ili9488) by MCUFriend. It comes with a XPT2046 for touch control.
Here is the picture.
upload picture without account
Apparently is a 8bit
I could make it work with the following libraries -> libraries СанСаныч от Slider ( UTFT,UTouch,tinyFat,UTFT_tinyFAT,Adafruit_TFTLCD,SD ) 3.95 TFT LCD for arduino mega 2560(ili9488) .rar — Yandex.Disk from this russian forum -> 3.5" TFT LCD красный меговский + mega 2560 R3 . РЕШЕНО ! + как решить другие ! | Аппаратная платформа Arduino
The issue is: I can't calibrate the display properly. Using the "UTouch_Calibration" sketch and replacing new calibration values in UTouchCD.h does not work properly. After calibration, using the UTouch_ButtonTest sketch doesn't work properly either (no matter what precision I use, from LOW to EXTREME). It doesn't makes any difference.
When I first upload the UTouch_Calibration sketch i realised that the Text was rotated 180°, so editing the file "initlcd.h"
in LCD_Write_DATA(0b10001000);
rotated the screen to a properly position.
//case ILI9327_8:
//9488
delay(500);
LCD_Write_COM(0xE0);
LCD_Write_DATA(0x00);
LCD_Write_DATA(0x07);
LCD_Write_DATA(0x10);
LCD_Write_DATA(0x09);
LCD_Write_DATA(0x17);
LCD_Write_DATA(0x0B);
LCD_Write_DATA(0x40);
LCD_Write_DATA(0x8A);
LCD_Write_DATA(0x4B);
LCD_Write_DATA(0x0A);
LCD_Write_DATA(0x0D);
LCD_Write_DATA(0x0F);
LCD_Write_DATA(0x15);
LCD_Write_DATA(0x16);
LCD_Write_DATA(0x0F);
LCD_Write_COM(0xE1);
LCD_Write_DATA(0x00);
LCD_Write_DATA(0x1A);
LCD_Write_DATA(0x1B);
LCD_Write_DATA(0x02);
LCD_Write_DATA(0x0D);
LCD_Write_DATA(0x05);
LCD_Write_DATA(0x30);
LCD_Write_DATA(0x35);
LCD_Write_DATA(0x43);
LCD_Write_DATA(0x02);
LCD_Write_DATA(0x0A);
LCD_Write_DATA(0x09);
LCD_Write_DATA(0x32);
LCD_Write_DATA(0x36);
LCD_Write_DATA(0x0F);
LCD_Write_COM(0xB1);
LCD_Write_DATA(0xA0);
LCD_Write_COM(0xB4);
LCD_Write_DATA(0x02);
LCD_Write_COM(0xC0);
LCD_Write_DATA(0x17);
LCD_Write_DATA(0x15);
LCD_Write_COM(0xC1);
LCD_Write_DATA(0x41);
LCD_Write_COM(0xC5);
LCD_Write_DATA(0x00);
LCD_Write_DATA(0x0A);
LCD_Write_DATA(0x80);
LCD_Write_COM(0xB6);
LCD_Write_DATA(0x02);
LCD_Write_COM(0x36);
LCD_Write_DATA(0b10001000); // было 0x48 0b01001000 , чтобы перевернуть надо 0x88 0b10001000
LCD_Write_COM(0x3a);
LCD_Write_DATA(0x55); //55-65k 56-262k
LCD_Write_COM(0xE9);
LCD_Write_DATA(0x00);
LCD_Write_COM(0XF7);
LCD_Write_DATA(0xA9);
LCD_Write_DATA(0x51);
LCD_Write_DATA(0x2C);
LCD_Write_DATA(0x82);
LCD_Write_COM(0x11);
delay(120);
LCD_Write_COM(0x29);
delay(500);
// break;
I need to mention that I tried to calibrate with both screen rotations and the problem remains.
Another issue that I noticed is that when running the UTouch_QuickDraw sketch the drawing is almost imposible, very imprecise and it draws dots all over the screen. I guess that this has to be a calibration issue?
Well, hope someone can help me!
Thanks for your time!