Good evening All,
Some time ago I acquired a 800x480 tft screen (details of the model are here: 3.97inch 16BIT Module NT35510 SKU:MRB3973 - LCD wiki)
The model supports 8bit or 16 bits and mine is configured for 16 bits.
(Solder R3 and R4 with 0Ω and disconnect R2 and R6: select 16-bit data bus mode (default), use DB0~DB15 data pin)
I then acquired a 34 pins adaptor (the TFT LCD Mega Shield V3.0 as can be seen in the pictures here: https://www.auselectronicsdirect.com.au/3.2-inch-touchscreen-lcd-screen-shield-for-arduino)
I am now trying to marry the 2 and make them work with an Arduino Mega 2560.
I have amended the MCUFRIEND_SHIELD.H file to indicate "#define USE_SPECIAL" and amended the "MCUFRIEND_SPECIAL.H" to select the shield that would work.
The only one that would is: #define USE_MEGA_8BIT_SHIELD
This surprised me as I would have expected the 16BITS shield to work....but it did not (I get a blank screen).
The results that I get with the USE_MEGA_8BIT_SHIELD are very random: A collection of horizontal green lines.
The "tft.readID()" functions returns the generic "0xD3D3" value and therefore the library replaced it by 0x9481".
A few tests indicated that a few other ID would "work" (0x9329, 0x9486, 0x8357) but the display remains random (altering the controller ID only affects the color of the random lines: Green, White, or Red in the main).
I understand that the Shields are "write only" and that because of this the "LCD_ID_readreg" will not return any usable data.
I was wondering if any one had managed to make one of these 3'97 screens work with the MCUFRIEND Library.
Regads
H