CCG3PA 45W Power Bank Reference Design using Southchip Mixed questions.

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
oralc_3312356
Level 1
Level 1
First like received

Hi there.

I have the firmware design files you previously provided in here (thanks again, great help) but Im buffed with some questions

Q1.  How PPS and PDOs are implemented in the firmware as SC_SetOTGVoltage function ( setting output voltage)  haven't been used at all. It seems like the project you provided can only sink and/or source only default 5V even tho the page states this reference design supports multiple profiles and PPS. im a bit confused on where to use SC_SetOTGVoltage for the stack to change the output voltage. Can you please help with that?.

Q2. Im using VBUS_IN_DIS (pin 18) to supply CCG3PA without using additional voltage regulator and VBUS_C_MONDIS (pin11) to measure voltage on output in my design (as is implemented in car charger ref.). In the power bank design however they both used for sensing TYPE-C voltage (Before and after mosfet switch on TYPE-C port). As the stack rely on these, im stuck with constant voltage reading on VBUS as VBUS_IN_DIS always has power. This messes up a lot of the logic behind the operation of firmware. How can i change it so that only VBUS_C_MONDIS is used for voltage sensing on Type-C rail (as in car charger ref)?

Q3. isnt vbus_is_present function supposed to return true only if sensed voltage falls into specified threshold percentage ? pastedImage_4.png

I tried mitigating Q2 by specifying different values like 5V 10% but it still returned true even tho i have 16V on VBUS_IN_DIS  and 0V on VBUS_C_MONDIS.

Q4. I have  noticed that your car charger reference design uses SC8815 which is what im using for my design and also all of the above mentioned questions may have been answered if i had access to firmware design files. But unfortunately even tho hardware design files are on the websites related page, firmware design files are missing and its a bit frustrating to not being able to reach those files for quick look when needed. Can you please share CCG3PA Car Charger Reference Design using Southchip firmware project files?

Thank you in advance

1 Solution
RajathB_01
Moderator
Moderator
Moderator
250 replies posted 100 replies posted 50 replies posted

Hi,

Q1 > The new reference design FW has FB control instead of I2C - please study the schematics. This is same as the standard SDK implementation. There is no need of calling SC_SetOTGVoltage() function.

Q2 > VBUS_IN is connected to Type-C VBUS in our design in order to support dead battery condition and VBUS sensing is done on VBUS_IN (not VBUS_C_MON). This is again compliant with SDK architecture. This should give you correct reading of VBUS on VBUS_IN since it is connected to TYPE_C_VBUS.

Just in case you want to flip this, there are macros (in standard SDK) available to be updated in stack_params.h:

#define CCG_FLIPPED_FET_CTRL (1u) // change this to zero if you are connecting VBUS_C_MON_DIS to TYPE_C_VBUS.

#define CCG_SRC_FET (0u)  // This should be 1 for using P_CTRL and zero for using C_CTRL

#define CCG_SNK_FET (0u) // This should be 1 for using P_CTRL and zero for using C_CTRL

Q3 > With the new design and firmware, it should not be a problem. Verify your code with answer for Q2 and let me know if problem persists.

Q4 > Unfortunately Source code is not made publicly available for all reference designs. The latest powerbank design is compliant with SDK architecture - hence you should be able to refer to the standard source code in SDK.

Regards,

Rajath

View solution in original post

0 Likes
2 Replies
oralc_3312356
Level 1
Level 1
First like received

Commenting up in hopes for more attention

0 Likes
RajathB_01
Moderator
Moderator
Moderator
250 replies posted 100 replies posted 50 replies posted

Hi,

Q1 > The new reference design FW has FB control instead of I2C - please study the schematics. This is same as the standard SDK implementation. There is no need of calling SC_SetOTGVoltage() function.

Q2 > VBUS_IN is connected to Type-C VBUS in our design in order to support dead battery condition and VBUS sensing is done on VBUS_IN (not VBUS_C_MON). This is again compliant with SDK architecture. This should give you correct reading of VBUS on VBUS_IN since it is connected to TYPE_C_VBUS.

Just in case you want to flip this, there are macros (in standard SDK) available to be updated in stack_params.h:

#define CCG_FLIPPED_FET_CTRL (1u) // change this to zero if you are connecting VBUS_C_MON_DIS to TYPE_C_VBUS.

#define CCG_SRC_FET (0u)  // This should be 1 for using P_CTRL and zero for using C_CTRL

#define CCG_SNK_FET (0u) // This should be 1 for using P_CTRL and zero for using C_CTRL

Q3 > With the new design and firmware, it should not be a problem. Verify your code with answer for Q2 and let me know if problem persists.

Q4 > Unfortunately Source code is not made publicly available for all reference designs. The latest powerbank design is compliant with SDK architecture - hence you should be able to refer to the standard source code in SDK.

Regards,

Rajath

0 Likes