Wbe2-i-knx

Приобрел несколько контроллеров с KNX модулем. Но сразу всплыли проблемы. Загрузка ETS только через мультикаст. Это значит, что через VPN работать нельзя. Только из локальной сети.
Потом обнаружилось, что большие проекты загрузить практически невозможно. Все время ошибки. Загрузка тормозит.
Решил проверить работу модуля. Собрал стенд из двух котроллеров. Один посылал 10 тысяч команд по 10 штук в секунду. Другой читал шину. В результате дошло только 9632.
Чип ncn5120 вполне приличный, так что подозрение сразу пало на knxd и драйвер ncn5120.
Пришлось пошаманить и полностью пересобрать knxd и драйвер. В результате все летает. Загрузка ETS через IP Tunneling по ip контроллера порт 3671.
Сборку выложил на своем сайте. В планах портировать драйвер knxd/ncn5120 на старый добрый eibd.

Для установки наберите в терминале с правами root:
bash <(wget -qO- http://www.ipc-electronics.ru/knxd_install.sh)

Если эта сборка не запустится на вашем контроллере, то запустите установку с перекомпиляцией:
bash <(wget -qO- http://www.ipc-electronics.ru/knxd_compile.sh)
Процессор медленный. Компиляция занимает примерно 30 минут.

2 лайка

Добрый день,

большое спасибо, думаю это пригодится другим клиентам.
Не могли бы вы рассказать подробнее про изменения, которые вносили в исходные коды knxd?
Правильно ли я понимаю, что изменеия в основном касались сборки и юнита для systemd, а исходынй код - от последнего knxd без изменений?

а зачем? Он же заброшен много нет назад, а knxd - это единственный живой проект на его основе.

@avlevakov собрал deb-пакет из самого свежего knxd стандартным способом в devenv. Попробуйте пожалуйста с ним.

Надо залить файлы на WB, поставить через dpkg -i , как обычные пакеты. knxd_0.14.35-1_armhf.deb (275.8 КБ) knxd-tools_0.14.35-1_armhf.deb (45.2 КБ)

в стандартом knxd юнит запускается от юзера knxd, так что надо его поменять.

Добрый день!

Моя сборка из последнего knxd + правка timeout сервера. Это помогло прогрузить проект через tunneling ETS. Но все равно есть ошибки и ресет чипа, хотя теперь это не приводит к разрыву сессии. Очевидно, что надо ковырять драйвер ncn5120. Сейчас это заплатка к tpuart, в которой поменяли только baudrate и U_SetAddress.req. Надо пробовать поменять U_SetRepetition.req и таймауты драйвера. Возможно, проблеммы из за скорости 38400. Тайминги драйвера рассчитаны под 19200.

eibd хоть и старый код, меня никогда не подводил. Работает стабильно годами, компилируется на всем что угодно. Хоть на i386, хоть на Allwinner. На knxd давно хотел пересесть, но каждый раз какие то баги.

понятно, спасибо.

а где это меняется?

Добрый день!
Попробовал увеличить интервалы отправки и таймауты ожидания в драйвере ncn5120. Теперь при загрузке через ETS шина нагружается менее агрессивно и никаких ошибок драйвер не генерирует. Но вот некоторые устройства с большой программой все равно грузятся через раз. Стал разбираться - ошибку генерит серверный модуль. Иногда “неавторизированный клиент”, иногда “таймаут сокета”. В результате ETS пишет “устройство не ответило”. Работать можно, но надо бы разобраться.
Времени пока нет… На карантине решили весь свой софт перебрать и обновить.

Не могли бы вы ещё посмотреть маркировку чипа на вашем WBE2-I-KNX? На нём написано NCN5120 или NCN5121? Мы тут, кажется, нашли аппаратную проблему, возможно дело в ней.

Добрый день!
Спасибо что “оживили” редко используемый функционал WB.

Я заново сделал установку из вашего первого поста, но теперь шина вообще “молчит” хотя сервис knxd запущен.

У меня Чип 5120.

С knxd разобрался. Из последней сборки, если ничего не менять все работает, включая tunneling. Надо бы ее в выложить в репозиторий.
Проблемы были из за:

  1. на загруженной шине при загрузке ETS ошибки вызывает драйвер ncn5120 - лечится увеличением таймингов и retry. На пустой шине все ок.
  2. если по wifi иногда отваливается загрузка ETS даже на пустой шине. Но это уже не драйвер ncn5120, а модуль сервера. Как это вылечить пока не знаю. Но может и не надо. Все таки большая загрузка ETS один раз, можно и по проводу. Потом только частями.

Со старым eibd никогда такого не было. Если будет время, попробую драйвер ncn5120 для eibd написать…

alexteen,

Ставьте из поста EvgenyBoger
Надо залить файлы на WB, поставить через dpkg -i , как обычные пакеты. knxd_0.14.35-1_armhf.deb (275.8 КБ) knxd-tools_0.14.35-1_armhf.deb (45.2 КБ)

Проверьте systemctl status knxd на корректность запуска
Параметры должны быть -e 0.0.1 -E 0.0.2:30 -b ncn5120:/dev/ttyMOD1 -D -T -R -S
Ну или -e 0.0.1 -E 0.0.2:30 -b ncn5120:/dev/ttyMOD1 -D -S, если ETS не нужен

Сообщение было перенесено в новую тему: Особенности устройства файловой системы

тогда никаких аппаратных проблем там нет, дело не в них.

Да, дело не в чипе. Наверное разработчик knxd хотел выжать максимум скорости, поэтому все так критично к сети и загрузке шины. Но это касается только ETS. Что касается обмена через /var/run/knx (и соответственно порт 6720) все ОК. Телеграммы короткие. Ваш мост knx-mqtt наверное через 6720 и работает.

Я наверное буду использовать knxd только для загрузки, а для своего софта напишу модуль прямого обмена с ncn5120. Только опрос и управление задача примитивная. В tpuart.cpp весь необходимый код есть.

А какие проблемы с 5121? Новые платы будут с ним? У меня там вроде в заказе 175750 недопоставленные остались. Ncn5120 были в предыдущем заказе 175581. И то я пока только 2 из 5 проверил.

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

да

Евгений, добрый день! Вскрыл все 5 контроллеров из последней поставки - все на 5120. Но у меня еще 3 шт. остались не отгружены. Как бы проверить, чтобы с ними проблем не было? Заказ 175750. Спасибо!

это уже проверили, во всех вновь отправленных всё будет исправлено.

Приветствую всех.

У меня тоже была проблема с удалённым подключением ETS через Wbe2-i-knx. После обновления knxd_0.14.35-1_armhf.deb knxd-tools_0.14.35-1_armhf.deb ETS проблема решилась.

Вопрос остается про удаленное подключение через ETS, возможно ли пробросить порты необходимые ETS для работы, через SSH или NAT, что подключиться удаленно без использования VPN?

Евгений, добрый день!
У меня в одном старом заказе (март или апрель) оказалась плата на ncn5121. Пока не запускали. Просто посмотрел что за модуль внутри. Как понять требуется ли ее замена, или с ней все ОК.

https://wirenboard.com/wiki/WBE2-I-KNX:_Errata

Посмотрите пожалуйста наклейку на модуле, на ней должен быть номер партии написан.

Наклейка v.2.3.A