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.

OPT8241-CDK-EVM: OPT9221 and TPS65912x Questions

Part Number: OPT8241-CDK-EVM

Hi there,

We are currently working on a board design which is based off the reference design of OPT8241-CDK-EVM. I have a few questions to further my understanding about the TPS65912x and OPT9221.

1) In the reference design of the evaluation board, I noticed OPT9221 ToF controller relies on the TPS65912x for power but the TPS65912x is using the SPI/I2C bus to communicate with the OPT9221. What is this communication mainly used for in this reference design – to set the output voltages of the LDOs and DCDC converters? How can we ensure that the voltage values we set in the LDO/DCDC converter registers for the TPS65912x remain unchanged since both devices are reliate on each other? Also, Is the OPT8241-CDK-EVM board using the default configuration values from the OTP memory to set the output voltages of the LDOs and DCDC converters upon power up and not changing them?

2) Secondly is how is the output power values and power sequence defined upon power up for the TPS65912x? I noticed the datasheet mentioned there is default configuration stored in OTP memory which is programmed by TI, but is there a way we can configure output power values and power sequencing upon start up on our own?

I still am trying to understand how the TPS65912x is used in the reference design of OPT8241-CDK-EVM so any help would be much appreciated. Thanks in advance.

  • Hi,

    1)
    The OPT9221 does not control the TPS659122 directly. It is safe to not connect the TPS659122's I2C_AUX bus to the OPT9221.

    The TPS659122 initialization is done via I2C by the Cypress FX2 microcontroller on the CDK at startup, and a few rails (VMIX for example) are controlled at runtime by host software, again via the Cypress FX2.

    2)
    The TPS659122 starts up with defaults from OTP, but the Cypress FX2 turns off almost all the rails at bootup and then turns them on to new final values.
    See PMIC_init() and PMIC_init2() here:
    github.com/.../pmic.c

    We do not customize any of the OTP settings in the TPS659122. For the OPT8241-CDK-EVM, this part is used as is.
    For your own design, you can control sequencing from an external host like we do with the Cypress FX2.

    Best Regards,
    Anand
  • Hi Anand,

    Thank you for the response that definitely helps.

    I powered the OPT8241-CDK-EVM with just a 5V DC jack and not the USB and I measured the power rails. I noticed that values of the rails are not the OTP default values but rather the new values configured by the Cypress FX2. Does the Cypress FX2 communicate to the OPT9221 and store the code to create new final values for the rails in the EEPROM chip, W25Q40BWSN? There are two EEPROM chips on the board; one near the Cypress FX2 (24AA128-I/SN) and one near the OPT9221.

    I just want to get a clearer understanding of how the Cypress FX2 microcontroller communicates with the TPS65921 and where the code to modify the rails are stored. I am guessing it communicates indirectly through the OPT9221. Thanks for your help.
  • The Cypress FX2 communicates directly with the TPS659122 over the I2C interface. It does not communicate via OPT9221. The code to modify the final values for the rails is in PMIC_init2() in the link shared earlier.

    The Cypress FX2 is the I2C master for most devices on the CDK. The only exceptions are TMP103 on the illumination board (OPT9221 is the master) and the OPT8241 Sensor itself.

    The W25Q40 EEPROM contains firmware for the OPT9221, and no other data. The 24AA128 contains the firmware for the Cypress FX2 and also calibration data/profiles for teh CDK. (Note: actually, this is 24AA512 on all production boards. The BOM document in the hardware design files notes this as 24AA512 correctly. The part marked on schematics will be updated in an upcoming ECO).
  • Thank you for your help Anand! That definitely cleared up my questions.