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.

TPS650861: Issues Programming Device as TPS6508640

Part Number: TPS650861
Other Parts Discussed in Thread: MSP430F5529, IPG-UI,

Reported issue:

Customer is using BOOSTXL-TPS650861 + MSP430F5529 to program TPS65086100 units to match TPS6508640 OTP using 

They are able to complete the programming, including up to "(5) Check" in the GUI with no issue, but when measuring the device they found the following behavior:

Note: 

  • CTL1  H
  • CTL2 L
  • CTL3 H
  • CTL4 GPO1
  • CTL5 H
  • CTL6 L

  1. They observe SWA1 enabled 120 ms after BUCK6, but TPS6508640 datasheet shows them enabled at the same time.
  2. BUCK6 and VTT change from 1.35 V to 1.2V after about 240 ms
  3. LDOA1 is enabled 500 ms after BUCK6. Changing it to BUCK4_PG shows no improvement
  4. They cannot find SWB2 in the Excel file?

[Scope shots provided by email]

  • Hello,

    I will walk through the items listed. In order to try to reproduce, I took a new TPS65086100 unit and used a BOOSTXL-TPS650861 and MSP430F5529 EVM:

    1. They observe SWA1 enabled 120 ms after BUCK6, but TPS6508640 datasheet shows them enabled at the same time.
    I am not seeing this behavior on the BOOSTXL-TPS650861. I have the following jumpers installed: J12, J13, all of J14, J15. With this setup I get the following scope shot:

    SWA1 depends on BUCK5_PG, so it may help to check that BUCK5 and PVIN_SWA1 are both present at the same time.

    2. I am not seeing this behavior either, can you confirm that CTL1 and CTL2 is a stable voltage throughout the start-up sequence? It selects between 1.35 V and 1.2 V.

    3. As noted in scope shot, LDOA1 timing appears correct. LDOA1 depends on CTL1 and BUCK6_PG, it may help to check CTL1 voltage is stable? I also verified that if I change it from BUCK6_PG to BUCK4_PG, I see the sequence change: 

    4. Either LDOA1 or SWB2 can be included in the sequence, but not both, because they only have 1 enable tree. Please reference section 4.1.3 in the TPS65086100 Non-Volatile Memory Programming Guide for more information.

    Hopefully this helps to identify the root cause.

  • Hi Kevin,

    Thanks for your quickly help and reply. We try to program TPS65086100 all day, but it seems we cannot use OTP generator (excel) to change the OTP setting by IPG-UI.

    Attached file is our hardware setup and programming procedure. Could you please check if there is any wrong? So that we cannot program successfully.

    Besides, which position S3 and S4 should be at programming state, on or off?

    Thanks for your help again.

    TPS650861 EVM program issue_new.pdf

    Best Regards,

    Polly Chung

  • Hi Polly,

    I followed your procedure to double confirm and I still see the proper sequence. For example, this is with CTL4 held low intentionally:

    You mention "tab and paste and replace to TPS650861-Script-1p0.js file" - can you provide your current .js file? It is important that there be only one 0x140 in there. That might explain why changing your file did not have an impact.

    I would recommend having both TEST and BURN pins set to OFF position since GUI will control these.

    The last slide looks like a potential undervoltage case, you may want to check that the 5V and 7V supplies are stable, it may indicate that the MSP430 LaunchPad is damaged. Can you clear the UVLO bit and confirm that it stays cleared?

    One last question: you are not doing Step 6, correct? So NVM settings are not burned into the OTP memory.

  • Dear Kevin,

    Thanks for your big help. You are right that I did not do the step 6 in GUI. And I could write correctly and see the expected performance now.

    Beside, does the register 05 stand for UVLO bit you mention above?

    Best Regards,

    Polly Chung

  • Hi Polly,

    Good to hear that it is working. 

    Yes, the UVLO bit I was mentioning is the UVLO bit in register 0x05 (SHUTDNSRC). It indicates whether there has been a VSYS < 5.4V event. This bit is set to '1' every time the PMIC powers up for the first time and can be by writing '1' to that bit. After that, monitoring this register will indicate whether the device had a loss of power. As long as it stays '0', it means the power supply was stable and there were no issues. If it becomes '1', it would indicate that the 7V supply on the BoosterPack failed and the PMIC lost power.

  • Dear Kevin,

    Thanks for your detail explanation. I would like to ask one more thing. When we want to change OTP code, we will update the code in "TPS650861-Script-1p1.js". May I know if the code in TPS650861-1.1.json will update at the same time? Because 3-party who help program OTP code into TPS650861 said they need .json file to program TPS650861. Thank you.

    Best Regards,

    Polly Chung

  • Hi Polly,

    No, the TPS650861-1.1.json will not help them. I recommend providing the OTP Generator Excel file; I provided the suggestion to 3rd party on 7/22 so they should hopefully be aligned.

  • Dear Kevin,

    Thanks for your quickly reply. After try and error, I could get update .json by saving new project.

    Best Regards,

    Polly Chung