Hx8347 and Mega2560 Pro doesn't display something

Hi to all
Maybe another clone of issue. But i cannot found same issue like i get.

I get hx8347 plug to Mega 2560 pro chinese clone with CH340.
I redone many wiring connections on my breadboard. I adapting the Mega2560 classic pinout head to the pro version; pin to pin.
I test many .ino prog from MCUFRIEND_kbv library, but display screen doesn't works. Always White screen.
Tested: aspect_kbv.ino, graphictest_kbv.ino and others ...

Instead, the display screen control seems to works when i'm running calibrate or LCD_ID_Reader program samples. Touching the screen with calibrate program gave answers, but no display like following logs:

LCD_ID_Reader:
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) 95 95 ID: ILI9320, ILI9325, ILI9335, ...
reg(0x0004) 00 00 00 00 Manufacturer ID
reg(0x0009) 3F 3F 3F 3F 3F Status Register
reg(0x000A) 00 00 Get Power Mode
reg(0x000C) 01 01 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) 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 03 GAMMA-P
reg(0x00E1) 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 06 GAMMA-N
reg(0x00EF) 14 14 14 14 14 14 ILI9327
reg(0x00F2) 08 08 08 08 08 08 08 08 08 08 08 08 Adjust Control 2
reg(0x00F6) 00 00 00 00 Interface Control

TouchScreen_Calibr_native:
TouchScreen.h GFX Calibration
Making all control and bus pins INPUT_PULLUP
Typical 30k Analog pullup with corresponding pin
would read low when digital is written LOW
e.g. reads ~25 for 300R X direction
e.g. reads ~30 for 500R Y direction

Testing : (A2, D8) = 24
Testing : (A3, D9) = 30
ID = 0x9595

=====After one touch on the screen ==========

*** COPY-PASTE from Serial Terminal:
const int XP=8,XM=A2,YP=A3,YM=9; //4096x320 ID=0x9595
const int TS_LEFT=0,TS_RT=0,TS_TOP=0,TS_BOT=0;

PORTRAIT CALIBRATION 4096 x 320
x = map(p.x, LEFT=0, RT=0, 0, 4096)
y = map(p.y, TOP=0, BOT=0, 0, 320)

LANDSCAPE CALIBRATION 320 x 4096
x = map(p.y, LEFT=0, RT=0, 0, 320)
y = map(p.x, TOP=0, BOT=0, 0, 4096)

*** UNUSUAL CALIBRATION RANGES 0 0

The componants:
Screen display:
https://fr.aliexpress.com/item/1323930290.html?spm=a2g0o.order_list.0.0.1e315e5bfEKyAR&gatewayAdapt=glo2fra

Controller:

So I supose the LCD_RS, LCD_CD, LCD_WR, LCD_RD pins connections are correct, maybe the mistake are around LCD_01 to LCD_07.

I connected like Mega 2560 classic, I think is good.
Are there somebody to help me to make sure the connections are fine, or maybe another issue to figure on ?

First off. Please post a link to the actual screen that you have bought. e.g. Ebay sale page.

Secondly. Please disable the timestamps on the Serial Terminal. It makes it un-paste-able for your readers.

If you have bought a regular Shield, you should plug it into the MEGA2560 as Nature intended.
There is no need for a breadboard.

David.

Has it got a contrast pot?

Hi David
I updated the original post.

About the mega controller..is the pro version not the classic version

Hi
no pot... see in my updated post link about the componants.

God invented Shields and the MEGA2560 comes with header sockets.

Since your readreg display "looks" correct, I guess that you have wired the Shield correctly. It will never be as reliable as proper MEGA2560 sockets.

From the Mcufriend_how_to.txt

10. It currently supports UNO shields with "mcufriend.com" pcbs with controllers:
...
HX8347-I 240x320  ID=0x9595 #define SUPPORT_8347D
...
Most of these controllers are #define SUPPORT_xxxx by default.
You can save Flash memory on a Uno by commenting out the macro(s) in MCUFRIEND_kbv.cpp

So you have to edit MCUFRIEND_kbv.cpp to enable the HX8347D

Oh. you often get inane replies about 16x2 LCD style contrast. Nothing to do with TFT displays.

David.

Oups, i forget to check that after reinstalling library properly.
Yes it's work with samples.
Thanks
:slight_smile:

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.