This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS25750: In sink configuration, after connecting non-PD USB charger, an invalid frame is sent to connected BQ25713

Part Number: TPS25750
Other Parts Discussed in Thread: BQ25713,

In our design, we have a TPS25750, and a BQ25713 connected to I2Cm of TPS.

After connecting a non-PD USB charger to the USB-C port, TPS sends an invalid write (partial write to ChargeCurrent, which is explicitly disallowed in section 9.5.1.8 of the datasheet for the charger). The end result of this is loss of communication with the charger. Below is a screenshot from an oscilloscope capture.

I tried to attach a saved file from Picoscope, but it results in error 500: "The file or url is invalid".

  • Good Morning Jan,

    Would you be able to provide me your TPS25750 settings file (JSON format) from the Application Configuration GUI?

    Kind regards,

    Conner Gillette

  • Conner,

    here's the JSON, I'm also adding a screenshot with a closer look at the faulty frame.

    Best regards
    Jan

    {"questionnaire":{"version":"7.0.4.6","answers":[6,null,1,null,0,null,1,null,1,null,1,8.336,2.048,null,null],"options":{},"configID":"0000","vendorID":"0000"},"configuration":{"data":{"selected_ace":[{"register":6,"data":[0,0,0,0,0,0,0,0]},{"register":22,"data":[10,48,48,77,0,0,0,0,0,0,3]},{"register":50,"data":[0,168,42,50,144,1,54,44,209,2,0,44,177,4,0,244,65,6,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":51,"data":[3,50,144,1,16,44,209,2,0,200,176,4,0,244,65,6,0,69,65,6,0,0,0,0,0,0,0,0,0]},{"register":92,"data":[0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}]}}}

  • Having talked with our EE, it seems that he mistakenly loaded only the lower region binary.

    We have now loaded the full binary into the EEPROM, but I can still the same faulty frame being sent.

  • Thank you for the file and the update. I'll provide you an updated binary by EOB Thursday (tomorrow), and see if that resolves your issue.

    Kind regards,

    Conner Gillette

  • My apologies for the delay Jan, I will be able to provide you the bin file by tomorrow.

    Regards,

    Conner

  • Good Afternoon Jan,

    I have attached the updated full flash binary file. Please let me know if this resolves the issue, or if you receive any further errors.

    Kind regards,

    Conner Gillette

    jan_bin.zip

  • Conner,

    sadly, no luck. There's been little luck - we are still getting similar behavior.

    Although, I have noticed something I haven't noticed before: for whatever reason, when reading the DEVICE_INFO (0x2F) register, I am not getting TPS25750. The register returns the string:

    TPS65992 HW00A1 FWF509.05.61_0003 ZAceS

    Which seems to be weird. From what I could gather online, TPS65992 is not a public part. There was one repair video for a Dell Lattitude 7040 claiming in the title it has that IC.

    Anyway, strange ICs aside, I'm adding new screenshots, as well as a CSV of I2C frames.

    Jan

    20230812-0001.csv

  • My apologies Jan, thank you for the additional screenshots. This binary should work.

    Kind regards,

    Conner Gillettehttps://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/196/jan_5F00_fixed_5F00_3.bin

  • Conner,

    seems like third time's the charm, this time it works. Not with all PD sources, but it might just be the cheap stuff we're testing with).

    Jan

  • Conner,

    after some more testing, we need to remove the 15V PDOs. Could you be so kind to generate a new binary based on the attached JSON?

    Also, could you give me an ETA on when the GUI EEPROM generator is fixed for my use case? Or notify me when the update is live?

    Thank you
    Jan

    {"questionnaire":{"version":"7.0.4.6","answers":[6,null,1,null,null,3,null,null,null,null,1,8.336,2.112,null,null],"options":{},"configID":null,"vendorID":null},"configuration":{"data":{"selected_ace":[{"register":6,"data":[0,0,0,0,0,0,0,0]},{"register":22,"data":[10,48,48,77,0,0,0,0,0,0,3]},{"register":50,"data":[0,168,42,50,144,1,54,44,209,2,0,44,177,4,0,244,65,6,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":51,"data":[2,50,144,1,16,44,209,2,0,200,176,4,0,244,65,6,0,69,65,6,0,0,0,0,0,0,0,0,0]},{"register":92,"data":[0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}]}}}

  • You should now be able to change the configuration yourself in the GUI. Try making the necessary changes to the below file and see if it is successful:

    {"questionnaire":{"version":"7.0.4.6","answers":[6,null,1,null,0,null,1,null,1,null,1,8.336,2.048,null,null],"options":{},"configID":"0000","vendorID":"0000"},"configuration":{"data":{"selected_ace":[{"register":6,"data":[0,0,0,0,0,0,0,0]},{"register":22,"data":[10,48,48,77,0,0,0,0,0,0,3]},{"register":23,"data":[8,4,0,2,0,0,0,0,0,0,0]},{"register":31,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":32,"data":[0,0]},{"register":35,"data":[0,224,1,0]},{"register":39,"data":[5,9,20,0,28,7,0,0,80,81]},{"register":40,"data":[0,8,47,0]},{"register":41,"data":[50,80,201,0]},{"register":43,"data":[0,2,0,0,1,0,0,0]},{"register":50,"data":[0,168,42,50,144,1,54,44,209,2,0,44,177,4,0,244,65,6,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":51,"data":[3,50,144,1,16,44,209,2,0,200,176,4,0,244,65,6,0,69,65,6,0,0,0,0,0,0,0,0,0]},{"register":55,"data":[59,192,18,100,180,144,1,0,0,0,0,0,0,0,0,0]},{"register":66,"data":[10,0,0]},{"register":67,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":71,"data":[6,81,4,64,149,81,4,0,0,5,9,0,0,0,0,0,104,0,0,0,0,0,0,0,71]},{"register":74,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":75,"data":[0,0,0,0]},{"register":81,"data":[0,6,0,0,0,0]},{"register":82,"data":[0,128,0,0,0,0,0]},{"register":86,"data":[63,128]},{"register":92,"data":[0,0,0,0,0,0,0,0,0,16,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":93,"data":[0,0,0,0]},{"register":98,"data":[0,0,1,45,0,0,0,0]},{"register":100,"data":[107,0,0,0,0,0,0,0,0,0,0]},{"register":108,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":111,"data":[0,0,0,0,0]},{"register":112,"data":[0]},{"register":115,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":117,"data":[0,0,0,0]},{"register":119,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,127]},{"register":121,"data":[0,0,0,0,0,0]},{"register":123,"data":[0,2,255,255,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":125,"data":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{"register":126,"data":[0,0,0,0,0,0,0,0,0,0,0]}],"bin_table":[{"rights":0,"register":0,"data":[],"offset":0},{"rights":0,"register":1,"data":[35,3,0,0,14,130],"offset":0},{"rights":0,"register":2,"data":[35,3,0,50,55,2],"offset":0},{"rights":0,"register":3,"data":[35,3,0,4,144,32],"offset":0},{"rights":0,"register":4,"data":[35,3,0,2,0,8],"offset":0},{"rights":0,"register":5,"data":[35,3,0,52,48,16],"offset":0},{"rights":0,"register":6,"data":[1,3,0,4,144,32],"offset":0},{"rights":0,"register":7,"data":[1,3,0,2,0,8],"offset":0},{"rights":0,"register":8,"data":[2,3,0,4,144,32],"offset":0},{"rights":0,"register":9,"data":[2,3,0,2,0,8],"offset":0},{"rights":0,"register":10,"data":[60,3,0,4,144,32],"offset":0},{"rights":0,"register":11,"data":[60,3,0,2,0,8],"offset":0},{"rights":0,"register":12,"data":[39,3,0,6,212,14],"offset":0},{"rights":0,"register":13,"data":[39,2,0,9,64],"offset":0},{"rights":0,"register":14,"data":[40,3,0,6,92,26],"offset":0},{"rights":0,"register":15,"data":[40,2,0,9,64],"offset":0},{"rights":0,"register":16,"data":[41,3,0,6,244,35],"offset":0},{"rights":0,"register":17,"data":[41,2,0,9,64],"offset":0},{"rights":0,"register":18,"data":[37,3,0,0,14,130],"offset":0},{"rights":0,"register":19,"data":[37,3,0,50,55,2],"offset":0},{"rights":0,"register":20,"data":[37,3,0,4,144,32],"offset":0},{"rights":0,"register":21,"data":[37,3,0,2,0,8],"offset":0},{"rights":0,"register":22,"data":[37,3,0,52,48,16],"offset":0},{"rights":0,"register":23,"data":[39,2,0,13,75],"offset":0},{"rights":0,"register":24,"data":[39,3,0,11,2,108],"offset":0},{"rights":0,"register":25,"data":[],"offset":0},{"rights":0,"register":26,"data":[],"offset":0},{"rights":0,"register":27,"data":[40,2,0,13,75],"offset":0},{"rights":0,"register":28,"data":[40,3,0,11,4,196],"offset":0},{"rights":0,"register":29,"data":[],"offset":0},{"rights":0,"register":30,"data":[],"offset":0},{"rights":0,"register":31,"data":[41,2,0,13,75],"offset":0},{"rights":0,"register":32,"data":[41,3,0,11,6,184],"offset":0},{"rights":0,"register":33,"data":[],"offset":0},{"rights":0,"register":34,"data":[37,3,0,1,4,236],"offset":0},{"rights":0,"register":35,"data":[],"offset":0},{"rights":0,"register":36,"data":[37,3,0,3,0],"offset":0},{"rights":0,"register":37,"data":[],"offset":0},{"rights":0,"register":38,"data":[],"offset":0},{"rights":0,"register":39,"data":[37,2,0,8,195],"offset":0},{"rights":0,"register":40,"data":[37,2,0,9,0],"offset":0},{"rights":0,"register":41,"data":[0,0,0,0,88,26],"offset":0},{"rights":0,"register":42,"data":[],"offset":0},{"rights":0,"register":43,"data":[],"offset":0},{"rights":0,"register":44,"data":[],"offset":0},{"rights":0,"register":45,"data":[0,0,0,0,244,35],"offset":0},{"rights":0,"register":46,"data":[],"offset":0},{"rights":0,"register":47,"data":[],"offset":0},{"rights":0,"register":48,"data":[],"offset":0},{"rights":0,"register":49,"data":[],"offset":0}]}}}