Мои мысли. Как уже написано - устанавливать факт смены аккумулятора
каким-либо образом. Да хоть RC-цепочку с питанием от аккума на
ножку с достаточно длинным тау: при старте есть напряжение - всё
норм, нет - аккумулятор извлекался, в EEPROM сохраняем
необходимость калибровки на случай, если хитрозадый юзверь сделает
"вкл-выкл-вкл". Калибровку емкости по циклу заряд-разряд, других
идей нет. Под это дело вахтёра со счётчиком измеритель какой-то, датчик. Если допускается установка аккумуляторов только двух типов номинальной емкости, то можно оценивать по "расходу напряжения" по отношению к потраченным кулонам( dV/dQ ) номинал установленного. При измерении по напряжению хорошо бы датчик температуры для более точной оценки емкости. Отображать до калибровки или цветом другим, или символы, например "75%?"
Пара документов.
Battery_Charging_Technology.pdf
panasonic_ncr18650b-2.pdf