Пересчет значений датчиков

Доброго дня

Вылезла задача корректировки значений датчиков температуры
перед их отправкой в БД для дальнейшей обработки.
Корректировка - по сути число, которое надо
добавить к измеренному значению.
(китайские датчики ds18b20 оказались совсем не поверенными, хотя и достаточно точными, как ни странно. Нужно сдвигать показания)

Из видимого решения

  • создать виртуальное устройство
  • правилами пересчитывать значение и присваивать его соотв. элементу виртуального устройства
  • в базу данных выгонять уже соответствующий топик виртуального устройства

Сейчас для меня вопрос, как организовать хранение этих самых коэффициентов поправочных и применять их к соответствующим датчикам.
Какой то файлик? Какая то база? Еще какой вариант?
Упихивать это прямо в код не совсем корректно, как по мне…

Может подсказать кто что может?

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

ок. а как забекапить в какой то там файлец это хранилище?
ну, например, какой-то там файл в /mnt/data/***/delta.txt или что-то подобное?

persistence база лежит в /var/lib/wirenboard/wbrules-persistent.db

Но возможно использовать:
https://wirenboard.com/wiki/Rule_Examples#Пользовательские_поля_в_веб-интерфейсе
В таком случае конфиг будет располагаться в /etc/ с названием которое укажете.

второй вариант прям шикарный,
еще бы придумать, как туда подтягивать топики, которые корректируются
чтобы в конфиге хранить сразу пару - топик и его корректировочное значение.