Other Parts Discussed in Thread: BQ25756, , , BQ25756EVM
Tool/software:
Hi,
We have a trio consisting of the TPS25751 PD, the BQ25756 charger, and an EEPROM (CAT24C512), which are connected via the I2Cc bus. There is no MCU in operation. We want to write to the EEPROM via the I2Ct bus. To do this, we have implemented the update flow from TI Application Note SLVAFL1 and the patch flow from TI User Guide SLVUCR8A and an initial flashing that just writes full binary file to eeprom via FLwd.
What we did:
Initial State:
Mode:PTCH Patch Mode:True TPS25751 STATUS (0x1A): 0x0000000000 Interpreted Fields: Plug Present (0) : 0 → No plug connected Connection State (3:1): 0 → No connection Plug Orientation (4): 0 → CC1 (upright) Port Role (5): 0 → Sink Data Role (6): 0 → UFP (Device) VBUS Status (21:20): 0 → vSafe0V (< 0.8V) USB Host Present (23:22): 0 → No host Acting as Legacy (25:24): 0 → Not in legacy mode BIST in Progress (27): 0 → No SoC Ack Timeout (30): 0 → Responded Boot Flags Register Interpretation ---------------------------------- Revision ID: 193 Patch Config Source: 0 (No configuration has been loaded) System Thermal Shutdown (TSD): No Region 1 CRC Fail: No Region 0 CRC Fail: No Patch Download Error: No Region 1 EEPROM Error: No Region 0 EEPROM Error: No Region 1 Invalid: Yes Region 0 Invalid: Yes Region 1 Attempted: Yes Region 0 Attempted: Yes I2C EEPROM Present: Yes Dead Battery Flag: No Patch Header Error: No Reading BQ25756 configuration registers... Charge Voltage Limit: 1.504 V Charge Current Limit: 6.400 A Termination Current Limit : 6.600 A [...]
-
After patching the full binary file to the TPS:
Mode:APP Patch Mode:False TPS25751 STATUS (0x1A): 0x0000000005 Interpreted Fields: Plug Present (0) : 1 → Plug connected Connection State (3:1): 2 → Audio connection (Ra/Ra) Plug Orientation (4): 0 → CC1 (upright) Port Role (5): 0 → Sink Data Role (6): 0 → UFP (Device) VBUS Status (21:20): 0 → vSafe0V (< 0.8V) USB Host Present (23:22): 0 → No host Acting as Legacy (25:24): 0 → Not in legacy mode BIST in Progress (27): 0 → No SoC Ack Timeout (30): 0 → Responded Boot Flags Register Interpretation ---------------------------------- Revision ID: 193 Patch Config Source: 6 (Configuration loaded from I2C) System Thermal Shutdown (TSD): No Region 1 CRC Fail: No Region 0 CRC Fail: No Patch Download Error: No Region 1 EEPROM Error: No Region 0 EEPROM Error: No Region 1 Invalid: Yes Region 0 Invalid: Yes Region 1 Attempted: Yes Region 0 Attempted: Yes I2C EEPROM Present: Yes Dead Battery Flag: No Patch Header Error: No Reading BQ25756 configuration registers... Charge Voltage Limit: 1.566 V Charge Current Limit: 0.400 A Termination Current Limit : 0.250 A
-
After patching the full binary file to the EEPROM (address 0):
Mode:APP Patch Mode:False TPS25751 STATUS (0x1A): 0x0000000005 Interpreted Fields: Plug Present (0) : 1 → Plug connected Connection State (3:1): 2 → Audio connection (Ra/Ra) Plug Orientation (4): 0 → CC1 (upright) Port Role (5): 0 → Sink Data Role (6): 0 → UFP (Device) VBUS Status (21:20): 0 → vSafe0V (< 0.8V) USB Host Present (23:22): 0 → No host Acting as Legacy (25:24): 0 → Not in legacy mode BIST in Progress (27): 0 → No SoC Ack Timeout (30): 0 → Responded Boot Flags Register Interpretation ---------------------------------- Revision ID: 193 Patch Config Source: 5 (Configuration loaded from EEPROM) System Thermal Shutdown (TSD): No Region 1 CRC Fail: No Region 0 CRC Fail: No Patch Download Error: No Region 1 EEPROM Error: No Region 0 EEPROM Error: No Region 1 Invalid: No Region 0 Invalid: No Region 1 Attempted: No Region 0 Attempted: Yes I2C EEPROM Present: Yes Dead Battery Flag: No Patch Header Error: No Reading BQ25756 configuration registers... Charge Voltage Limit: 1.566 V Charge Current Limit: 0.400 A Termination Current Limit : 0.250 A
There are no errors during flashing. Updating a region with a low binary file works as well without errors.
Our Problem is that the shown values of BQ25756 do not match the values configured in USBCPD Application (eg. Charge Current Limit is set to 2A). Even if we change values and update the eeprom region. We can see TPS is booting from newly updates region but values of BQ25756 stay the same. And why is Status Register 0x1A showing 0x5 (plug connected)?
What we tried:
-
Reading back the EEPROM yields an identical binary blob as generated by the USB-PD Application Customization Tool.
-
We patched the same binary onto the TPS25751EVM + BQ25756EVM. Here, the Charge Current Limit is correctly set to 2A.
-
Patching various low-level binaries onto the TPS. The output remains unchanged every time.
What are we doing wrong?
Thanks,
Tobias