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.

TPS65930 USB ID pin connected to 3.1V externally work around to put the OTG port in a peripheral mode

Champs

My customer has connected the ID pin on the USB connector to 3.1V. It was a mistake but they like to know if there is any work around to make the OTG port to work as a peripheral. If there is any register bit that can be set to over come this. Please let me know.

I notice  a bit in the OTG_CTRL that say IDPULLUP and if set to 0 it says it disables the sampling of the ID pin but it does not say it removes the PULLUP. Would this work or maybe some otehr register bits.

Thanks

Regards

Mohsen

  • I'm not sure I understand the problem. When the OTG port is used in device mode the ID pin is supposed to be floating (and thereby being pulled high by the internal resistor).

    As far as I can see it therefore shouldn't do any change that your customer shorted it to 3V1 as long they only want to operate the port in device mode. Changing to Host mode will of cause be a problem since this will require the ID pin to be pulled low (normally by the cable), which of cause isn't impossible in case it's hardwired to 3V1...

    Hope this helped? - Regards
      Søren

  • Soren

     Thanks for the reply, one thing that is confusing is that the register that suppose to pull the ID pin high is set to disable which is a low (this is register OTG_CTRL bit 0)? Does that mean it is no pullup and the ID signal is ignored or just the ID signal is ignored but the pullup is always there?

    Where all this is started is because my customer code works on the board that has the ID pin floating and it works fine as a peripheral. But on their board the ID pin is connect to 3.1V and it does not work. It seems that they are getting a lot of interrupts from the USB port. Any help would be great on this issue.

    Regards

    Mohsen

     

     

  • I agree, that the exact ID-pin functionality is kind difficult to understand in detail and I'm not an expert in the area myself either :-)

    Have you checked the thread at: http://e2e.ti.com/forums/p/12114/49610.aspx#49610

    With respect to the interrupts I have no ideas popping right into my mind, since I can't imagine why pulling it explicitly should generate interrupts while pulling it through an internal resistor doesn't. That's strange

    Are you 100% sure they are using the exact same SW in their tests? Good luck
      Søren

  • Hi Mohsen,

    I think they may be switching (ON and OFF) VUSB_3V1 LDO and hence they see an interrupt. This LDO supplies the internal circuit and should be configured in SLEEP state if not used and for power consumption purpose. ID to GND is a USB plug event and it would generate an interrupt.

     

    Regards,

    Gandhar.