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.

TPS65216: Porting question about TI/TPS65216

Part Number: TPS65216
Other Parts Discussed in Thread: BOOSTXL-TPS65218, IPG-UI

Hi, TI member,

We are using TI product TI/TPS65216.

Would you mind to help us about below?

Our software member would like to know if we would like to have below output voltage of TPS65216, what register should to set and setting value by our EC FW via I2C?

LDO1: 1.2V

DCDC1:No output

DCDC2:No output

DCDC3: 3.3V

DCDC4: 2.8V

LS output:No output

Thank you.

  • Hi,

    Due to US holidays, my colleague supporting this device is out of office and he will confirm whether my understanding is correct. In the meantime, see the below.

    LDO1: 1.2V : 

    LDO1 Register (subaddress = 0x1B) bits 5-0, data =  C (hex)

    ENABLE2 Register (subaddress = 0x12), data: bit-0 (LDO1_EN) = 1

    DCDC1:No output:

    ENABLE1 Register (subaddress = 0x11), data: bit-0  (DC1_EN) = 0 (bit)

    DCDC2:No output:

    ENABLE1 Register (subaddress = 0x11), data: bit-1  (DC1_EN) = 0 (bit)

    DCDC3: 3.3V

    DCDC3 Register (subaddress = 0x18) bits 5-0, data:3D (hex)

    ENABLE1 Register (subaddress = 0x11), data: bit-2  (DC3_EN) = 1 (bit)

    DCDC4: 2.8V

    DCDC4 Register (subaddress = 0x19) bits 5-0, data: 28 (hex)

    ENABLE1 Register (subaddress = 0x11), data: bit-3  (DC4_EN) = 1 (bit)

    LS output:No output

    ENABLE2 Register (subaddress = 0x12), data: bit-3= 0 (bit)

    I think you will have to clear the Password Protection before writing the registers and refer to the datasheet Password Protection for more information on this.

    Additionally, you may have to set the correct UVLO thresholds and voltage supervisor monitoring tolerances depending on your use case and details are provided in the datasheet.

    Regards,

    Murthy

  • Marx,

    My colleague Murthy provided correct answer below, but I will simplify the data for each register.

    You will need to write by I2C to the following Registers:

    • Reg. 0x11, ENABLE1 = 0x0C (only DCDC3 & DCDC4 enabled), Reg. 0x10, PASSWORD = 0x6C before writing to register 0x11
    • Reg. 0x12, ENABLE2 = 0x01 (only LDO1 enabled), Reg. 0x10, PASSWORD = 0x6F before writing to register 0x12
    • Reg. 0x13, CONFIG1 = 0x08 (STRICT = 0b, GPIO2 independent output), PASSWORD = 0x6F before writing to register 0x13
    • Reg. 0x14, CONFIG2 = 0x40 (GPIO3 is general purpose output), PASSWORD = 0x69 before writing to register 0x14
    • Reg. 0x16, DCDC1 = Don't Care if disabled
    • Reg. 0x17, DCDC2 = Don't Care if disabled
    • Reg. 0x18, DCDC3 = 0xBD (VDCDC3 = 3.3V), PASSWORD = 0x65 before writing to register 0x18
    • Reg. 0x19, DCDC4 = 0xA8 (VDCDC4 = 2.8V), PASSWORD = 0x64 before writing to register 0x19
    • Reg. 0x1B, LDO1 = 0x0C (VLDO1 = 1.2V), PASSWORD = 0x66 before writing to register 0x1B

    Keep in mind, you will also need to overwrite the settings in SEQ1-SEQ7 register (addresses 0x20-0x26) if you want to sequence the regulators correctly. For example:

    • Reg. 0x20, SEQ1 = 0x00 (minimum delay between sequence strobes), PASSWORD = 0x5D before writing to register 0x20
    • Reg. 0x21, SEQ2 = 0x00 (minimum delay between sequence strobes), PASSWORD = 0x5C before writing to register 0x21
    • Reg. 0x22, SEQ3 = 0x00 (DCDC1/2 disconnected from sequencer), PASSWORD = 0x5F before writing to register 0x22
    • Reg. 0x23, SEQ4 = 0x43 (DCDC4 enabled at strobe #4, DCDC3 enabled at strobe #3), PASSWORD = 0x5E before writing to register 0x23
    • Reg. 0x24, SEQ5 = 0x00 (DCDC5/6 disconnected from sequencer), PASSWORD = 0x59 before writing to register 0x24
    • Reg. 0x25, SEQ6 = 0x05 (LS1 disconnected from sequencer, LDO1 enabled at strobe #5), PASSWORD = 0x58 before writing to register 0x25
    • Reg. 0x26, SEQ7 = 0x00 (GPO1/3 disconnected from sequencer), PASSWORD = 0x5B before writing to register 0x26

    And you will need to re-program the EEPROM memory to commit these settings to non-volatile memory. The can be achieved by applying VIN_BIAS > 4.5V and writing the correct sequence to the Reg. 0x10, PASSWORD: 0x50, 0x1A, 0xCE (must be written consecutively, with no other I2C commands in between these three bytes.

    If done correctly, your register map would look the same as the below screen shot taken using my BOOSTXL-TPS65218 board with the IPG-UI to re-program a TPS65216 sample:

  • Hi, Brian,

    Many thanks!!!