1. For this case, please ensure that your load doesnt require more than the maximum power provided by the adapter. Do you see the the Fault LED turning on when changing the switch?
2. When you connect CCG3PA, please program it with the CLA firmware since BCR will be acting as the power sink. Please also configure the source PDOs to be compatible with the BCR sink PDOs. Please try without the load connected first to check the provided power and then connect the load once it meets the requirement.
Please try the above and let us know if you can see DC out and a successful PD contract. You could use the HPI specification for any additional configuration using an I2C master after you are able to see standalone configuration of the kit working.
please verifying several issues :
1) https://www.cypress.com/file/363381/download in DS i dint find CCG3PA based Car Charger (CLA) Diagram if it possible to get one ?
2) my task is simple get current info about Voltage and Current which request by device to be charge i want plug in to port c diffrent cables type c which request diffrent volatge and current and print via UART therefor i need connect BCR in order change voltage with SW1 swich ( 1-5v 2-9v 3- 12v 4- 15v 5-20v ) accordenly if there any load for example
SW1 on 3 meaning 12v and 5R and current wil be 1.2 A so when i call to in app task or in while (1)
Voltage = pd_hal_measure_vbus(0);
Current = pd_hal_measure_vbus_cur(0);
i need see this values but i dont see i only see 5v and current 0 a
this request :
const dpm_status_t *dpm_stat = dpm_get_info(0);
if(dpm_stat -> contract_exist == true)
voltage = dpm_stat->contract.max_volt / 100;
current = dpm_stat->contract.cur_pwr / 5;
give also voltage =0v and current 0 A
i do not understand the different between app_status_t and dpm_status_t ?
attached PDOs configuration i dont understand how config BCR PDOs that will match ?
EZ-PD™ CCG3PA Evaluation Kit Guide.pdf
according above document i will elaborate next setup
1. 5.1 Power Adapter (PA) Demo
4.1 Programming the CCG3PA Controller on the CY4532 EVK with CYPD3171-24LQXQ_cla_3_4_0_2274_0_0_0_pa.cyacd file
EZ-PD™ Barrel Connector Replacement (BCR) Evaluation Kit connect to EZ-PD™ CCG3PA Evaluation Kit by USB Type C to USB Type C 5V/3A
When i change SW1 Switch Position on BCR 1 to 5 ( evrey changr i plugout and plugin the usb tye c cable) and measure with DVM the DC_OUT i see only 9V expected to see 5v, 9v 12v 15v 20v
Q: what i need to do inorder see this behavior ?
note during running the setup above TP14 after measuring with DVM show 0v ?
see attached image ( describe the setup )
next setup the same bat the different by changing the example file to nobbot.hex project from sdk example CCG3PA Car Charger (CLA) with no channging the source code only build project and update fw with miniprog3 PSoC Programmer 220.127.116.1104 i see the sam ephenomena as above
please advice it basic setup of cypress tools
2.PNG 111.0 K
1. You could refer to the Power Adapter application diagram in the datasheet (Figure 8) which is similar to the CLA application. Please refer to the CY4532 kit schematics for accurate block diagram as per the firmware.
2. Could you please let me know where you are checking for the dpm_stat voltage and current values? Is it in app_task()?
The dpm_status_t structure holds all of the configuration of the PD stack for the port while app_status_t contains information required by the application layer. So, app_status_t is used in the DPM handlers (for e.g. psrc_set_voltage, psrc_set_current) that are returned by the PD stack using the app_cbk_t structure.
3. Please ensure that the CCG3PA source PDOs support 12V, 15V and 20V to have a PD contract with BCR when changing the switch position.
Kindly add the PDOs for 12V/15V/20V as shown in the attached figure into the CLA project configuration file and test the same.
12V_PDO.PNG 32.8 K
2. see attched txt files with two options additional options is if it possible add custom function to const app_cbk_t app_callback ?
3.see attached doc with result of experiment and additional questions
additional questions regard EZ-PD™ Configuration Utility and source PDO and custom FW which the base is SDK example of cla project
Q: what is the maximum source PDO types?
Q: Does SDK provides API ability change dynamically source PDO voltage value?
Q: after update custom FW via EZ-PD™ Configuration Utility I could not connect again and read configuration of source PDO could I read or set new one via API
Q: in power SDK documentation section 18.104.22.168 Change the Source Capabilities it is compatible to EZ-PD™ Configuration Utility configuration?
Q: We able to measurement Voltage on DOUT of BCR EVK accordantly to SW switch position except position number5 because in EZ-PD™ Configuration Utility we have only source PDO 4 types
1. I would recommend using the second method as it doesnt cause any delays in the while loop execution in main. Please test the attached code for the second method and see if you are able to get the required voltage and current levels.
-The EZ-Configuration Utility allows a maximum of 7 PDOs.
-Yes, you can use the API dpm_src_cap_update() and dpm_update_src_cap_mask() to dynamically update the PDOs.
-Please let us know how you updated the PDOs? Did you save them in the firmware file from the utility or build a new .hex file using the modified config.c file?
-The Power SDK Documentation allows you to dynamically update the PDOs in runtime from the application firmware while the EZ-PD Configuration Utility generates a configuration that initializes the device as per the configuration.
-I think you should be able to add another PDO in the Configuration Utility for 20V since you currently have 4 Source PDO nodes.
2. EZ PD configuration utility generate c file which contaion the lgtable I copyit to config.cin my code
I didnt understand how add addtional PDO in GUI of EZ PD configuration utility could guide Meir screenshot of how to to it?
dynamically update the PDOs values not list?
If I generate lg config table from utility and then copy table to config.c
There is a way build this PDOs list i(create new source pdo ) durnning running fe or init after main function?
Q : if it possible add custom function to const app_cbk_t app_callback ?
Bootable project work fine I measurment in dout volt and current but
Noboot project does not work any ideas? Do I need update config.c glconfigtable in both projects?
Please refer to the attached screenshot for adding a PDO.
You could update the PDOs in the main function, please refer to the thread- Re: Active Power Identification with Multiple PDOs
You could customize the function definitions that are already added as per the function names in the structure.
Please let me know if you tried noboot in debug mode? I was able to check the values in the dpm_stat as well as the variables you added when I added a breakpoint after the line in APP_EVT_PD_CONTRACT_NEGOTIATION_COMPLETE case.
Capture.PNG 28.8 K
first of all thanks for patience and elaborate info
yes i succsses using APP_EVT_PD_CONTRACT_NEGOTIATION_COMPLETE each time if was change on the request i print via UART
in order run nobbot project and use SWD interface run time debbuging in car charger example sdk pin 7,8 are in use PWM_OUT_A and TYPE_A_VBUS_EN when i dissable dis pin the example not working i dont understand the dependency between type a and typec i am currently want work only type c
debug run time ability
Thanks for the update. While running the noboot project in Debug mode, please ensure that the CCG_TYPE_A_PORT_ENABLE macro is disabled in stack_params.h and you have disabled the TypeA page in the schematic. Please go to the System tab in your DWR file and check if the Debug Select is set to SWD.
If you are using the CY4532 EVK, kindly check if jumpers J6, J7, J9 on the power board are open i.e. SWD lines are free for debugging.