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.

TUSB320HAI: Configuring TUSB320HAI as UFP only.

Part Number: TUSB320HAI
Other Parts Discussed in Thread: TUSB320, TUSB320LAI

Hello Community,

I'm using TUSB320HAI controller for my USB TypeC only requirement.

I need to configure controller as UFP in GPIO mode so I'm shorting PORT to GND directly without any Pulldown and ADDR is floating(NC) and SCL/OUT2, SDA/OUT1 also floating(NC).

CC1 CC2 are directly routed from TypeC receptacle pin and VBUS_DET is connected via 909k Resistor.

Q1 : Are above configurations correct ?

If Correct than there shouldn't be a DRP toggle on typeC receptacle pin on CC lines which is not expected. Rd should be detected everytime.Correct ?

Please let me know if I'm missing anything or is there any other dependencies for configuring controller as a UFP only Device.

Expecting an early reply .

Thanks in Advance

Regards,

Pranay.

  • HI Pranay,

    Your configuration is correct. You can also use OUT1 and OUT2 as ADDR = NC is the only requirement for GPIO mode. In UFP mode (PORT = L) TUSB320HAI will present Rd for a DRP or DFP to detect and will determining connection based on VBUS_DET (VBUS provided by DFP or DRP acting as Host). 

  • Hi malik,

    Thanks for the reply.

    Yes, TUSB will present Rd if configured for UFP .

    Let me explain you my setup,

    I have a Sniffer that captures the CC line traffic, and when I connected that sniffer to the TypeC receptacle end after configuring TUSB as UFP I'm able to see a DRP toggle on CC lines which is not expected.

    So my doubt is apart from connecting PORT pin to GND,

    Do we need to configure any other Registers ?

    If yes, Please guide me to the respective register set.

    Else,

    Have you seen this observation anytime before ?

    Is there any other possibilities that could lead to this scenario?

    It'd be useful for us if you help me sort this issue out.

    Thanks and Regards,

    Pranay.

  • Hi Pranay,

    This is strange, I would confirm that ADDR is NC to ensure device is GPIO mode. You can also try I2C mode and modify MODE_SELECT ito "01" for UFP mode. 

    Is it possible that the sniffer it toggling the CC pin? Can you probe CC1 or CC2 with a scope when nothing is connected. If TUSB320HAI is truly in DRP mode then the toggle will be present even when there is nothing connected. 

  • Hi Malik,

    Thanks for the early reply.

    Please find the attached zip file with circuit (image 1) and sniffer capture(image 2) of DRP toggle.

    Yes, ADDR is pin is NC for GPIO mode, I have read the data sheet properly and double ensured this. Right now, I cant configure to I2C mode.

    No, The sniffer is just a bridge between port and port partner, it doesn't have that intelligence to toggle cc lines.

    As per Data sheet pin configuration, Below circuitry should not have any toggle as PORT pin is connected to GND directly.

    But not sure why CC lines are toggling even after configuring as UFP .

    And CC lines are connected to TUSB directly from TypeC receptacle and D+D- lines are going to main controller directly,

    INT_N pin is also connected to main controller, OUT1/SDA , OUT2/SCL are connected to Battery charging circuitry .

    In Image 2, we can see that CC lines are toggling and voltages are 3.65v in both CCs and

    we can also observe that when DRP exposed as SRC respective timing is 25ms and when DRP exposed as SNK respective timing is 50mS. (This is from TUSB controller. Correct ?)

    Please feel free to suggest/ask any modifications needed in below circuit or if required anything else.For security concerns I cant share the schematics.

    Thanks & Regards,

    Pranay.

    Ckt and Sniffer capture.zip

  • Hi Pranay,

    Could your try uploading your second image again? It did not come through on my side. Also are you using the "H" or "L" version of the TUSB320? Would like to double confirm. As a sanity check what is the voltage on the PORT and ADDR pins? That is correct the timing for the toggle aligns with TUSB320xAI DRP behavior. 

  • Hi Malik,

    Please find Image2 attached below for CC line sniffer capture details with timing as Src,Snk and CC line voltages.

    Controller being used is TUSB320LAI version.

    when configured as UFP by shorting directly to GND, Voltage at PORT pin is 0v and at ADDR is also 0v

    I have one doubt here, As per "Figure 20. UFP in I2C Mode Schematic " in TUSB Data sheet, PORT pin connected to GND via 4.7k Resistance.

    Is there any particular reason for this? , How will this affect the functionality ?

    In our case we're connecting directly to GND as mentioned earlier. will this cause any DRP toggle? Is the termination really necessary ?

    Thanks and Regards,

    Pranay.

    Image 2:

  • Hi Pranay,

    This resistor is there to limit leakage current it is not required as the V_IL limit is satisfied. You also have INT_N/OUT3 connected to 3.3V separate from the device Vdd. INT_N is a non-fail safe pin so if 3.3V is powered before Vdd then this can cause unexpected behavior like we are seeing. Is this the cause here? Could you try pulling INT_N up to Vdd.

    "When VDD is off, the TUSB320 non-failsafe pins (VBUS_DET, ADDR, PORT, OUT[3:1] pins) could back-drive the TUSB320 device if not handled properly. When necessary to pull these pins up, it is recommended to pullup PORT, ADDR, and INT_N/OUT3 to the device VDD supply. The VBUS_DET must be pulled up to VBUS through a 900-kΩ resistor."

  • Hi Malik,

    Thanks for the input.

    Please find the attached picture1 of the trace file with Vdd and INT_N pins probed. ( Captured with INT_N/OUT3 connected to 3.3V separate from the device Vdd).

    As said earlier, VBUS_DET must be pulled up to VBUS through a 910-kΩ resistor. ADDR pin is NC, PORT pin is GND so No PULL-UP are needed.

    From trace capture we can conclude that after powering Vdd, INT_N pin is being sourced after 30mS delay.So I hope this will not cause unexpected behavior.

    In second sequence, I have connected same supplies to Vdd and INT_N pins as you've asked earlier. And Still DRP toggle is present. There is no change in behavior of CC lines even Vdd and INT_N pin are connected to the same supply via 100k resistance to INT_N pin.

    I've a doubt here, I can infer from data sheet that INT_N pin is Output Pin if so How can device basic functionality of TUSB get affected by power-on sequencing ?

    I mean INT_N is output pin and when TUSB  is configured for GPIO mode,this pin is used only to detect Audio Accessory connected or not,  it is like interrupt pin, if so it should not affect Controller functionality.

     

    Any other things needed to check from schematic ?

    Awaiting for the possible resolution :)

    Thanks and Regards,

    Pranay.

    picture1 :

  • Hi Malik,

    I want add one more point that needs clarification.

    In below thread :

    Questions regarding TUSB320LAI/TUSB320HAI,

    @diego, In point 5 of his answer he said that  "5.In order to disable the detection of accessories in UFP mode (the CC pins won't toggle when this bit is ON)" (Screenshot-1 attached below)

    Screenshot-1 :

    And, If I navigate to respective register details in Datasheet (screenshot-2 attached below), it says that DISABLE_UFP_ACCESSORY bit is set to 0, which means UFP accessory support is enabled by default, which will lead to toggle even after setting the TUSB as UFP in GPIO mode (correct ?)

     

    Is this functionality tested from your end ?

    I believe as mentioned above DISABLE_UFP_ACCESSORY bit is Disabled by default even if configured as UFP in GPIO mode, TUSB will keep toggling CC lines to enable support for UFP Accessory.

    But As per my requirement, we don't need Accessory support, we just need a UFP Device and How do we achieve that ?

    Correct me If I'm wrong.

    Thanks and Regards,

    Pranay

  • Hi Pranay,

    The non-fail safe pins can potentially back drive the digital core of the device and cause unexpected behavior. That is correct, accessory support is enabled by default in GPIO mode. Unfortunately the only way to disable accessory support is through I2C. TUSB320 in UFP is looking for both CC pins pulled down by Rd which is not presented by Typical Type-C connection (only one CC line exposed by cable).

  • Malik,

    Is there any way that I could configure the registers by default in GPIO mode itself ?

    Any modifications to the TUSB CC line pins that I can make to achieve my requirement?

    Regards,

    Pranay.

  • Hi Pranay,

    Unfortunately no however this should not interfere with regular UFP operation. Modifying CC pins will not change behavior of the device. What use case do you have where this will cause a issue? 

  • Malik,

    I'm facing issues while executing USB C Functional MOI .

    This toggle is stopping our product from getting certified.

    To be specific, Testcases 4.3.4, 4.10.1,4.10.3 are failing when configured for UFP.

    We're concerned about this, As the total ICs needs to be scrapped if we don't find any other alternative way to fix this toggle, I can't configure TUSB in I2C mode either.

    I believe there should be way atleast by updating the FW of IC with required changes in respective registers in factory itself.

    I want to add one more point here:

    I ordered a new TUSB320LAI EVK kit, I'm using I2C interface and configured EVK as UFP and I'm writing 0x01 to Register 0x09 and toggle stopped as expected. But I found that after disabling Accessory support as UFP TUSB is not presenting Rd.

    Why is this happening ?? Is this expected ?? It is a new EVK and I have not made any modifications apart from configuring it to UFP by switching SW1.8 ON.

    Regards,

    Pranay.

  • Hi Pranay,

    TUSB320 does not have internal FW that can be changed, it is a state machine based device. Could you share the test log for review? In your VIF file Type_C_Supports_Audio_Accessory should be listed as Yes to reflect support for accessories.

    As for the EVM, how are you measuring the Rd of TUSB320LAI? Are you measuring on J2 pin 8 and 10? What is the full value read back from register 0x09 after making the change to accessory support? If you remove power from the EVM do you see Rd (dead battery mode)?