Other Parts Discussed in Thread: TIDA-01236,
Hello,
I keep getting the SOH_MERIT error when reading the status 16 seconds after a GAUGE_STOP command and prior to GE=low. I found many suggestion on this forum for what could be the cause of this error, but I have not found a solution yet. The sequence which I currently us is as follows:
- Wake up
- Start measurement cycle
- Sleep 2 seconds
- Wake up and make GE high
- Sleep 2 seconds
- Wake up and send Gauge Start command
- Check the GA control status bit every 100ms, and sleep in between. After about 1.5s to 2s the GA bit is set.
- Make a measurement and transmits the results, which is a more high power activity (40mA for some time during transmit).
- Wait for no transmit of receive activity for about 6 seconds.
- Send Gauge Stop command
- Sleep for 16 seconds (since 'R Data Seconds' is set to 15 seconds).
- Read the Status, Voltage, Temperature and State of Health.
- Make GE low
- Sleep
This always results in a SOH_MERIT when reading the status at item 12. This occurs at a measurement cycle of 5 minutes, 15 minutes, 30 minutes and also of 1 hour.
According to some forum messages the SOH_MERIT problem could be caused by the battery voltage being higher at Gause Start compared to at GE made high (initial OCV). So I added an extra load 150ms prior to Gause Start and which lasted 150ms after, by not sleeping during this time. It did not help.
I also moved the Gause Start at 200ms after the start of the transmit (transmit lasts for more than 2 seconds, using 40mA and so with a significant drop of the battery voltage of about 100mV), so during item 8. So the battery voltage is lower than OCV. It did not help.
What are the causes for the SOH_MERIT error, so I can figure out what is happening here? What is the BQ35100 doing internally when it comes to the conclusion to issue a SOH_MERIT?
Should the GE=high be followed by a Gause Start without any delays?
Regards,
Rene