dontsovcmc / waterius

Передача показаний воды по Wi-Fi. Watermeter Wi-Fi transmitter.
https://waterius.ru
GNU Lesser General Public License v3.0
563 stars 108 forks source link

Сохранение данных через минуту после начала счета без ожидания импульса. #268

Closed neitri closed 1 year ago

neitri commented 1 year ago

Если код вызывать выше после инкремента, то значение запишется при первом импульсе после 1 минуты отсчета счетчика. Т.е. при спускании бочка унитаза, данные подсчитанные при его наполнении запишутся при следующем спускании.

dontsovcmc commented 1 year ago

Можете другими словами пояснить, в чем проблема? Запись в eeprom нужна исключительно для защиты от перезагрузки (чтобы восстановить данные) или смены батареек, что случается исключительно редко (а у некоторых никогда).

neitri commented 1 year ago

Если говорить о старой версии, там каждый импульс записывается. Здесь же, получается так, что течёт вода, и показания записываются 1 раз в минуту. Закрываем воду, и показания не запишутся через минуту. А запись произойдёт только при следующем импульсе. Вот и получится, что спускаем бачек, ждём пару минут, меняем батарейки. В данном случае мы потеряем эти импульсы которые посчитали при наполнении бочка. Данная ситуация происходит потому что запись идёт только по фронту импульса. Я предлагаю записывать данные по истечении таймера.

dontsovcmc commented 1 year ago

очень сложный кейс =/