Hello,
First my apologies if I'm drifting from the topic but my problem might be similar.
I've started to play with similar ILITEK ILI2130 cap controller used on Winstar 5" TFT display and linked with BT817. Using AN336 and programmer manual, I get as far as initialising module and read data. Rudolph, You was correct. ILITEK used slightly different I2C address -
1000 001b - which I altered via REG_TOUCH_CONFIG. I stick to compatibility mode (as I do not need multi touch at this stage) and let it go. I'm seeing INT going low, SCL and SDA coming through when touch is made. I can also confirm that once screen is touched, data from controller is bursting in 9ms intervals and once touch is released controller stop outputting data. My problem is that touch value read by BT817 is always constant (REG_CTOUCH_TOUCH0_XY = 0x07010448) no matter which part of screen I'm touching. I tried to calibrate but after pressing on glowing dot, it stop flashing and I'm stuck in EVE_busy() reading 0xFEC instead of 0xFFC (as my read, write pointers do not come equal).
My init is basic:
EVE_MEM_WR16(REG_TOUCH_CONFIG, 0x0410); /* set ILI2130 ctouch address */
EVE_MEM_WR8(REG_CTOUCH_EXTENDED, EVE_CTMODE_COMP); /* set ctouch compatibility mode */
EVE_MEM_WR8(REG_CTOUCH_MODE, EVE_CTMODE_ON); /* enable cap touch */
I did not load any configuration code to RAM as I'm not yet familiar with that technique.
My question is if you both succeed in compatibility mode or the only option is to use Host mode and send touch data via MCU on that particular controller? Any way to connect and use direct on BT817?
As curiosity I switched to extended mode and data behaviour changed. The controller is sending a lot more data but only once per touch.
PS. I attached a nice comparison from Winstar highlighting key differences between FT5426 and ILI2130. Hope you will be able to read from attachments bellow (maximum total size limitation
).
Best Regards,