FTDI Community

Please login or register.

Login with username, password and session length.
Advanced Search  

News:

Welcome to the FTDI Community!

Please read our Welcome Note

Technical Support enquires
please contact the team
@ FTDI Support


New Bridgetek Community is now open

Please note that we have created the Bridgetek Community to discuss all Bridgetek products e.g. EVE, MCU.

Please follow this link and create a new user account to get started.

Bridgetek Community

Author Topic: FT813 How to check Touch Interface communication status  (Read 119 times)

TurboKing

  • Newbie
  • *
  • Posts: 2
    • View Profile
FT813 How to check Touch Interface communication status
« on: September 02, 2020, 09:34:51 AM »

I have two different screens both using the FT813 with Capacitive Touch interfaces. The first screen uses a Focaltech touch controller and the touch interface works as standard. The second screen type uses a Goodix controller and with the additional code described in AN336 also works correctly without any issues.

Each of the screens CTP interfaces uses a different I2C address and hence this must be correctly set in the code depending on the connected screen type.

Screen 1: REG_TOUCH_CONFIG = 0x0381 (Focaltech)
Screen 2: REG_TOUCH_CONFIG = 0x05D0 (Goodix)

I would like to programmatically determine whether the FT813 touch engine is able to communicate with the CTP or is in fault so that I can determine which screen type is connected. This will allow dual sourcing of the screens and a single application code.

Is there a way to check the touch engine status or to communicate directly with the CTP so I can identify the CTP/Screen type fitted? This may involve setting each I2C address in turn and checking for status/communication success if this is available.

Any help is greatly appreciated.
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 469
    • View Profile
Re: FT813 How to check Touch Interface communication status
« Reply #1 on: September 02, 2020, 04:25:56 PM »

Hello,

I believe that a touch would need to be registered on the panel as otherwise the CTP wouldn't attempt to send any data to EVE. From this point you may be able to establish if the correct I2C address has been used, but I will clarify this with the hardware team.

The alternative option is to hold EVE in reset and communicate directly to the CTP from your MCU over I2C. This however does require routing extra I2C lines to the CTP, would this be feasible in your project?

Best Regards,
FTDI Community
« Last Edit: September 03, 2020, 02:28:41 PM by FTDI Community »
Logged

TurboKing

  • Newbie
  • *
  • Posts: 2
    • View Profile
Re: FT813 How to check Touch Interface communication status
« Reply #2 on: September 02, 2020, 07:56:24 PM »

It is not feasible to have additional I2C lines to the CTP as I don't have an I2C bus/connection available.

I wanted to clarify if EVE checked the status of the I2C connection or simply listened for touch responses, if it is only listening then I will not be able to verify which CTP is connected, if the hardware team can verify that would be really useful.

The only alternative I have is to use one of the USERID bytes on the dsPIC I'm using to specify the I2C address and to set this when uploading/programming the code, then my application can read this byte and initialise the display correctly.

Regards.
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 469
    • View Profile
Re: FT813 How to check Touch Interface communication status
« Reply #3 on: September 03, 2020, 02:25:29 PM »

Hello,

Thanks for the reply.
I'm still waiting on the dev team to update, I will post a reply when they have gotten back to me.

Best Regards,
FTDI Community
« Last Edit: September 03, 2020, 02:28:31 PM by FTDI Community »
Logged

FTDI Community

  • Administrator
  • Sr. Member
  • *****
  • Posts: 469
    • View Profile
Re: FT813 How to check Touch Interface communication status
« Reply #4 on: September 04, 2020, 10:43:14 AM »

Hello,

The development team confirmed EVE does not detect which type of CTP is attached.

The use of touch host mode to detect is one way this could be achieved. However this would require a HW change.

Without HW change, one may use an interactive method to ‘detect’ the type of CTP. For example, use default Focaltech config (ie REG_TOUCH_CONFIG = 0x0381), display a message on screen asking user to touch within 5 seconds, if MCU does not detect a touch interrupt from EVE, then MCU can assume the CTP is Goodix, and change REG_TOUCH_CONFIG to 0x05d0 accordingly.


Best Regards,
FTDI Community
Logged