Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Хочу написать драйвер…

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Хочу написать драйвер…

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      jura59 last edited by

      Предыстория: "Сидел" на Fhem'e.

      Решил перейти на IoBroker. Естественно появилась масса вопросов. Хочу подключить отопительное оборудование.

      Источник данных- шина EBUS (Vaillant). С шиной работает демон https://github.com/john30/ebusd. Все параметры нужных мне подсистем (Vaillant) могу получить через telnet или netcat от указанного демона. Пока начал грызть адаптер Wolf и адаптер KNX/EIBD. Подскажите уважаемые профессионалы:

      1. Почему адаптер Wolf работает "сам", т.е без постороннего сокет-сервера как в случае KNX/EIBD?

      2. Если нет ни одного подключения браузера к IoBroker'у, может ли модуль адаптера вести обмен с другим сокет-сервером, и записывать данные значения/состояния в базу Redis (CouchDB)?

      1 Reply Last reply Reply Quote 0
      • Bluefox
        Bluefox last edited by

        @jura59:

        Предыстория: "Сидел" на Fhem'e.

        Решил перейти на IoBroker. Естественно появилась масса вопросов. Хочу подключить отопительное оборудование.

        Источник данных- шина EBUS (Vaillant). С шиной работает демон https://github.com/john30/ebusd. Все параметры нужных мне подсистем (Vaillant) могу получить через telnet или netcat от указанного демона. Пока начал грызть адаптер Wolf и адаптер KNX/EIBD. Подскажите уважаемые профессионалы:

        1. Почему адаптер Wolf работает "сам", т.е без постороннего сокет-сервера как в случае KNX/EIBD? `

        Для каждого драйвера применяется разный подход. Если протокол сложный (zwave, knx), то имеет смысл использовать готовый сервис и к нему подключится.

        Есть сложные протоколы, но для них есть node.js решения (sonos, s7, mqtt). Лучше использовать node.js модули, т.к. драйвера получаются мультиплаттформенными.

        Если простой протокол (wolf, modbus, megad), то можно запрограммировать всё в node.js, что бы упростить установку драйвера и разработку.

        > 2\. Если нет ни одного подключения браузера к IoBroker'у, может ли модуль адаптера вести обмен с другим сокет-сервером, и записывать данные значения/состояния в базу Redis (CouchDB)?
        Да. Конечно. Это не php или perl.

        Кстати пока базы нет. Используется inmemory самописная база данных, но хочу её вернуть.

        1 Reply Last reply Reply Quote 0
        • J
          jura59 last edited by

          Bluefox спасибо за ответ, подскажите как бы Вы поступили с этой задачей.

          Демон шины EBUS работает в таких режимах:

          • при получении команды find выдает полную таблицу параметров (и значений параметров) системы отопления в виде "ИмяПодсистемы";"ИмяПараметра";"ЗначениеПараметра"

          • при получении команды read "ИмяПодсистемы" "ИмяПараметра" выдает только одно "ЗначениеПараметра"

          • при получении команды write "ИмяПодсистемы" "ИмяПараметра" "ЗначениеПараметра" принимает и записывает только одно "ЗначениеПараметра"

          • при получении команды listen выдает с интервалом 1-5 сек те значения параметров которые изменились и которые указаны в настройках демона как <u>оперативные</u>, т. е. время, температуры по контурам, темп. подачи, обратки, вкл.выкл насосов по контурам и пр., но при этом (находясь в режиме listen) параллельно демон может обрабатывать также и read/write.

          Предварительно склоняюсь к мысли что нужен tcp сокет-сервер. Не ясно куда писать значения параметров оперативные/настроечные и как это все связать с визуализацией, и управлением (т.е write для демона при изменении настроечных параметров).

          Спасибо!

          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

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

            Может из драйвера им управлять? Запускать и останавливать.

            А какой интерфейс у него для коммуникации? Command line interface?

            > при получении команды listen
            через что он её получает?

            1 Reply Last reply Reply Quote 0
            • J
              jura59 last edited by

              Danke Bluefox! Временно отсутствовал.

              Демон работает все время и "слушает" шину EBUS отопительной системы (т.е. читает все так называемые телеграммы на шине, декодирует их, переводит в вид "ИмяПодсистемы";"ИмяПараметра";"ЗначениеПараметра"). Демон имеет также внутри себя tcp сервер, который слушает заданный при запуске порт. Таким образом я имею на localhost:8888 доступ к этому демону по CLI Command line interface через telnet или netcat.

              Интересным является еще такой момент. Через telnet (netcat) localhost:8888 можно подключиться например трижды. Открываю три окна терминала и в каждом запускаю telnet (netcat) localhost:8888, тогда в одном окне терминала я выдаю команду listen и вижу изменющиеся оперативные параметры/их значения, в другом окне терминала могу делать read, а в третьем write в виде (см. пост 1).

              Какая идеология драйвера (адаптера) IoBroker была бы оптимальной/разумной?

              Спасибо.

              1 Reply Last reply Reply Quote 0
              • First post
                Last post

              Support us

              ioBroker
              Community Adapters
              Donate

              673
              Online

              31.8k
              Users

              80.0k
              Topics

              1.3m
              Posts

              2
              5
              1782
              Loading More Posts
              • Oldest to Newest
              • Newest to Oldest
              • Most Votes
              Reply
              • Reply as topic
              Log in to reply
              Community
              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
              The ioBroker Community 2014-2023
              logo