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.

BQ25121: Writing a value but reading a different one.

Part Number: BQ25121

I want to get a LDO voltage of 3.3V.

I am Writing to Register : 0x07h , Load Switch and LDO Control Register the value: 0xE4

But when i read it i get the value : 0xFC

when i looked in Bq battery management Studio, 0xFC writes "Load Switch" ? what does it mean? and why don't i read exactly what i wrote?

Thanks!

  • Dima,

    Are you having VIN present when you do so? If not, is /CD pin high? Also make sure other register writes and reads are okay for checking.

    On the LS/LDO, make sure watchdog is not overwriting these values within 50s. Your code of 0xE4 is correct. You have to toggle the enable/ disable bit for the voltage to update.

    thanks,
    gautham
  • After checking the device:
    VIN is present, the device is connected to an external power source and BQ_POWER_GOOD pin is LOW.
    CD pin is LOW.
    All other registers are read and they hold the correct values that were written.
    I write the LDO register and read it immediately (on device boot) , 50 sec does not pass between write and read.
  • i tried writing 0x64 and them writing 0xe4 ( regarding toggle enable bit) it didnt help.
  • Dima,

    where is VINLS connected to? PMID? Is 0xE4 the only setting you are having issues with? What if you write another LDO voltage? is LSCTRL left floating (internally pulled down)