Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Драйвер MQTT

    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

    Драйвер MQTT

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

      на всякий случай выкладываю скетч,может подскажите что не так?

      есть подозрениие,что именно он косячит.

      Cам слабо понимаю. скетч создавал в Flprog.
      1648_pr4.7z

      1 Reply Last reply Reply Quote 0
      • D
        dmitrii240582 last edited by

        Собрал монитор энергии на pzem-004t и esp (прошивка Wifi-iot). Драйвер MQTT настроен как сервер. Вначале все работало, потом началась какая-то ерунда - часть объектов отображается некорректно, в т.ч. и на веб-интерфейсе esp(при этом он ещё заметно подвисает). В логе ошибки:

        ! mqtt.0 2017-02-19 20:03:55.369 error mqtt.0 Closed because of error
        ! mqtt.0 2017-02-19 20:03:55.368 warn mqtt.0 Client error [ESP82660006940a]: Error: read ECONNRESET
        ! mqtt.0 2017-02-19 20:03:54.377 info mqtt.0 publishOnSubscribe send all known states
        ! mqtt.0 2017-02-19 20:03:54.377 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
        /
        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 publishOnSubscribe
        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 Client [ESP82660006940a] subscribes on "mqtt.0.timestamp"
        ! mqtt.0 2017-02-19 20:03:54.375 info mqtt.0 publishOnSubscribe send all known states
        ! mqtt.0 2017-02-19 20:03:54.370 info mqtt.0 Client [ESP82660006940a] subscribes on "testtopic.#" with regex /^mqtt.0.testtopic../
        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 Client [ESP82660006940a] subscribes on "testtopic.#" with regex /^testtopic..
        /
        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 publishOnSubscribe send all known states
        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
        ! mqtt.0 2017-02-19 20:03:54.368 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
        /
        ! mqtt.0 2017-02-19 20:03:54.205 info mqtt.0 Client [ESP82660006940a] connected
        ! mqtt.0 2017-02-19 20:03:49.765 info mqtt.0 publishOnSubscribe send all known states
        ! mqtt.0 2017-02-19 20:03:49.765 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
        ! mqtt.0 2017-02-19 20:03:49.764 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
        /
        ! mqtt.0 2017-02-19 20:03:47.397 info mqtt.0 Client [ESP82660006940a] closed
        ! mqtt.0 2017-02-19 20:03:47.396 error mqtt.0 Closed because of error
        ! mqtt.0 2017-02-19 20:03:47.396 warn mqtt.0 Client error [ESP82660006940a]: Error: read ECONNRESET

        1 Reply Last reply Reply Quote 0
        • A
          Adav last edited by

          @dmitrii240582:

          Собрал монитор энергии на pzem-004t и esp (прошивка Wifi-iot). Драйвер MQTT настроен как сервер. Вначале все работало, потом началась какая-то ерунда - часть объектов отображается некорректно, в т.ч. и на веб-интерфейсе esp(при этом он ещё заметно подвисает). `

          Если и в интерфейсе ESP проблемы - то тут MQTT совсем не при чем. Думаю, Вы это понимаете сами. Зря Вы эту поделку (pzem) купили… Я сначала тоже на нее поглядывал, все прикидывал как подключать, куда и как прикручивать. В итоге просто взял маленький (1DIN) счетчик за 20$ (SDM120). Как индикатор - не очень из-за размеров, зато места не занимает много в щитке и проблем с подключением (modbus) никаких. Да и разных параметров отдает побольше (реактивная составляющая и частота). Была бы возможность подключиться к счетчику мосэнерго - сделал бы так, но увы, не дают, поэтому такой вот мониторинг через второй счетчик...

          1 Reply Last reply Reply Quote 0
          • D
            dmitrii240582 last edited by

            Проблема исчезает при отключении драйвера, так что железяка скорей всего исправно работает. Через облако все работало очень долго и без сбоев. Кстати через несколько часов проблема пропала сама собой :shock: .

            1 Reply Last reply Reply Quote 0
            • D
              dmitrii240582 last edited by

              @dmitrii240582:

              Проблема исчезает при отключении драйвера, так что железяка скорей всего исправно работает. Через облако все работало очень долго и без сбоев. Кстати через несколько часов проблема пропала сама собой :shock: . `
              Опять сбой. В логе ошибок нет.

              1 Reply Last reply Reply Quote 0
              • Y
                yopopol last edited by

                Извините за панику,за сомнения.Методом исключения ,вывел что ошибка закралась в скетче ардуины.

                Забросил MQTT, першел на Modbus TCP. Пока всё норм.

                1 Reply Last reply Reply Quote 0
                • V
                  VictorS last edited by

                  @Adav:

                  @dmitrii240582:

                  Собрал монитор энергии на pzem-004t и esp (прошивка Wifi-iot). Драйвер MQTT настроен как сервер. Вначале все работало, потом началась какая-то ерунда - часть объектов отображается некорректно, в т.ч. и на веб-интерфейсе esp(при этом он ещё заметно подвисает). `

                  Если и в интерфейсе ESP проблемы - то тут MQTT совсем не при чем. Думаю, Вы это понимаете сами. Зря Вы эту поделку (pzem) купили… Я сначала тоже на нее поглядывал, все прикидывал как подключать, куда и как прикручивать. В итоге просто взял маленький (1DIN) счетчик за 20$ (SDM120). Как индикатор - не очень из-за размеров, зато места не занимает много в щитке и проблем с подключением (modbus) никаких. Да и разных параметров отдает побольше (реактивная составляющая и частота). Была бы возможность подключиться к счетчику мосэнерго - сделал бы так, но увы, не дают, поэтому такой вот мониторинг через второй счетчик... `

                  sdm120 - это хорошо. но все не совсем тривиально при передаче rs485 на сервер. конечно если есть медный кабель прямиком в сервер - не проблема. Но если нет - то пляски с бубном.

                  У меня HLK-RM04 прокидывает serial через TCP , потом эмулятор tty под linux (socat), потом mdbusd (Mudbus RTU -> Modbus TCP).

                  с учетом стоимости HLK-RM04 и sdm120 - выходит под $50 уже.

                  а что касаемо героя pzem-004t и esp - тут надо смотреть на коммуникации esp и pzem-004t. если на esp плате есть чип usb-uart , его надо отключить. об этом кстати вот https://wifi-iot.com/p/wiki/15/ сказано. он может серьезно мешать.

                  1 Reply Last reply Reply Quote 0
                  • A
                    Adav last edited by

                    @VictorS:

                    sdm120 - это хорошо. но все не совсем тривиально при передаче rs485 на сервер. конечно если есть медный кабель прямиком в сервер - не проблема. Но если нет - то пляски с бубном.

                    У меня HLK-RM04 прокидывает serial через TCP , потом эмулятор tty под linux (socat), потом mdbusd (Mudbus RTU -> Modbus TCP).

                    с учетом стоимости HLK-RM04 и sdm120 - выходит под $50 уже.

                    а что касаемо героя pzem-004t и esp - тут надо смотреть на коммуникации esp и pzem-004t. если на esp плате есть чип usb-uart , его надо отключить. об этом кстати вот https://wifi-iot.com/p/wiki/15/ сказано. он может серьезно мешать. `

                    Как у Вас все заморочено… Не, у меня проще, в качестве сервера WB контроллер (который фактически является ядром) c RS-485, а уж с него MQTT на ioBroker. Может когда-нибудь прикручу к Orange Pi, где также стоит ioBroker, RS-485 - UART и отправлю прямо туда modbus RTU. Но пока нужды нет.

                    1 Reply Last reply Reply Quote 0
                    • D
                      dmitrii240582 last edited by

                      @VictorS:

                      а что касаемо героя pzem-004t и esp - тут надо смотреть на коммуникации esp и pzem-004t. если на esp плате есть чип usb-uart , его надо отключить. об этом кстати вот https://wifi-iot.com/p/wiki/15/ сказано. он может серьезно мешать. `
                      Я читал это предупреждение, и собирал из того, что было под рукой (кстати, именно NodeMCU). <u>НО!!!</u> Физическое отключение pzem-004t (совсем-совсем) не улучшило ситуацию! Оказалось, что ESP8266, при подключении к драйверу MQTT (в режиме Сервер/брокер), начинает циклически перезагружаться! Отсюда и странные тормоза интерфейса - устройство просто недоступно N секунд. Причина перезагрузки непонятна…

                      1 Reply Last reply Reply Quote 0
                      • V
                        v965 last edited by

                        @dmitrii240582:

                        Собрал монитор энергии на pzem-004t и esp (прошивка Wifi-iot). Драйвер MQTT настроен как сервер. Вначале все работало, потом началась какая-то ерунда - часть объектов отображается некорректно, в т.ч. и на веб-интерфейсе esp(при этом он ещё заметно подвисает). В логе ошибки:

                        ! mqtt.0 2017-02-19 20:03:55.369 error mqtt.0 Closed because of error
                        ! mqtt.0 2017-02-19 20:03:55.368 warn mqtt.0 Client error [ESP82660006940a]: Error: read ECONNRESET
                        ! mqtt.0 2017-02-19 20:03:54.377 info mqtt.0 publishOnSubscribe send all known states
                        ! mqtt.0 2017-02-19 20:03:54.377 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
                        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
                        /
                        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 publishOnSubscribe
                        ! mqtt.0 2017-02-19 20:03:54.376 info mqtt.0 Client [ESP82660006940a] subscribes on "mqtt.0.timestamp"
                        ! mqtt.0 2017-02-19 20:03:54.375 info mqtt.0 publishOnSubscribe send all known states
                        ! mqtt.0 2017-02-19 20:03:54.370 info mqtt.0 Client [ESP82660006940a] subscribes on "testtopic.#" with regex /^mqtt.0.testtopic../
                        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 Client [ESP82660006940a] subscribes on "testtopic.#" with regex /^testtopic..
                        /
                        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 publishOnSubscribe send all known states
                        ! mqtt.0 2017-02-19 20:03:54.369 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
                        ! mqtt.0 2017-02-19 20:03:54.368 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
                        /
                        ! mqtt.0 2017-02-19 20:03:54.205 info mqtt.0 Client [ESP82660006940a] connected
                        ! mqtt.0 2017-02-19 20:03:49.765 info mqtt.0 publishOnSubscribe send all known states
                        ! mqtt.0 2017-02-19 20:03:49.765 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^mqtt.0.ESP0006940A../
                        ! mqtt.0 2017-02-19 20:03:49.764 info mqtt.0 Client [ESP82660006940a] subscribes on "ESP0006940A.#" with regex /^ESP0006940A..
                        /
                        ! mqtt.0 2017-02-19 20:03:47.397 info mqtt.0 Client [ESP82660006940a] closed
                        ! mqtt.0 2017-02-19 20:03:47.396 error mqtt.0 Closed because of error
                        ! mqtt.0 2017-02-19 20:03:47.396 warn mqtt.0 Client error [ESP82660006940a]: Error: read ECONNRESET `
                        Боролся с такими же симптомами, постоянно обрывы и запись в логи.

                        На более низкой версии драйвера ошибок гараздо меньше но они есть.

                        В итоге сменил настройки драйвера на свои и всё стало отлично. Я не знаю может сейчас после этого поста мне скажут что эти настройки неправильные или ещё чего то, но такая настройка заработала так как нужно!

                        Пробуйте сменить у себя. (в ESP время опроса датчиков pzem-004t 5-6 сек, отправка mqtt 5сек.)

                        Ну а настройка драйвера ниже в скринах.

                        PS никаких usb-uart на плате нет!
                        1795_1.jpg
                        1795_2.jpg

                        1 Reply Last reply Reply Quote 0
                        • V
                          v965 last edited by

                          @dmitrii240582:

                          @VictorS:

                          а что касаемо героя pzem-004t и esp - тут надо смотреть на коммуникации esp и pzem-004t. если на esp плате есть чип usb-uart , его надо отключить. об этом кстати вот https://wifi-iot.com/p/wiki/15/ сказано. он может серьезно мешать. Я читал это предупреждение, и собирал из того, что было под рукой (кстати, именно NodeMCU). ****<u>НО!!!</u>**** Физическое отключение pzem-004t (совсем-совсем) не улучшило ситуацию! Оказалось, что ESP8266, при подключении к драйверу MQTT (в режиме Сервер/брокер), начинает циклически перезагружаться! Отсюда и странные тормоза интерфейса - устройство просто недоступно N секунд. Причина перезагрузки непонятна…
                          Когда у Вас сейчас на стандартных настройках есть связка (ESP+pzem-004t+Iobroker), возьмите например Android устройство и подключитесь к iobroker по MQTT посмотрите сколько держится конект (макс 5 сек и обрыв, потом опять конект и обрыв) Проверьте ради интереса.

                          PS в телефоне введите ip устройства где установлен iobroker, а не ip адрес ESP.

                          А потом поменяйте настройки как у меня и проверьте заново.

                          1 Reply Last reply Reply Quote 0
                          • D
                            dmitrii240582 last edited by

                            @v965:

                            В итоге сменил настройки драйвера на свои и всё стало отлично.! `
                            Помогло!

                            1 Reply Last reply Reply Quote 0
                            • D
                              dmitrii240582 last edited by

                              @v965:

                              Когда у Вас сейчас на стандартных настройках есть связка (ESP+pzem-004t+Iobroker), возьмите например Android устройство и подключитесь к iobroker по MQTT посмотрите сколько держится конект (макс 5 сек и обрыв, потом опять конект и обрыв) Проверьте ради интереса.

                              PS в телефоне введите ip устройства где установлен iobroker, а не ip адрес ESP.

                              А потом поменяйте настройки как у меня и проверьте заново. `
                              Обрывы были.

                              1 Reply Last reply Reply Quote 0
                              • V
                                v965 last edited by

                                Вот и отлично.

                                1 Reply Last reply Reply Quote 0
                                • V
                                  VictorS last edited by

                                  @dmitrii240582:

                                  @v965:

                                  В итоге сменил настройки драйвера на свои и всё стало отлично.! Помогло!

                                  а какая версия драйвера MQTT ?

                                  1 Reply Last reply Reply Quote 0
                                  • D
                                    dmitrii240582 last edited by

                                    @VictorS:

                                    @dmitrii240582:

                                    @v965:

                                    В итоге сменил настройки драйвера на свои и всё стало отлично.! Помогло!

                                    а какая версия драйвера MQTT ? `
                                    Последняя.

                                    1 Reply Last reply Reply Quote 0
                                    • V
                                      VictorS last edited by

                                      @dmitrii240582:

                                      @VictorS:

                                      @dmitrii240582:

                                      Помогло! `

                                      а какая версия драйвера MQTT ? Последняя.

                                      а не можешь попробовать откатить на 1.2.5 ? она у меня стабильно работает со стандартными настройками без плясок с бубном.

                                      а на последней сплошные зависания.

                                      1 Reply Last reply Reply Quote 0
                                      • D
                                        dmitrii240582 last edited by

                                        @VictorS:

                                        @dmitrii240582:

                                        @VictorS:

                                        а какая версия драйвера MQTT ? Последняя.

                                        а не можешь попробовать откатить на 1.2.5 ? она у меня стабильно работает со стандартными настройками без плясок с бубном.

                                        а на последней сплошные зависания. `
                                        С настройками от v965 пока работает стабильно.

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

                                          @VictorS:

                                          @dmitrii240582:

                                          @VictorS:

                                          а какая версия драйвера MQTT ? Последняя.

                                          а не можешь попробовать откатить на 1.2.5 ? она у меня стабильно работает со стандартными настройками без плясок с бубном.

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

                                          • отсылать состояния при старте

                                          • использовать chunking заплатку.

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

                                          А второе - криворукие и ленивые программисты esp библиотеки, которые думают, что TCP это пакетная передача.

                                          Тоже используешь wifi-iot?

                                          1 Reply Last reply Reply Quote 0
                                          • V
                                            VictorS last edited by

                                            @Bluefox:

                                            @VictorS:

                                            @dmitrii240582:

                                            Последняя. `

                                            а не можешь попробовать откатить на 1.2.5 ? она у меня стабильно работает со стандартными настройками без плясок с бубном.

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

                                            • отсылать состояния при старте

                                            • использовать chunking заплатку.

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

                                            А второе - криворукие и ленивые программисты esp библиотеки, которые думают, что TCP это пакетная передача.

                                            Тоже используешь wifi-iot? `

                                            так точно, использую. виноват 🙂

                                            но другого работающего решения из коробки для ESP нет.

                                            ты имеешь ввиду

                                            Publish own states on connect: оно должно быть выключено?

                                            и chunking заплатку тоже отключить?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            900
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            31
                                            162
                                            42876
                                            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