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.

BQ76PL455A: Inconsistent register reading

Part Number: BQ76PL455A

Hello,

We are designing a 16 cells monitoring and balancing single board device with BQ76PL455A and TMS070LS0714 communicating through UART . Software is being developed based on slva617a application note.

I can read correctly the cells voltages. For testing purposes, I've connected the VSENSE5 input to the positive pin of the 4th cell instead of positive pin of the 5th cell. The cell voltages reading is as follow:

VSENSE1         3.47844672     
VSENSE2         3.47783637     
VSENSE3         3.47730231     
VSENSE4         3.47821784     
VSENSE5         0.383917004    
VSENSE6         4.99832153     
VSENSE7         3.86381316     
VSENSE8         3.35759521     
VSENSE9         3.47844672     
VSENSE10        3.47890449     
VSENSE11        3.47615767     
VSENSE12        4.0923171      
VSENSE13        3.47837043     
VSENSE14        3.47829413     
VSENSE15        3.47722602     
VSENSE16        3.48210883 

I've setup the UV/OV thresholds according to slva617a  with:

nSent = WriteReg(0, 144, 0xD1EC, 2, FRMWRT_SGL_NR); // set OV threshold = 4.1000V
nSent = WriteReg(0, 142, 0x6148, 2, FRMWRT_SGL_NR); // set UV threshold = 1.9000V

When I read the Device Status register (81) I get an expected result of 0x80 with FAULT_CONDITION bit set. Trying to find the cause of the error, I read the Fault Summary (82-83) by sending the request:

 nRead = ReadReg(0, 82, &bTemp, 2, 0); // Read Fault Summary register

but the answer I get in bTemp variable is 0xCC which according to register bits makes no sense: bit[2] and bit[3] are set while they are RSVD and CHIP_FAULT_SUM = 1 and GPI_FAULT_SUM= 1.

Further reading of registers 97-98 (Chip Fault) and 99 (GPI Fault) return 0x00.

Can you please help me to understand this behavior?

Thank you.



  • Hi Olivier,

    For register 82 (fault_summary),reading 0xCC is 11001100 which corresponds to OV and UV fault_sum registers. This makes sense because you have one cell below UV (cell5) and one above OV (cell6). Double check the fault_summary bits in the datasheet and let me know if there is still a concern.

    Regards,

    Taylor