SLUSDF9 June 2020 BQ25790
The device contains a D+/D- based input source detection to set the input current limit. The D+/D- detection has four major steps: Data Contact Detect (DCD), Primary Detection, Secondary Detection and High Voltage (HVDCP) detection.
The D+/D- Primary Detection includes standard USB BC1.2 and non-standard adapters. When an input source is plugged in, the device starts standard USB BC1.2 detection first. The USB BC1.2 is capable of identifying Standard Downstream Port (SDP), Charging Downstream Port (CDP) and Dedicated Charging Port (DCP). The non-standard detection is used to distinguish vendor specific adapters based on their unique dividers on the D+/D- pins. The secondary detection is used to distinguish two types of charging ports, CDP and DCP.
A CDP usually requires the portable device (such as smart phone, tablet) to send back an enumeration within 2.5 seconds of CDP plug-in. Otherwise, the port will power cycle back to SDP even the D+/D- detection indicates CDP.
|NON-STANDARD ADAPTER||D+ THRESHOLD||D– THRESHOLD||INPUT CURRENT LIMIT|
|Divider 1||VD+ within V2P8_VTH||VD– within V2P0_VTH||2.1 A|
|Divider 3||VD+ within V2P0_VTH||VD– within V2P8_VTH||1 A|
|Divider 4||VD+ within V2P8_VTH||VD– within V2P8_VTH||2.4 A|
|Unknown||VD+ = 1 MΩ to 0 V||VD- = 3.3 V||3.0 A|
When a Dedicated Charging Port (DCP) is detected, the charger initiates two high voltage adapter (HVDCP) handshakes to enable the corresponding adapter to output a higher voltage for fast charging. The HVDCP detection can be enabled by setting EN_HVDCP=1 and then setting either EN_9V=1 to increase the input voltage to 9V or EN_12V=1 to increase the input voltage to 12V. When EN_12V and EN_9V are both set to 1, the charger starts 12V first.
After the Input Source Type Detection is done, the DPDM_STAT bit is set to 0, an INT pulse and DPDM_DONE_FLAG are asserted if DPDM_DONE_MASK = 0. In addition, the Input Current Limit register (IINDPM), and VBUS_STAT registars are updated as below:
|D+/D– DETECTION||INPUT CURRENT LIMIT (IINDPM)||VBUS_STAT_3:0|
|USB SDP||500 mA||0001|
|USB CDP||1.5 A||0010|
|USB DCP||3.25 A||0011|
|Adjustable High Voltage DCP (HVDCP)||1.5A||0100|
|Unknown Adapter||3 A||0101|
|Non-Standard Adapter, Divider 3||1 A||0110|
|Non-Standard Adapter, Divider 1||2.1 A||0110|
|Non-Standard Adapter, Divider 4||2.4 A||0110|