cancel
Showing results for 
Search instead for 
Did you mean: 

USB EZ-PD Type-C

falu_294486
New Contributor

Hi there,

   I just used 4236 to design type-c port test box like dock.

there have one thing i must accomplish are auto swap port0 cc1/cc2 Rd (cc1 switch to Rd and cc2 floating).

Is SDK API can do it? if not, how can i design my hardware to accomplish  this (etc mcu control switch to pull Rd down for cc1).

thanks

0 Likes
Reply
1 Solution
YiZ_31
Moderator
Moderator

Hi Faco_Lu,

You can use  pd_typec_dis_rd to control Rd of CC pin, but CYP4236 do not support individual control of Rd on CC1 & CC2. You can control Rp individually on each CC pin.

Regards,

Eddie.

View solution in original post

0 Likes
Reply
7 Replies
YiZ_31
Moderator
Moderator

Hi,

Yes, it's accomplished by CCGX HOST SDK API. You can refer to 6.13 app/swap.h File Reference of CCGX_FW_API_GUIDE:

Regards,

Eddie

0 Likes
Reply
MaLi_3529141
New Contributor

Hi EddieZ_31, I did not find the CC Pin related API in the app/swap.h The API here is only PR_swap, DR_swap and Vconn_swap. Regards, Manu

0 Likes
Reply
YiZ_31
Moderator
Moderator

Hi Manu,

Rp/Rd defines the role of the device as source/sink. The swap of role is accomplished by the functions I mentioned above.

Regards,

Eddie

0 Likes
Reply
falu_294486
New Contributor

Hi Eddie,

I connect the  CCG4-4236 to laptop use type c cable, which cable is special cable (have cc1/cc2 both).

And verify cc1/cc2 automatic switching using the following combination. When i swap to port0 cc1, it can work but i swap to cc2, it's not work.

// disable/enable ccx

pd_typec_dis_rd();

pd_typec_en_rd();

// cc communication status machine

dpm_init();

dpm_start();

dpm_stop();

// port disable/enable

dp_typec_init();

dp_typec_start();

dp_typec_stop();

thanks

Faco_Lu

0 Likes
Reply
YiZ_31
Moderator
Moderator

Hi Faco_Lu,

You can use  pd_typec_dis_rd to control Rd of CC pin, but CYP4236 do not support individual control of Rd on CC1 & CC2. You can control Rp individually on each CC pin.

Regards,

Eddie.

View solution in original post

0 Likes
Reply
falu_294486
New Contributor

Eddie,

thank for report.

If API is not support individual control of Rd on CC1 & CC2. how could i design hardware to achieve automatic swap?

eg. using MCU gpio to control switch port0 cc1/cc2 to Rd

Faco_Lu

0 Likes
Reply
YiZ_31
Moderator
Moderator

Hi Faco_Lu,

CCG4 do not support this kind of control. There is no solution for now. Thank you for understanding.

Regards,

Eddie

0 Likes
Reply