В этом есть. Разобрался почему данные не сохраняются. Они были привязаны на событие от смарткома, что дисконект завершен успешно. А если смартком повис, то события не было, данные в кеше не сохранялись.
Сделаю сегодня, чтобы сохранялись в любом случае при закрытии программы.