Other Parts Discussed in Thread: BQ25792
I have the USB power delivery part (TPS25750) connected to the I2C bus of the BQ25792 battery charger. I am setting up a test with two series batteries that I will charge at 2A up to 8.4V. I have modified PROG pin to 8.2k so that the switcher in the BQ25792 will operate at 750kHz (2.2uH inductor) and I correctly see 8.4V as the target voltage when I boot if PD negotiation has not occurred and the TPS25750 has not written to the BQ registers. This is REG01 having a hex value of 0348 (setting of "840", or 8400mV, or 8.4V).
However, when PD negotiation runs, there is an extra command that is sent to REG 0A of the BQ charger. This register is not involved at all with the binary file I've created from the GUI, at least not that I can see. Additionally, I see the PD part correctly write 0348 to register 01 earlier in the sequence of writes the TPS25750 autonomously does after PD negotiation to 9V. From what we can tell, this write to 0x0A has the side effect of changing the value of REG 01 to 01A4 (420, or 4200mV, or 4.2V) and we aren't sure why 0x0A is written at all.
Is it expected that 0x0A should be written as "00 00" at the end of the PD sequence? Beyond this being an unexpected write, the fact that two bytes are written is also weird because REG 0A is only one byte in length. If we manually write REG 0x0A to 0x63 after PD runs, then REG 01 correctly flips back to the value of 0348 (8.4V), which is what we want to charge our 2s battery config.
I am including the binary file we are using with our EEPROM and a screen cap of the I2C events that happen at boot time.