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.

TPS65987D: How to control TUSB546 via I2C Port 3?

Part Number: TPS65987D
Other Parts Discussed in Thread: TUSB546EVM, TPS65987,

I am debugging a circuit very similar to the TUSB546EVM:

- Converts DP Source, USB Host to USB Type C receptacle 
- Uses the TUSB546 and TPS65987
- ConnectsTPS65987 to TUSB546 via I2C Port 3
I am using the application customization tool to generate a binary file for the TP65987. 
- I am starting with the TPS65988DDH_Advanced_v5_01 because it is the only file I can find with Global System Configuration > I2C3 Enable as Master
- I configured the App Config Data Table based on SLVAE18, Configure I2C master.
- However, App Config Binary Data Indices (0x62) does not have the option of specifying a Record Start Index or Record Number of Indices for Port 3
The host interface reference does not show port 3 configuration in register 0x62, either.
How do I configure the TPS65987 to send the correct data out of I2C3?
Thanks!
  • Hi PJ,

    Apologies for the inconvenience. We are in the process of releasing a new tool on TI.com that resolves this issue as well as many others. Please expect to see the tool online by the end of next week.
    In the meantime, please consider reviewing the following App Note on configuring the I2C Master on TPS65987D: www.ti.com/.../slvae18.pdf

    Thanks,
    Eric
  • Thanks, Eric.

    Which bytes in the 0x62 Binary Data Indices Register configure the following?

    - Start index of the I2C3 Event offsets

    - Number of I2C3 Events

    PJ

  • Hi Pj,

    I2C3 is selected as the master port in register 0x27 as highlighted in the app note linked above.
    The start of index for the I2C Event offsets and number of I2C events is also configurable through our GUI tool. Each step is highlighted in the application note that I linked above. You can also refer to the host interface TRM if needed. www.ti.com/.../slvubh2b.pdf

    Thanks,
    Eric
  • 1. I selected the checkbox to select I2C3 as master in the Global Configuration 0x27 section

    2. The GUI does not have an option to configure the start of index or number for I2C3 for register 0x62:

    3. SLVUBH2B does not show which bytes in 0x62 configure the number and start index for I2C3 events:

    4. Based on the table above, are bytes 9 and 10 for the start index and number of I2C3 events, respectively?

    Thanks. 

  • Good morning, Eric. Any update on this?

  • 1. I selected the checkbox to select I2C3 as master in the Global Configuration 0x27 section

    2. The GUI does not have an option to configure the start of index or number for I2C3 for register 0x62 (see screen shot in next post)

    3. SLVUBH2B does not show which bytes in 0x62 configure the number and start index for I2C3 events (see screen shot in next post)

    4. Based on the table above, are bytes 9 and 10 for the start index and number of I2C3 events, respectively?
  • Hi Pj,

    As I mentioned in my first reply, the GUI version 5.1 has an issue that is preventing the proper configuration of this field. The next version of the GUI would be posted on Ti.com soon.

    Thanks,
    Eric
  • Thanks for the heads up on the new version of the GUI. Just downloaded and installed 5.13. However, the App Config Binary Data Indices 0x62 page can only configure I2C1 and I2C2. It does not have a way to configure I2C3. Am I missing something?

  • Pj,

    Did you get a chance to look through the app note linked above? Register 0x62 is not where the I2C port is selected. Register 0x62 is used to distinguish between what events are sent on port 1 events and what events are sent on port 2 events. This is all explained in greater detail in the app not mentioned above.

    Thanks,
    Eric
  • I have read and followed the instructions in SLVAE18. Specifically,

    - I have checked "I2C3 Enable as Master" in Figure 1 of that document. 

    - In I2C Master Configuration, I set Slave 1 I2C Address as 0x12 and Slave 1 Master Selection as I2C3 (TUSB546A connected to Port 3 and I2C address set by A1=F, A0=F)

    - Filled out the App Config Data Table as described in Section 5

    On page 6 of SLVAE18, it assumes that the "slave is connected to Port 1" and shows how to fill out Common Settings > App Config Binary Data Indices > Port 1 I2C Record Start Index and Record Number of Indices. 

    However, the TUSB546A in my circuit is connected to Port 3, and there are no fields for Port 3 I2C Record Start Index and Record Number of Indices. How do I tell the TPS65987D to send out the data via Port 3 to the TUSB546 when the various trigger events are encountered?

    Thanks!

  • Hi PJ,

    "On page 6 of SLVAE18, it assumes that the "slave is connected to Port 1" and shows how to fill out Common Settings > App Config Binary Data Indices > Port 1 I2C Record Start Index and Record Number of Indices."

    The settings highlighted in page 6 and 7 will not change if you are using I2C1 or I2C3. The TPS65987D will check the contents you entered in the Global System Config register to determine which address is used. The settings highlighted in page 6 and 7 of SLVAE18 will be the same for your use case.

    Thanks,
    Eric
  • I will try it. Thanks!