Other Parts Discussed in Thread: BQ35100, BQSTUDIO
I have a BQ35100EVM-795 devboard and I wrote a C program which is continuously requesting BatteryStatus(), BatteryAlert(), and CONTROL_STATUS.
Here's I2C dump of communications with BQ35100 (I got it using Saleae Logic):
write to 0x55 ack data: 0x0A
read to 0x55 ack data: 0x05
write to 0x55 ack data: 0x0B
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x3E 0x00 0x00
write to 0x55 ack data: 0x40
read to 0x55 ack data: 0x00 0x00
write to 0x55 ack data: 0x0A
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x0B
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x3E 0x00 0x00
write to 0x55 ack data: 0x40
read to 0x55 ack data: 0x00 0x00
write to 0x55 ack data: 0x0A
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x0B
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x3E 0x00 0x00
write to 0x55 ack data: 0x40
read to 0x55 ack data: 0x00 0x00
write to 0x55 ack data: 0x0A
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x0B
read to 0x55 ack data: 0x01
write to 0x55 ack data: 0x3E 0x00 0x00
write to 0x55 ack data: 0x40
read to 0x55 ack data: 0x00 0x00
and so on.
As you can see, ALERT is raised because of INITCOMP, but I can't get INITCOMP flag in CONTROL_STATUS register. What am I doing wrong?