The m5 algorithm normally takes a few charge/discharge cycles to learn the full and empty points. During this learning phase, the voltage model is the dominant input to the fuel gauge mixing algorithm. Once the learning phase is finished and the full and empty points are established, the coulomb counter becomes the dominant input to the mixing algorithm. Because of this, the fuel gauge can exhibit lower accuracy during the first few charge cycles, especially with the default EZ model.
Follow the steps below to skip the learning phase:
- Establish a known state of charge in the battery by fully charging or discharging the battery.
- Reset the fuel gauge and set up the battery model.
- Set the LS bits (D6-D0) in the LearnCfg register to 0b111. This marks the learn stage as complete.
- Write MixCap and RepCap registers to the known capacity established in step 1.
After following these steps, the RepCap and RepSOC registers should accurately track the capacity and SOC of the battery.