Finding Mode of a BC1.2 Charger connected

Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
PrRe_3492461
Level 4
Level 4
First like received 50 sign-ins 50 replies posted

Hello all / RajathB_01​,

I'm taking referrence from low 3 discussions:

Ref1 : CCG3PA as a BC1.2 Sink(Portable Device)

Ref2: BC1.2Sink(PortableDevice) Functionality in CCg3pA

Ref3: Re: CCG3PA as a BC1.2 Sink(Portable Device)

I'm using ccg3pa for my development and in configuration utility

I enabled BC1.2 configuration and disabled Apple charger mode in Charging configurations --> Sink settings tab.

and in LEGACY_PD_PARALLEL_OPER  is 1u

when a BC supported provider(DCP) is connected i can see bc_fsm_sink_dcp_connected() is being executed which is expected

but when I connected cable to Laptop USB ports(CDP), I'm unable to see bc_fsm_sink_cdp_connected() executing.

It is said as " But, the firmware is only identified DCP and SDP, there is no possible to go to CDP states"  by ShifangZ_26 in Ref2 discussion mentioned above

Is CDP detection by ccg3pa is possible or not ?

Do I need to make any changes in FW for detection of such ports.

And in Ref1 discussion in Resolution summary it is said that DCP detection will be stored in bc_stat->cur_mode in same way as CDP by editing @ pdo.c file

Is it @ pdo.c file or @ battery_charging.c file ??

Can you please clarify this point?

Thanks in Advance.

Best Regards,

pranay.

0 Likes
1 Solution

Hi Pranay,

I tested using my laptop's port and saw the same behavior as in your logs i.e. detection is failing at primary detection. Based on the voltage levels, the DM voltage is less than VDP_SRC in primary detection so it fails and enters the else condition. Comparing with BC 1.2 Spec, the port qualifies as a SDP.

But using a DCP and CDP port from our hub, I was able to see secondary detection in both cases and bc_fsm_state updated correctly. However, the cur_mode still needs to be updated for CDP as you have already done in your code.

Please use a different CDP charger if possible or let us know the DP/DM voltage levels when connecting to the laptop port.

Best Regards,

Sananya

View solution in original post

0 Likes
5 Replies