Hello,
I am attempting to program this gas gauge with a microcontroller and following the instructions laid out by a few manuals. I have successfully read all of the registers in the block that I want to edit and written back to those registers in the same way that the demo software writes to them. I do this at 100kHz. However, when I attempt to enter a checksum, calculated the same way that the demo software calculates the checksum of the new data, I am always nacked. If this register is working, I should get Acked (to my understanding). My 0x60 is acked. The checksum value is not. I think that this may be some difference in the communication settings that I am using. Maybe there is some need to wait for the gas gauge to process that the new checksum is correct with a clock stretch. I thought the clock stretching was only meant for allowing a shift register to wait for the read register to become available. So I am not sure why this would affect anything.
It may also be important to note that reading the 0x06 flag register returns 0xB8 (0b10111000). Does the ITPOR bit being set mean that I need to perform a soft reset and then unseal the gauge before I can program anything? Or do I have to wait for the 7th bit of the control status register to be set?
Thanks,
Zach