Hello,
I have an issue with NACH/NACL initialisation during the startup of a microcontroller program.
Essentially the software reads the NACH and NACL registers and writes these values to its EEPROM. On power up/software reset, the EEPROM is read and this is written to NACH/NACL registers ready for further battery charging/discharing. Let me make it clear that the gas gauge is remote to the battery and powered seperately as well.
The issue I am observing is that initially the first number of NACH/NACL reads yield the expected values as written from the EEPROM, but after a number of repeat reads the registers both return to zero. Hence the correct battery capacity is lost. This has been observed using an oscilloscope capturing the first message replies. I am puzzled with this issue and have inserted a catch in the software that rewrites the EEPROM values if the software is restarted with the battery not being immediately charged or discharged, using the INTSS register. This solution appears to work, but doesn't deal with the underlying issue of why the NACH/NACL returns to zero or the situation when the software is restarted mid charge/discharge.
Can you please assist and feel free to ask if further details are required.