I have a situation that I have to put power on my custom board through USB OTG port and seems no problem on it. My board has 1 USB OTG port and two sockets sharing pins to each other. The goal of having two socket is, one socket is for the power source and the 2nd socket is for the usb powered device. In other words, I have to force the OTG port in HOST mode at the same time it accept powers on it.
If I understand you correctly, the concept of a USB port having two sockets is not exactly in line with the USB specification and I would not expect it to work at all. If the power source on the first socket is a PC, then it won’t provide power until it enumerates, so it has to be active. How then the USB port can be a host and a client at the same time has be puzzled.
So, I need a picture to help me understand what you are doing if I ma going to be of any help…
You are correct, it is not in the USB specification. My board will be powered by a standard 5v supply (like usb charger). We used the +/- pins of the OTG port just to power the board but, the said port should still work in host mode.
OK. You need to remove the power connection from the OTG port output and ground the ID pin. Connect the 5V from the charger to the OTG output that has the USB signals on it. Make sure you don’t have the OTG supply driving the 5V rail, only the charger.
Here’s the block diagram of my connection. As you can see in the diagram, I have two sockets connected to the USB OTG port and they are both sharing pins. The first socket is connected to a 5v supply and 2nd socket is for the usb device. Like what I said earlier, I am just using the +/- pins of the OTG port to power my board and the port should still in USB Host mode.
Based on you diagram, I don’t think you will have much luck getting anything to work after the sparks fly. The Power raill cannot conenct to the the OMAP sourced 5V. The 5V rail can only connect form the 5V in to the outbound connector.
I have to correct myself for my previous email when I say, I am using the +/- pins of the USB OTG port to give DC to the board. The board is getting a DC source from a standard USB charger and it’s connected to the VCC and GND of the OTG port. It looks like the problem is in the TWL6030, because, it gives power to the USB VBUS and seems there’s a conflict when the VCC and GND of the USB OTG port is getting power too.
Do you have an idea which register should I disable in TWL6030 in order not to drive the TWL6030?.
I am not familiar with the TWL6030 so I don’t know how to answer your question. Do you mean TWL4030 (TPS65950)? If so, I am not sure exactly where that register is. I suspect it is tied to the ID pin in some way. I think the best solution would be to isolate that pin.