Skip to main content
AOhir.1603
Associate III
March 12, 2020
Question

USB PD library Can't charge Redmi phone

Hi Yohann,

Created a separate thread as it's a separate issue.

I am having an interesting problem with the latest USB PD library v3.

I configured my board to be a source and connect to my Samsung phone (A20); it works very happily, I can start charging my phone straight away and can do this repeatedly.

However if I connect to another phone (Redmi Note 7), I can't get it to charge the phone. When I was working with the previous version of the library (v2), the redmi phone would start charging without problems.

I've attached a log that shows the difference between v2 and v3.

  • log_charge_redmi_libv2.cpd: trace output for using library v2 and connecting to a redmi phone
  • log_charge_redmi_libv3.cpd: trace output for using library v3 and connecting to a redmi phone

It looks like it sends out the source capability information but for some reason we keep getting a transmission fail alert.

Any idea why it gets a transmission fail alert and how to fix this issue?

Thanks,

AOF

This topic has been closed for replies.

1 reply

Yohann M.
ST Employee
March 12, 2020

Hi AOF,

=> I can only see 1 request from redmi phone (in libv3.cpd trace):

debug 0000018696 P0 DEBUG0 "VbusVolt=4700 "
-pe - 0000018697 P0 PE_SRC_SEND_CAPABILITIES
debug 0000018701 P0 DEBUG0 "VbusVolt=4250 "
---> 0000018702 P0 SOP s:006 PD3 H:0x11a1 SRC_CAPABILITIES DATA:2c910122
 OPTION : DRD DRP
 FIXED : voltage 5000mV current 3000mA
 
debug 0000018705 P0 DEBUG0 "ALERT IT1"
debug 0000018706 P0 DEBUG0 "ALERT_TASK"
debug 0000018708 P0 DEBUG0 "Alert= 44 "
debug 0000018710 P0 DEBUG0 "ValidAlert=44 "
<--- 0000018711 P0 SOP s:002 H:0x0001 GOODCRC
<--- 0000018713 P0 SOP s:006 PD2 H:0x1042 REQUEST DATA:2cb10413
 PDO position : 1
 NoUSBSuspend : 1
 USB Capable : 1
 GiveBack : 0
 Capa Mismatch : 0
 Operating current : 3000 mA
 Maxi Operating current: 3000 mA
 UnchunkMode Support : 0
 
-no - 0000018714 P0 NOTIFY_SRCCAP_SENT
debug 0000018715 P0 DEBUG0 "DisableRx"
debug 0000018717 P0 DEBUG0 "Alert= 103 "
-pe - 0000018718 P0 PE_SRC_WAIT_REQUEST
debug 0000018720 P0 DEBUG0 "ValidAlert= 1 "
debug 0000018727 P0 DEBUG0 "CC_S2= 0 "

Quite strange to see a drop of VBUS. Can you confirm that VBUS level is stable with V3 lib? Did you perform this test with your board or EVAL_FUSB board?

Regards,

Yohann