WBE2-I-OPENTHERM + Baxi Duo-Tec 1.24 прозрачный обмен

В какой-то момент из регистра CD стало постоянно (и при нагреве ГВС, и при запросе тепла) читаться 9217… причем состояние не меняется как при записи в D3 числа 4352 (включены CH и CH2), так и при записи 4864 (включены CH, DHW и CH2).
В целом функционал “прозрачного обмена” позволяет мне делать что надо - включать/отключать CH, DWH, CH2 или полностью выключать котел.

Еще хотелось бы узнать как правильно работать с котлом? Заметил, что если, например, в текущий момент идет нагрев ГВС, то при его принудительном отключении (записываю в D3 4352) котел вообще выключается (экран переходит в выключенное состояние). Нужно дождаться чтобы закончился процесс нагрева ГВС только после этого отключать DHW? Или это какое-то не стандартное поведение котла?

При работе с котлом через регистры “прозрачного обмена” котел ведет себя непредсказуемо.
В начале вообще ошибся (хотел просто читать данные из того же MSG ID=0) и записывал в D1-D2-D3 шлюза, соответственно, 2-0-4352. Котел на это реагировал выключением DHW, соответственно, при 2-0-4864 котел реагировал включением DHW. При этом регистр входа CD читался как нулевой, либо через какой-то промежуток времени были какие-то “случайные” значения - 40960, 25571 и другие.
Если в шлюз передавал, например, 2-0-4608, то котел мог просто выключиться. Или, например, если в шлюз записывал 2-0-4352 когда котел грел ГВС, то в котле выключалось отопление (пропадал на экране соответствующий значок), либо он мог просто выключиться.
Перечитав документацию, понял, что последовательность должна быть с 3-кой в начале (“запись” в котел). Исправил все в своем сценарии. Вроде бы все работает так же (все включается/выключается, регистр CD читается нулевым), но в какой-то момент в течении дня котел может просто сам выключиться! Хотя команда на отключение DHW (3-0-4352) прошла утром.

В общем, сейчас функционал “прозрачного” обмена сырой, нужно дорабатывать:

  1. После первой транзанкции с котлом через регистры “прозрачного обмена”, регистр входа CD не несет полезной информации - всегда обнуленный. Восстанавливается только сбросом модуля по питанию.
  2. Если или D1 = 2 или D1 = 3, то происходит запись информации в котел…
  3. Котел странно реагирует, например, на отключение DHW когда происходит нагрев ГВС (либо исчезает значок отопления, либо котел выключается). Так же наблюдал отключения котла, когда отключал CH при нагреве. При работе в режиме “записи” в котел (D1 = 3) он почему-то самопроизвольно отключается через значительный промежуток времени после подачи команды отключения DHW. Может есть какие-то “правила” когда можно отправлять команду котлу, а когда нельзя???
  4. Не понятно что должно быть в D3 когда происходит чтение из котла (D1 = 2)???

Слежу уже несколько дней за работой котла при включении DHW утром и выключении вечером последовательностями 3-0-4864 и 3-0-4352, соответственно.

  1. Наблюдаю, что котел в течении дня может вдруг выключиться…соответственно ГВС не греется, отопление тоже не включается.

  2. Через несколько дней вдруг из регистра входа d2 стало читаться давление 14,9 bar…хотя по факту 1.4bar

Поскольку пока тех поддержка Невотон не отвечает то могу зафиксировать следующую закономерность - если происходит запрос тепла от котла или котел нагревает ГВС, то любая команда управления через регистры “прозрачного обмена” приводит к его выключению или не адекватному поведению (вместо DHW отключается CH или вместо CH отключается DHW или котел просто выключается).

Я думаю что в случае прямого управления - полную информацио о особенностях работы с регистрами именно этой модели сможет дать только производитель котла.
Модуль WBE2-I-OPENTHERM реализует стандартные команды, точно такие же как отдает термостат.

Котел общается с модулем через интерфейс OpenTherm, имеющим довольно стандартизованное описание. Не думаю, что одна линейка Baxi (в данном случае Luna) слишком отличается от другой в плане управления (в случае разработчиков - Slim), тем более для управления какими-то не стандартизованными вещами протокол предусматривает множество reserved битов.
Другое дело, что у разработчиков модуля есть лишь плата управления котлом и им затруднительно имитировать работоспособность котла. Однако если понять где копать, то можно помочь выявить проблему в прошивке.

Проблему поняли, будем имитировать сценарий у себя. Пока что не так много доступного времени на изменение прошивки. Заняты :frowning:

2 лайка

Все же можно получить ответы на следующие вопросы:

  1. Регистр входа CD (когда от него поступает актуальная информация) мне всегда выдает только lowbyte — текущий статус котла, но не highbyte, который всегда нулевой. Это так и должно быть?
  2. Если через регистры «прозрачного обмена» идет запрос данных (для примера D1 = 2 и D2 = 0), то что нужно записывать в D3?

