cancel
Showing results for 
Search instead for 
Did you mean: 

LCD touch not working beyond the pixel 480 on a 800 x 480 STM32F746G_DISCO after replacing with NHD-4.3-800480EZ-ASXP-CTP (EK9716B : is the display and FT7311 : is the Touch controller)

XP.1
Associate

STM32F746G_DISCO by default has 480 x 272 . We changed the display to 800 x 480 (EK9716B LCD and FT7311 Touch controller) . 

Then we used the TouchGFX 4.17 / 4.16 to generate the code and updated the parameters to reflect 800 x 480.

The 800x480 images are displayed properly on the LCD.

When we touch the screen at any pixel beyond 480, we can see that STM32TouchController::sampleTouch (x, y) does indeed detect touch.

However the user code in flexButtonCallbackHandler ( ) is not getting called by TouchGFX framework

The same code works well for Simulator.

The lower lever I2C Touch controller driver detects the touch and during debug with disco-board, shows the correct coordinates.

Did anyone face a similar problem ? Why do you think, TouchGFX framework is not calling the user code for a pixel > 480 ?

3 REPLIES 3
KM.9
Associate

@Martin KJELDSEN​  Can you please look into above query and let us know if you have any pointers for debugging the same.

Martin KJELDSEN
Chief III

Hi - Just got back from vacation.

If touch is detected but a certain widget is not receiving touch, please verify that the coordinates read are actually where the widget is located.

sks9691901
Associate

Can you please tell me how you interacted with the touch panel? I am also using the same New Haven display (EK9716B LCD and FT7311 Touch controller) for my application. I have used 4.7K pullup on SDA and SCL lines. I am able to read/write FT7311 registers but cannot get the correct touch points. I am also able to detect the number of touchpoints correctly. Can you please provide any reference on how you implemented your touch functions for FT7311?

I have attached the display datasheet.

Thank You.