This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Issue with TSC2007 Touch Screen IC

Other Parts Discussed in Thread: TSC2007

Hi

I am Using TSC2007 Touch Screen IC used to interface LCD and DM8148 Via I2C

I am facing following issues when interfaced TSC2007 with DM814X

1.Not all the time the I2C address is detected. Problem occurs if Power ON/OFF cycle carried out immediately (2sec to 3Sec maintained atleast).
2.SDA goes low when LCD touch screen is touch continuously or it is touched multiple time. (If delay programmed is less than 1ms to read the activity)
3.After device lock up (SDA goes low), device is not recovering to its actual state even after providing I2C reset using SCL from master.
4.TSC2007 (Slave) recovers only after Power cycle.

I have read the TI Application Report for TSC2007 SBAA161–March2009 (Important Considerations to Assure a Safe POR) and i came up with conclusin that above issues are because of Silicon issue related to the device.Correct me if i am wrong.

Also please suggest me if there is any alternate available to overcome above issues.

Regards
Kinjan

  • I have seen I2C lockup on a few different devices at reset/power up.

    The root cause in previous instances is a discrepancy in the I2C specification relating to multiple master handling, and can leave the system in deadlock at power up.

    The solution in principle is very simple but in practice can be difficult.

    Basically if one device starts up a little quicker than another, or if there is a glitch in the system then a master can incorrectly see the clock/data lines go low during its own transaction. In this case it might incorrectly believe that there is another master in the system. At this point all clocks activity stops from the master (since it thinks something else has priority), but there is not really anything else generating clocks in order to clear whatever DID cause the data to go low.

    The solution is to issue about 16 dummy clock cycles on the SCL before any valid activity is initiated. This is possible if the I2C SCL pin can also be configured as a GPIO, or if the I2C controller can be told to ignore multi-master conflicts.

    I have used this solution many times in the past in different systems with different slave devices and it has fixed start up instabilities every time for me.

    BR,

    Steve

  • Hello Kinjan,

    Based on your description, it does not seem a POR problem, because a TSC2007 POR problem occurs only after a power up or re-power, and  never occurs in the middle of the operation. Because the TSC's I2C can not ACK while the POR problem occured, a SW reset can not go through.

    Regards,

    Wendy F.