Коллеги, а вы можете рассказать как устроен обмен данными между WB и OT-модулем? Ну или можно где-то увидеть код, обеспечивающий обмен данными?
У меня все работает как надо (чтение всех регистров, изменение регистров хранения) до тех пор как я начинаю осуществлять передачу данных через регистры “прозрачного обмена”. Не понимаю в чем проблема! Мои предположения:

  1. Нужно перед формированием OT-сообщения c Msg ID=1 на управление slave, вначале читать статус slave (только как это сделать - я не понял - D1=2, D2=0, D3=?), анализировать его состояние и в зависимости от него формировать управляющую команду.
  2. Еще что-нибудь…

Мне всего лишь требуется отключать нагрев ГВС в косвенном бойлере чтобы он не грелся 24 часа в сутки и при отсутствии дома тоже не нужен нагрев ГВС.

Обмен данными с модулем осуществляется драйвером wb-mqtt-serial по протоколу Modbus (физический интерфейс c модулем - UART).

День добрый подскажите “включать/отключать CH, DWH, CH2 или полностью выключать котел” вы через какие регистры прозрачного обмена это организовывали?

Вообще это делается через MSG с ID=0. Почитайте описание протокола Opentherm.
Однако поскольку мой котел неадекватно реагирует на команды прозрачного обмена, то я отказался от идеи управления котлом через регистры прозрачного обмена с помощью данного шлюза.
Перейти на шлюз другого производителя пока нет ни желания, ни времени, ни лишних средств.

да через ID=0, но у него тип MSG стоит R (read ) доступен только для считывания статуса или я чтото не так понимаю? поэтому я и спрашиваю. тоже с новотоном разбираюсь.

В ID0: Slave status LB только Read, Master status HB R/W. Поэтому эту команду можно и читать и писать.

Вы не путаете случаем с ID2 ? или у нас разные документы по ОТ.
Opentherm Protocol v2-2.pdf (278.8 КБ)
ID0 стр24 мастер и слав статус MSG-Read only, это те статусы в котором слейв устройство(котел) и мастер(термостат) находятся в определенных состояниях и любые попытки записи туда приводят к возврату ошибки 7 (110 DATA-INVALID )
ID3 это с конфигурируемое состояние на заводе котла что он умеет делать.
а вот ID2 это то что мы можем сами конфигурировать в мастер устройство.

Тот же. Не так выразился. Команда хоть и на чтение, но если обычно при чтении в DATA пишется 0, то в случае ID0 можно писать число, отличное от 0. И это не будет ошибкой.
Как пример: ID 0 get status (0000 0000‬ 0000 0000‬ M:0001 0011 S:0000 0110‬) // Активированы все контура.

И так мы даём понять котлу, что в Мастере (термостате) стоят флаги на включение всех контуров, и он на это реагирует.

1 лайк

Большое спасибо за прояснение работы, изначально так и пробовал, но котел не адекватно, тогда как я думал реагировал. Хотя он работал так как ему говорил шлюз.
К примеру при передаче ему команды msg=0 id=0 data=0 котел должен выключиться, что он и делает пишет OFF. но через пару секунд он запускается заново, тоесть тут как я понимаю срабатывается уставка согласно инструкции (в автоматическом режиме совершается опрос поддержвающих ОТ протокол, если есть ЦО он будет включен, если есть ГВС то он будет включен) уставка регистра 0х03ес тип работы шлюза (автоматический-ручной), уставка ручной режим тут не действует, также если отключить к примеру контур ЦО или ГВС, котел отключает их(гаснут пиктограммы на дисплее), но через некоторое время заново запускает. по ощущениям шлюз всегда находится в авто. шлюз bcg-3.0.1 версия ПО-206

Ознакомьтесь Luna Duo-Tes не реагирует на Baxi connect+ - Форум BAXI

Выдержка…

Параметра котла P67 - по умолчанию =0. В сервисной инструкции с описаниями параметров, которой я пользовался, написано было только, что это информация производителя. Котел 2014 года. По мере разборок с котлом тут на сайте в разделе конденсационных котлов попалась более новая от 28.11.2016 года. Вот там некоторые такие параметры расписаны. В том числе и P67 - OT selection (выбор протокола OpenTherm). P67=00 - Plug&Play, P67=01 - OT B&P, P67=02 - OT STD (типа по стандарту).
Выставил P67=02 и, о чудо, котел перезагрузился и начал нормально греть воду в бойлере.
Для справки: версия прошивки котла 2.00 (показывается при включении в сеть). Версия протокола OpenTherm у котла - 4.0, а доступная версия описания протокола у создателей самопальных контроллеров 2.2 (плюс некоторые дополнения из открытых источников).

1 лайк