Other Parts Discussed in Thread: BQ25756,
Hi,
As the previous posts indicate, TPS25751 and BQ25756 are controlled separately via I2C by MCU in our design as following:
Some issues happened during our debug, could you kindly help to analyze? Thanks.
1.
At first we implemented the Source process based on the flow chart of the file "EC_Controlled_Supply.pd" in the last post.
The steps are as following:
Step 1.Confirm PD's loading from EEPROM, initialize Charger's registers including setting REG0x0C to 5V;
Step 2.When peripheral Sink such as mobile phone is plugging in, I2Ct_IRQ interrupt of PD is recognized by MCU;
Step 3.MCU read PD's Status Register, and confirm the Bit_5 Port Role is Source;
Step 4.Enable Charger's Reverse mode to enable CHG_INPUT 5V output for Implicit Contract;
Step 5.Wait for the Sink Transition Completed interrupt;
Step 6.Read PD's Active RDO Contract Register;
Step 7.MCU set Charger's REG0x0C according to the voltage value of RDO in the Step 6;
Then,
(1) Use mobile phone 5V, it works normal;
(2) Use mobule phone 9V, the RDO voltage and current are both 0 in the Step 6(It is stable phenomenon if we keep REG0x0C setting as 5V in step 1);
(3) If REG0x0C was modified to 9V in Step 1, then use mobule phone 9V, we could get valid RDO 9V(sometimes all 0);
(4) Use laptop 20V, the RDO voltage and current are both 0 in the Step 6. Then modify REG0x0C to 20V, we could get valid RDO 20V. But after serval attempts, the PD seemed to break dowm and could not work as Source for the above equipment including mobile phone 5V, mobile phone 9V. i.e, PD could not charge these peripheral devices any more. It seemed some permanent demage occured on this PD.
The questions are:
(1)What's wrong with the above steps? Why does it not work when configuring REG0x0C to 5V?
(2)What happened in the above issue when conifguring 20V?
2.
In the past we used local USBCPD tool(version 0.5.10) to generate PD's EEPROM data, which was "USBCPD_BasedOnOldTool_20240518.json", and it worked normal on our PD.
Recently we found this tool was updated to v0.6.0, so we applied the same configuration online and generate "USBCPD_BasedOnNewTool_20240518.json". But it could not work normal. For example, PD could not generate I2Ct_IRQ interrupt when Type-C was plugged in or out.