Выдалась возможность ещё поэкспериментировать с модулем Невотона и котлом. Результаты противоречивые… Но, может быть, они помогут @Vladimir_Nev_Sup всё-таки разобраться с проблемами модуля.
Самое главное: после холодной перезагрузки (по питанию, или через shutdown -P) модуль-таки включает котёл. Т.е. если на котёл подано питание, и он подключен через opentherm к модулю, то котёл включается, и более-менее откликается на управление через WebUI (зажигается, принимает уставку температуры и отдаёт статус).
Это из хорошего. А из плохого: любая попытка чтения ячёйки 0 через регистры “прямого обмена” в итоге приводит к переходу котла в состояние OFF. Как я и писал ранее, если при чтении передавать установленнй бит 8, то котёл на мгновение всё-таки включается, но потом снова уходит в OFF.
Неприятно то, что при этом явно происходят какие-то стохастические процессы. Так, при чтении нулевой ячейки, биты состояния котла, в частности, первый и третий, совершенно не отражают его реальное состояени на момент чтения. Они могут быть установлены, когда котёл, на самом деле находится в состоянии OFF и не горит, или сброшены, когда котёл работает и греет воду (в любом сочетании). Аналогично, после первого же чтения нулевой ячейки, перестаёт нормально работать входной регистр 205 модуля (т.е. то, что приходит в топик Boiler Status
перестаёт коррелировать с реальным состоянием котла).
Саможе же тревожное - непредсказуемость результата и “богатая внутренняя жизнь” модуля. Так, из ~20-30 опреаций чтения нулевой ячейки два раза котёл не выключился, как обычно, а продолжал работать. А а один раз он самопроизвольно включился (вышел из состояния OFF) при чтении совершенно посторонней ячейки (если интересно - ячейки 213, которой вообще нет в котле), но повторить этот фокус мне так и не удалось… А “внутреннюю жизнь” можно отследить, запустив команду mosquitto_sub -v -t '#'|grep opentherm
, и оставив её поработать некоторое время. Вот один из результатов её работы:
/devices/wbe2-i-opentherm_11/controls/Error Code 252
/devices/wbe2-i-opentherm_11/controls/Error Code 1
/devices/wbe2-i-opentherm_11/controls/Heating Temperature 14
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Min 220
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Min 35
/devices/wbe2-i-opentherm_11/controls/Heating Temperature 13
/devices/wbe2-i-opentherm_11/controls/Heating Temperature 11
/devices/wbe2-i-opentherm_11/controls/Heating Setpoint Min 2
/devices/wbe2-i-opentherm_11/controls/Heating Setpoint Min 30
/devices/wbe2-i-opentherm_11/controls/TR Command 4
/devices/wbe2-i-opentherm_11/controls/Heating Setpoint Min 194
/devices/wbe2-i-opentherm_11/controls/Heating Setpoint Min 30
/devices/wbe2-i-opentherm_11/controls/Heating Temperature 5
/devices/wbe2-i-opentherm_11/controls/Boiler Status 8126
/devices/wbe2-i-opentherm_11/controls/Boiler Status 65
/devices/wbe2-i-opentherm_11/controls/Hot Water Temperature 228
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Min 71
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Max 48
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Max 60
/devices/wbe2-i-opentherm_11/controls/Hot Water Setpoint Min 35
/devices/wbe2-i-opentherm_11/controls/Hot Water Temperature 21
/devices/wbe2-i-opentherm_11/controls/Hot Water Temperature 244
/devices/wbe2-i-opentherm_11/controls/Heating Temperature 5
/devices/wbe2-i-opentherm_11/controls/Hot Water Temperature 201
/devices/wbe2-i-opentherm_11/controls/Hot Water Temperature 244
/devices/wbe2-i-opentherm_11/controls/Error Code 252
/devices/wbe2-i-opentherm_11/controls/Error Code 1
Специально подчеркну, что я, в тот период времени, ни с котлом, ни с модулем, вообще ничего не делал. И если постепенное снижение Heating Temperature
- соответствует реальности, то самопроизвольное изменение Setpoint’ов, “взбрыки” Boiler Status
и Error Code
- абсолютно нет. Но если их изменение ещё можно попытаться списать на проблемы котла или “помехи в линии” (у меня, увы, нет анализатора, и проверить, что в реальности происходит на линии opentherm я не могу), то изменение значения TR Command
- точно касается функций самого модуля.