This document is describe the control method of USB Power based on I.MX6ULL-EVK.
1. Hardware Design
USB OTG can be working as device mode, host mode, or switching between both device mode and host mode.
(a) USB OTG Device mode
When USB OTG is working as device mode, the USB OTG ID pin should be pulled up by a resistor. And the 5V power comes from the VBUS pin of MicroUSB which is the 5V from the external USB HOST.
From the above schematic :- When the USB OTG1 ID is pulled to high, the G/S of the NMOSFET Q2SK3018 is turned on. The ENA pin of U1101 is low, and then no 5V output from OUTA. If USB OTG1 is connected to the external USB HOST, a 5V power source will enter the board and supply to the USB OTG1 VBUS pin.
(b) Switch between Device and Host mode
This is also called USB OTG’s Dual Role.
When we plug in MicroUSB with USB TYPE-AB to USB TYPE-A-F cable, USB OTG1 will switch
from USB device to Host mode.
At this time, the USB OTG1 ID pin will be pulled down to low, the G / S of the NMOSFET will
be turned off, the ENA pin of U1101 will be pulled low, and OUTA will output 5V voltage to the
VBUS pin of MicroUSB.
(c) USB OTG Host mode
When USB OTG is working as host mode, USB OTG1 ID pin connect an external resistor to pull it down or use internal resistor to pull it down. If using external resistor, 2.2K/3.3K ohm resistor is recommended. The USB_OTG1_PWR should output High to enable ENA of U1101, then OUTA will output 5V to USB OTG1 VBUS.
On i.MX6ULL-EVK, USB OTG2 port is designed to be Host mode. It can be a design reference.
When the USB_OTG2_PWR pulled to high, the U1101 supplies 5V to the outside.
2. Software modification
The GPIO1_IO04 can be used to control USB OTG1 power.