TouchGFX Custom Board Design
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-18 10:26 PM
I am using STM32H7B33IIT6 MCU and 800x480 TFT. I can upload images to TFT, but I couldn't get the touch parts to work. But the same program works in STM32H7B3I-DK. What steps do I need to do?
- Labels:
-
STM32H7 Series
-
TouchGFX
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 12:16 AM
Touchscreen is independent hardware. Usually it is an specialized external ADC on SPI or I2C bus. Check original schematics and your custom PCB. For example https://www.st.com/resource/en/schematic_pack/mb1332-h7b3i-b02_schematic.pdf shows that screen uses bus ​I2C4. Your should use the same bus and the same touchscreen IC - only then your firmware would work on both boards.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 1:37 AM
Thank you for answer but I use YB-TG800480S28A-C-A Yeebo screen externally, I made the pin connections accordingly. I connected I2C to I2C4 as in STM32H7B3I-DK. The screen is working. But the touch part is not working.
Do I need to write a special function for I2C? Can't I use I2C for STM32H7B3I-DK?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 2:06 AM
It looks like TG800480S29A uses ILI2117A touchscreen controller. You can check it on your screen. ​But original display board has RK043FN48H-CT672B display with FT5336GQQ controller (default address 01110000). You definitely need your own driver for your touchscreen controller.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 2:23 AM
Thank you for return. Shouldn't I change the I2C address and run it?
FT5336GQQ I2C Address > 0x70
ILI2117A I2C Address > 0x41
I made the change but it still doesn't work? Why is this happening? Could you help?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 3:17 AM
I doubt those IC have identical protocol. Check datasheets or google ​for driver sources.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 3:49 AM
Thank you for comment but Both use the I2C protocol. I checked their datasheet. Are you talking about I2C Timing Characteristics?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 10:18 PM
No, I am talking about internal register structure and reading/writing sequence of those registers. You have to read datasheet for ​ILI2117A and implement algorithm described there. Timing usually is the same for many I2C devices. All should work at 100kHz, some can support 400kHz.
​
You can probably can take a Linux driver as an idea how to talk to ILI2117A, but according to this thread: https://patchwork.kernel.org/project/linux-input/patch/20190302141704.32547-1-marex@denx.de/#22979165 even ILI2110 driver would not work with ILI2117A chip.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-19 11:22 PM
Thanks for the comment, I have a document, I need to write a driver using it as far as I understand.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2022-01-20 1:32 AM
Since I use a different touch interface, I need to write a driver specific to that integration.
