Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. ioBroker драйвера
  5. Драйвер Mqtt + Arduino

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    745

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Драйвер Mqtt + Arduino

Geplant Angeheftet Gesperrt Verschoben ioBroker драйвера
244 Beiträge 18 Kommentatoren 81.1k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • I Offline
    I Offline
    instalator
    schrieb am zuletzt editiert von
    #17

    @electric69:

    Что то я не могу понять логику работы этого MQTT…

    Я правильно понимаю, что сервер iobroker у нас как брокер, ардуина - клиент.

    Ардуина создает топик (в iobroker появляется переменная) и передает (публикует) в него через конкретный интервал времени значение.

    Т.е. инициатива на обновление значения переменной исходит от Ардуины.

    ioBroker может проявить инициативу и запросить у ардуины значение? Получается что нет))

    Блин, документации на русском еще фиг найдешь... `
    Да помоему не очень протокол, получается адресации нет. драйвер шлет в сеть мусор, ардуниы его принимают, парсят и если что то прилетело определенной ардуине она обрабатывает распарсеный пакет.

    Я и говорю что это телеметрия, для датчиков да пойдет, датчик с переодичностью шлет в сеть свои данные и все.

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

    Высокий уровень Децибел вреден для здоровья!

    http://blog.instalator.ru/

    1 Antwort Letzte Antwort
    0
    • I Offline
      I Offline
      instalator
      schrieb am zuletzt editiert von
      #18

      @Bluefox:

      Да. Спасибо. Я уже нашел…

      Можешь попробовать:

      cd /opt/iobroker
      npm install https://github.com/ioBroker/ioBroker.mqtt/tarball/master
      
      ```` `  
      

      Обновил, изменений н езаметил. в брокере меняю переменную через vis в протокол ничего не шлется. Шлется только при перезапуске драйвера и при коннекте к клиенту

      Высокий уровень Децибел вреден для здоровья!

      http://blog.instalator.ru/

      1 Antwort Letzte Antwort
      0
      • I Offline
        I Offline
        instalator
        schrieb am zuletzt editiert von
        #19

        Появилась куча непонятных переменных
        266_21323213123123213.png

        Высокий уровень Децибел вреден для здоровья!

        http://blog.instalator.ru/

        1 Antwort Letzte Antwort
        0
        • E Offline
          E Offline
          electric69
          schrieb am zuletzt editiert von
          #20

          @instalator:

          Да помоему не очень протокол, получается `
          Да не. нормальный протокол, все больше мне начинает нравится, надо просто разобраться…
          @instalator:

          адресации нет. драйвер шлет в сеть мусор, ардуниы его принимают, парсят и если что то прилетело определенной ардуине она обрабатывает распарсеный пакет. `
          Скетч ардуины выложите пожалуйста… Ато не понятно кто кому как что шлет))
          @instalator:

          Я и говорю что это телеметрия, для датчиков да пойдет, датчик с переодичностью шлет в сеть свои данные и все. `
          Не, для управления тоже можно, примеров http://bogdanioanliviu.no-ip.org/part1-arduino-mqtt-web-socket-home-automation/, надо просто разобраться что куда.
          @instalator:

          Плюс если устройств куча, каждый клиент шлет свои данные, в сети появляется много мусора. Представь что постоянно что то летит по протоколу и ардуина его парсит, она только и будет все время обрабатывать пакеты прилетающие а на другие операции процессорного времени не найдется `
          Так вроде если клиент-ардуина подписана на топик - ей изменение параметра прилетит, если нет - то она ничего не получит…


          Немного отсебятинки - последняя строка настройки адаптера не переведа - на английском.

          1 Antwort Letzte Antwort
          0
          • I Offline
            I Offline
            instalator
            schrieb am zuletzt editiert von
            #21

            @electric69:

            Так вроде если клиент-ардуина подписана на топик - ей изменение параметра прилетит, если нет - то она ничего не получит…

            . `
            А как ардуина узнает что это именно ей прилетело? ей придется парсить весь мусор в протоколе

            Код переделывал отсюда http://habrahabr.ru/post/250833/

            Хотя ты прав, если только этому ip шлется. Видимо драйвер просто не шлет изменение статуса.

            Высокий уровень Децибел вреден для здоровья!

            http://blog.instalator.ru/

            1 Antwort Letzte Antwort
            0
            • E Offline
              E Offline
              electric69
              schrieb am zuletzt editiert von
              #22

              @instalator:

              А как ардуина узнает что это именно ей прилетело? ей придется парсить весь мусор в протоколе `
              Есть такая настройка, clientID называется (ну или как назовешь сам), в этом https://github.com/knolleary/pubsubclient/blob/master/PubSubClient/examples/mqtt_auth/mqtt_auth.ino значение "arduinoClient" у нее.

              –----

              Вот тут клиент айди, и аутентификация

              client.connect("clientID", "mqtt_username", "mqtt_password");
              

              В примере с хабра - айди = "myhome-kitchen", аутентификации нет, может поэтому трабл?

              В настройках MQTT-адаптера указывал логин/пароль?

              client.connect("myhome-kitchen")
              
              1 Antwort Letzte Antwort
              0
              • BluefoxB Offline
                BluefoxB Offline
                Bluefox
                schrieb am zuletzt editiert von
                #23

                Полностью поддерживаю electric69, что это очень простой и перспективный протокол.
                > А как ардуина узнает что это именно ей прилетело? ей придется парсить весь мусор в протоколе
                Ардуина должна подписатся на сообщения. Например subscribe("myhome/in/#"). Ты подписался?

                Советую в начале топика не писать "/", а сразу начинать с "myhome/…"

                Есть обновление. Сильно переработанное. Там есть новая настройка : Send commands (not ack) too

                Это если ты хочешь слать к ардуине статус... Хотя не понятно зачем. ;)

                > Немного отсебятинки - последняя строка настройки адаптера не переведа - на английском.
                Да забыл..

                Есть помощь по драйверу. Правда на аглицком. https://github.com/ioBroker/ioBroker.mqtt#configuration

                1 Antwort Letzte Antwort
                0
                • E Offline
                  E Offline
                  electric69
                  schrieb am zuletzt editiert von
                  #24

                  @Bluefox:

                  Есть помощь по драйверу. Правда на аглицком. https://github.com/ioBroker/ioBroker.mqtt#configuration `
                  Спасибо! Это я уже читал, и еще все статьи в инете что есть на русском, пока полной картины в голове нет.

                  Оф. англ. документанция… какая то размазанная чтоли - есть интересные моменты, но их собираю по крупицам.

                  Вот бы пару скетчей чтобы разобраться кого с кем публиковать/подписываться)))

                  Bluefox, в немецкой ветке форума нет примеров?

                  1 Antwort Letzte Antwort
                  0
                  • BluefoxB Offline
                    BluefoxB Offline
                    Bluefox
                    schrieb am zuletzt editiert von
                    #25

                    > Bluefox, в немецкой ветке форума нет примеров?
                    Они тоже только начинают играться с SparcCore. Если что будет полезное - переведу.

                    1 Antwort Letzte Antwort
                    0
                    • E Offline
                      E Offline
                      electric69
                      schrieb am zuletzt editiert von
                      #26

                      @Bluefox:

                      Есть обновление. Сильно переработанное. Там есть новая настройка : Send commands (not ack) too

                      Это если ты хочешь слать к ардуине статус… Хотя не понятно зачем. ;) `
                      Чото у меня даже что работало - перестало))

                      https://github.com/knolleary/pubsubclient/blob/master/PubSubClient/examples/mqtt_auth/mqtt_auth.ino из библиотеки отлично создавал объект и переменную.

                      Теперь не создает, в логе тишина, просто старт и все…

                      1 Antwort Letzte Antwort
                      0
                      • BluefoxB Offline
                        BluefoxB Offline
                        Bluefox
                        schrieb am zuletzt editiert von
                        #27

                        @electric69:

                        @Bluefox:

                        Есть обновление. Сильно переработанное. Там есть новая настройка : Send commands (not ack) too

                        Это если ты хочешь слать к ардуине статус… Хотя не понятно зачем. ;) `
                        Чото у меня даже что работало - перестало))

                        https://github.com/knolleary/pubsubclient/blob/master/PubSubClient/examples/mqtt_auth/mqtt_auth.ino из библиотеки отлично создавал объект и переменную.

                        Теперь не создает, в логе тишина, просто старт и все… `
                        Переключи на debug и обнови драйвер до 0.2.0

                        1 Antwort Letzte Antwort
                        0
                        • E Offline
                          E Offline
                          electric69
                          schrieb am zuletzt editiert von
                          #28

                          @Bluefox:

                          Переключи на debug `
                          Переключил, тишина, перезагружал ардуину - она в этом примере публикует только при старте - тишина…

                          В логе одни inMem'мы...

                          UPD: О_о, версия 0.2.0 уже есть, блин, пока писал сообщение видимо))
                          50_pic_112.jpg

                          1 Antwort Letzte Antwort
                          0
                          • E Offline
                            E Offline
                            electric69
                            schrieb am zuletzt editiert von
                            #29

                            @Bluefox:

                            Переключи на debug и обнови драйвер до 0.2.0 `
                            Обновился, объекты не создает, адаптер вылетает с ошибкой…

                            Два раза пробовал (видно по логу)...
                            50_pic_113.jpg
                            50_pic_114.jpg

                            1 Antwort Letzte Antwort
                            0
                            • BluefoxB Offline
                              BluefoxB Offline
                              Bluefox
                              schrieb am zuletzt editiert von
                              #30

                              Попробуй ещё раз обновится

                              1 Antwort Letzte Antwort
                              0
                              • E Offline
                                E Offline
                                electric69
                                schrieb am zuletzt editiert von
                                #31

                                @Bluefox:

                                Попробуй ещё раз обновится `
                                Что то появилось, спасибо!

                                Буду мучить дальше…
                                50_pic_115.jpg
                                50_pic_116.jpg

                                1 Antwort Letzte Antwort
                                0
                                • E Offline
                                  E Offline
                                  electric69
                                  schrieb am zuletzt editiert von
                                  #32

                                  https://github.com/knolleary/pubsubclient/blob/master/PubSubClient/examples/mqtt_publish_in_callback/mqtt_publish_in_callback.ino из библиотеки тоже заработал (после обновления до 0.2.2)…

                                  Однако, при рестарте ардуины возникает ошибочка - что она обозначает?
                                  50_pic_118.jpg

                                  1 Antwort Letzte Antwort
                                  0
                                  • BluefoxB Offline
                                    BluefoxB Offline
                                    Bluefox
                                    schrieb am zuletzt editiert von
                                    #33

                                    Как раз то, что ардуина перестартовала. Наверно надо сделать warn.

                                    1 Antwort Letzte Antwort
                                    0
                                    • E Offline
                                      E Offline
                                      electric69
                                      schrieb am zuletzt editiert von
                                      #34

                                      @Bluefox:

                                      Как раз то, что ардуина перестартовала. Наверно надо сделать warn. `
                                      Спасибо.

                                      –-------

                                      Блин, ввязался я в этот MQTT))

                                      Есть одна проблема, точнее костыль, точнее просто мысль...

                                      1. Сервер с ioBroker выступает в качестве MQTT-брокера, вроде все понятно, хорошо.

                                      Есть ардуина, к которой подключено 3 темп. датчика и по одному - влажности, давления, освещения. Ардуина получается MQTT-клиент.

                                      Надо передавать эти параметры на сервер, к примеру, раз в минуту, ОК - пишем для ардуины скетч, который публикует раз в минуту данные в ioBroker.

                                      Но, инициатива передачи данных исходит от ардуины, а в адаптере для CCU.IO инициатива была от сервера и период соответственно настраивался на сервере.

                                      Если в описанной модели передачи захочется поменять период передачи - переписывай код ардуины (можно конечно сделать костыль - типа передавать интервал клиенту - подписать ардуину на этот параметр).

                                      Если ардуина зависнет - данных нет, надо придумывать какой то таймер...

                                      2. Еще один нюанс.

                                      Предположим, ардуина управляет двумя лампочками, но работает тоже как MQTT-клиент.

                                      Для нормального управления (обр. связь чтобы была), надо делать две переменные - in и out (по примеру http://contactless.ru/wiki/index.php/MQTT в контроллере WirenBoard)

                                      Ардуина в out публикует состояние лампочки, а на переменную in подписывается. Как только in меняется - брокер извещает об изменении ардуину и та принимает решение - включать, отключать, ничего не делать.

                                      Но есть косяк (хотя может так задумано), подписываясь на переменную in, ардуина не создает её в ioBroker.

                                      Адаптер MQTT в ioBroker не умеет, я так понял, публиковать переменные…

                                      Поэтому при старте/рестрате контроллер должен сначала опубликовать и in и out, потом работать в обычном режиме...


                                      Такие мысли, вот...

                                      P.S. Блин, засада, не могу нормально установить альтернативный MQTT-брокет на Windows-машину, у кого-ниб получилось заставить работать http://mosquitto.org/ из-под винды?

                                      1 Antwort Letzte Antwort
                                      0
                                      • I Offline
                                        I Offline
                                        instalator
                                        schrieb am zuletzt editiert von
                                        #35

                                        Вроде зашевелилось.

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

                                        Высокий уровень Децибел вреден для здоровья!

                                        http://blog.instalator.ru/

                                        1 Antwort Letzte Antwort
                                        0
                                        • I Offline
                                          I Offline
                                          instalator
                                          schrieb am zuletzt editiert von
                                          #36

                                          Пока что как то так
                                          266_mqtt.rar

                                          Высокий уровень Децибел вреден для здоровья!

                                          http://blog.instalator.ru/

                                          1 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          641

                                          Online

                                          32.8k

                                          Benutzer

                                          82.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe