Диагностика KNX

KNX не работает: пошаговая диагностика через ETS и Home Assistant

Свет включается с кнопки, но не из Home Assistant. Команда уходит, но состояние реле остается неправильным. Температура отображается странным числом. KNX/IP Interface виден в сети, но телеграммы не доходят. Разбираем, как искать такие неисправности последовательно, начиная с самой KNX-шины и заканчивая настройками Home Assistant.

Главный принцип диагностики: сначала нужно определить, на каком уровне возникает проблема: KNX TP, конфигурация ETS, KNX/IP, локальная сеть или Home Assistant. Если проверять все одновременно, поиск неисправности обычно только усложняется.

С чего начинать, если KNX не работает

Не стоит начинать с перезагрузки Home Assistant, замены IP-адресов или редактирования YAML. Сначала нужно определить, существует ли проблема в самой KNX-системе.

1 Проверить функцию непосредственно в KNX
→
2 Посмотреть telegram в ETS
→
3 Проверить KNX/IP
→
4 Проверить Home Assistant

Например, если свет не включается даже с физической KNX-клавиши, Home Assistant практически наверняка не является первопричиной.

В таком случае сначала проверяются групповая связь в ETS, питание KNX, актуатор, клавиша и наличие телеграммы на шине.

ETS Group Monitor и Bus Monitor: чем отличаются

ETS предоставляет несколько диагностических инструментов. Для большинства неисправностей, связанных с управлением функциями здания, первым инструментом будет Group Monitor.

Group Monitor

Показывает групповые телеграммы и позволяет читать или записывать значения Group Address.

Bus Monitor

Предназначен для полного анализа telegram traffic, включая низкоуровневую информацию шины.

KNX Association отдельно указывает, что Group Monitor позволяет не только записывать и анализировать групповые телеграммы, но и выполнять чтение и запись значений групповых адресов.

Bus Monitor требует собственного эксклюзивного доступа к шине во время записи. Group Monitor такого ограничения не имеет.

Для проверки обычной функции «кнопка → актуатор» обычно достаточно начать с Group Monitor.

Как проверить KNX-функцию

Откройте ETS, выберите Diagnostics → Group Monitor и запустите запись. После этого физически нажмите проблемную кнопку.

Если все исправно, в Group Monitor должна появиться соответствующая групповая телеграмма.

Как читать KNX telegram

Для диагностики не нужно разбирать каждый бит telegram. В большинстве случаев достаточно нескольких параметров.

Source 1.1.23 Кто отправил telegram
Destination 1/1/1 Group Address назначения
Type GroupValueWrite Что происходит
Value On Переданное значение

Source

Source представляет собой Individual Address устройства, которое отправило telegram.

1.1.23

По этому адресу в ETS можно определить, какая именно клавиша, актуатор, датчик или другое устройство было источником сообщения.

Destination

Destination для групповой telegram представляет собой Group Address.

1/1/1

Это позволяет проверить, отправляет ли физическая клавиша команду именно в тот групповой адрес, который ожидает актуатор и Home Assistant.

GroupValueWrite

Устройство записывает новое значение в Group Address. Типичный пример: клавиша отправляет команду включения света.

GroupValueRead

Участник KNX запрашивает текущее значение группового объекта. Home Assistant активно использует такие запросы для получения состояний.

GroupValueResponse

Это ответ на GroupValueRead. Если устройство настроено правильно и его объект допускает чтение, после запроса можно увидеть ответ с текущим состоянием.

Кнопка нажимается, но свет или другой исполнитель не реагирует

Первый тест: открыть Group Monitor и нажать кнопку.

Телеграммы вообще нет

Возможные причины:

  • клавиша не запрограммирована;
  • неверно настроен коммуникационный объект;
  • Group Address не связан с объектом;
  • у объекта отсутствует необходимый transmit flag;
  • устройство не работает или не имеет питания KNX;
  • неисправна линия KNX;
  • ETS подключен не к той линии или интерфейсу.

Telegram есть, но актуатор не реагирует

Следующий вопрос: совпадает ли Destination с групповым адресом объекта актуатора.

Если кнопка отправляет:

1/1/1

а объект актуатора связан с:

1/1/2

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

KNX работает с физических кнопок, но Home Assistant не управляет

Если физическая функция работает, следующая точка проверки находится между Home Assistant и KNX/IP.

Сначала откройте KNX Panel в Home Assistant и посмотрите Group Monitor. Затем отправьте команду из Home Assistant.

Telegram из Home Assistant появился

Если Destination и значение правильные, но исполнитель не реагирует, сравните telegram с той, которую отправляет рабочая KNX-клавиша.

Проверить необходимо:

  • Group Address;
  • DPT;
  • передаваемое значение;
  • наличие telegram в ETS Group Monitor.

Telegram из Home Assistant не появляется

В таком случае проверяется состояние KNX integration, подключение к KNX/IP Interface или Router и выбранный tunnel endpoint.

