2023-04-04 11:23 PM
I having issue addressing L9963E when the device is already awake. Currently my team is working on developing a BMS using two L9963E in a daisy chain configuration.
In some instances, we may have to reset our micro controller(eg: Soft Reset, WDT reset). During that period L9963E will already be initialized and awake (Comm timeout is set to 2s). After the soft reset on the micro controller, the program tries to initialize L9963E by first reading DEV_GEN_CFG. I expected that if L9963E already initialized it should give me correct config in DEV_GEN_CFG but all i got is 0xFFFFFFFFFF from both L9963E. Since it isn't the correct config, the program will send the boardcast cmd with the correct chip id and all as mentioned in the datasheet. Then again it will read DEV_GEN_CFG register and again it receives 0xFFFFFFFFFF. The program will tries to initialize L9963E for 3 times if it fail an error is send.
Also even though initialization failed in this case, I could read all cell voltages, temperature and all other registers with no issues. Initially the program pulls down ISOFREQ of L9963T and after initialization it pulls up ISOFREQ pin. Since iso_freq_sel is set to 11 after initialization, could it be the reason why initialization fails after a software reset on the microcontroller ?