Home Assistant включает свет, но показывает неправильное состояние

Это одна из самых характерных неисправностей интеграции KNX.

Причина часто заключается не в связи, а в неправильно настроенной обратной связи.

Предположим:

Команда
1/1/1 → свет кухни
Обратная связь актуатора
1/1/101 → состояние света кухни

В Home Assistant первый адрес должен использоваться для управления, а второй обычно задается как state_address.

address: "1/1/1" state_address: "1/1/101"

Официальная документация Home Assistant отдельно предупреждает: KNX-актуатор может изменить свое состояние без telegram на управляющий address, например по сцене, таймеру или внутренней логике.

Именно поэтому отдельный state object актуатора является наиболее надежным источником фактического состояния.

Восстановленное Home Assistant последнее состояние после перезапуска нельзя путать с фактической обратной связью от исполнительного устройства.

Неправильный DPT: команда есть, но значение неверное

DPT определяет, как интерпретировать содержимое KNX telegram.

Например, температура, процент яркости и целое число могут использовать совершенно различные форматы данных.

Функция Пример DPT
Вкл./выкл. DPT 1
Относительное диммирование DPT 3
Процент DPT 5.001
Температура DPT 9.001
Дата DPT 11.001
Текст DPT 16

KNX Association указывает, что Datapoint Type может быть назначен непосредственно Group Address в ETS. Это позволяет Group Monitor правильно декодировать telegram и помогает исключать несовместимые Group Objects.

Типичный симптом неправильного DPT

Датчик реально передает:

23.4 °C

а Home Assistant показывает совершенно другое число, неизвестное значение или ошибку декодирования.

В такой ситуации нужно сравнить DPT коммуникационного объекта в ETS с типом, настроенным в Home Assistant.

Не пытайтесь подбирать DPT перебором до появления «похожего числа». Тип данных должен соответствовать проекту KNX и характеристикам коммуникационного объекта устройства.

Home Assistant отправляет GroupValueRead, но ответа нет

Home Assistant использует GroupValueRead для синхронизации состояния групповых объектов.

Например, сущность с state_address может запросить актуальное значение при запуске.

Если в Group Monitor видно:

GroupValueRead → 1/1/101

но после него отсутствует GroupValueResponse, нужно проверить ETS.

Read flag

KNX Association указывает, что считать значение можно только у Group Object, для которого установлен флаг Read.

Если Read flag отсутствует, устройство может корректно отправлять состояние при изменении, но не ответит на активный запрос значения.

Sending Group Address

Есть еще менее очевидная ситуация. Если запрашиваемый Group Address не является sending address соответствующего Group Object, ответ может прийти на другой Group Address.

Это необходимо учитывать, если объект связан сразу с несколькими групповыми адресами.

Проблемы KNX/IP Interface и Tunneling

Если ETS через KNX/IP работает, а Home Assistant не соединяется, нужно проверить tunnel endpoint.

Современный KNX/IP Interface может предоставлять несколько tunneling connections. Каждая имеет свой Individual Address.

Один tunnel endpoint нельзя бездумно использовать одновременно несколькими постоянными клиентами.

Например, если Home Assistant занимает один endpoint, для ETS лучше использовать другой доступный tunnel connection.

Что проверить в сети

Проверка Что должно быть
IP KNX Interface Доступен из сети Home Assistant
Подсеть Есть корректная маршрутизация
Firewall Не блокирует KNXnet/IP
Tunnel endpoint Свободен для Home Assistant
Individual Address Не конфликтует

KNX Routing, VLAN и multicast

При KNXnet/IP Routing telegram передаются через multicast. Это принципиально отличается от обычного tunneling.

Если Home Assistant и KNX/IP Router расположены в разных VLAN, обычной IP-маршрутизации может оказаться недостаточно.

Необходимо учитывать:

  • multicast forwarding;
  • IGMP;
  • настройки управляемых коммутаторов;
  • межсетевой экран между VLAN;
  • маршрутизатор;
  • KNX multicast traffic.
Если объект не требует Routing, для небольшого дома Tunneling обычно проще диагностировать и эксплуатировать.

KNX Secure: почему часть адресов может не работать

При использовании KNX IP Secure или Data Secure появляются дополнительные точки отказа.

Если обычные Group Address работают, а защищенные нет, проверьте актуальность Keyring-файла .knxkeys.

После изменения Secure-конфигурации в ETS старый Keyring может уже не соответствовать проекту.

В таком случае нужно экспортировать актуальный файл из ETS и обновить его в Home Assistant.

Файл .knxkeys содержит данные безопасности проекта. Его нельзя публиковать, размещать в открытом репозитории или передавать посторонним лицам.

Диагностика KNX непосредственно в Home Assistant

В современных версиях Home Assistant отдельный KNX Panel позволяет наблюдать telegram traffic без постоянного использования ETS.

Для диагностики удобно открыть Group Monitor Home Assistant и затем выполнить физическое действие в KNX.

Например:

нажать кнопку KNX → посмотреть telegram → определить Group Address

После импорта KNX Project Home Assistant способен показывать больше контекстной информации о групповых адресах и DPT.

Send telegram

В Home Assistant 2026.8 в KNX Panel появилась возможность вручную отправлять telegram.

Это позволяет проверить исполнитель, не создавая временную automation или entity.

На рабочем объекте нельзя отправлять случайные telegram в неизвестные Group Address. Сначала необходимо определить назначение адреса и правильный DPT.

Типовые неисправности KNX и куда смотреть

С кнопки не работает

Сначала ETS Group Monitor. Если telegram отсутствует, проверяется клавиша, параметры объекта и KNX-шина.

С кнопки работает, из Home Assistant нет

Проверить KNX integration, KNX/IP, tunnel endpoint и наличие исходящей telegram.

Home Assistant управляет, но состояние неправильное

Проверить state_address и объект обратной связи актуатора.

Температура или процент неправильные

Сравнить DPT в ETS и Home Assistant.

После запуска состояние Unknown

Проверить GroupValueRead, Read flag и наличие GroupValueResponse.

Часть Group Address не проходит

Проверить coupler, filter table и привязки Group Address в ETS.

Routing работает нестабильно

Проверить multicast, VLAN, IGMP и firewall.

Secure-адреса не работают

Проверить актуальность .knxkeys и Secure-конфигурацию ETS.

Универсальный алгоритм поиска неисправности KNX

  1. Проверить физическую KNX-функцию. Работает ли исполнитель от штатной KNX-клавиши?
  2. Открыть ETS Group Monitor. Есть ли telegram при выполнении команды?
  3. Проверить Source. Отправляет ли сообщение ожидаемое устройство?
  4. Проверить Destination. Совпадает ли Group Address с проектом?
  5. Проверить Value и DPT. Правильно ли декодируется значение?
  6. Проверить ответ актуатора. При необходимости определить Group Address обратной связи.
  7. Проверить GroupValueRead. Отвечает ли устройство на запрос состояния?
  8. Проверить KNX/IP. Есть ли стабильная связь Home Assistant с Interface или Router?
  9. Проверить KNX Panel Home Assistant. Доходят ли telegram до Home Assistant?
  10. Проверить entity. Соответствуют ли address, state_address и DPT проекту ETS?
  11. Если используется Routing. Проверить multicast, VLAN и filter tables.
  12. Если используется Secure. Проверить актуальный Keyring.
Этот порядок локализует неисправность. Если telegram уже отсутствует в ETS Group Monitor, искать проблему в Home Assistant пока бессмысленно. Если ETS видит правильную telegram, а Home Assistant ее не получает, зона поиска сужается до KNX/IP, сети и конфигурации интеграции.

Частые вопросы

Чем ETS Group Monitor отличается от Bus Monitor?

Group Monitor предназначен прежде всего для групповых telegram и позволяет читать и записывать Group Address. Bus Monitor применяется для более полного анализа traffic KNX и требует эксклюзивного доступа к шине во время записи.

Почему KNX-команда работает, но Home Assistant показывает свет выключенным?

Чаще всего отсутствует корректный state_address или Home Assistant не получает telegram фактического состояния от актуатора.

Почему GroupValueRead остается без ответа?

Необходимо проверить Read flag соответствующего Group Object, правильность Group Address и его sending address.

Почему температура KNX отображается неправильно?

Одна из наиболее вероятных причин — несовпадение DPT. Для температуры обычно применяется соответствующий температурный Datapoint Type, например DPT 9.001, если именно он предусмотрен устройством.

Можно ли определить Group Address нажатием физической кнопки?

Да. Запустите ETS Group Monitor или KNX Group Monitor Home Assistant и нажмите кнопку. Destination telegram покажет используемый Group Address.

Почему Home Assistant перестал подключаться к KNX/IP?

Нужно проверить доступность KNX/IP Interface, состояние tunnel endpoint, Individual Address, сетевые настройки и отсутствие другого клиента, занявшего соответствующее tunneling connection.

Нужен ли ETS для поиска неисправности?

Для глубокой диагностики профессиональной KNX-системы ETS остается основным инструментом. KNX Panel Home Assistant полезен для контроля telegram и интеграции, но не заменяет возможности ETS по диагностике и конфигурированию устройств.

Вывод

Большинство проблем KNX можно найти значительно быстрее, если не менять настройки наугад, а последовательно проследить путь одной команды.

Начните с физического действия, найдите его telegram в ETS, проверьте Source, Destination, DPT и обратную связь. Только после этого переходите к KNX/IP и Home Assistant.

Если KNX-функция корректно работает на шине, задача уже существенно проще: остается проверить передачу telegram через IP и соответствие address, state_address и DPT в Home Assistant.