Navigation

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

    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 + Arduino

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

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

      1 Reply Last reply Reply Quote 0
      • E
        electric69 last edited by

        @Bluefox:

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

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

        1 Reply Last reply Reply Quote 0
        • E
          electric69 last edited by

          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 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

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

            1 Reply Last reply Reply Quote 0
            • E
              electric69 last edited by

              @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 Reply Last reply Reply Quote 0
              • I
                instalator last edited by

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

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

                1 Reply Last reply Reply Quote 0
                • I
                  instalator last edited by

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

                  1 Reply Last reply Reply Quote 0
                  • E
                    electric69 last edited by

                    Почему то при публикации двух переменных у меня вылетает ошибка.

                    Код ардуины:

                    ! ````
                    #include <spi.h>#include <ethernet.h>#include <pubsubclient.h>// Update these with values suitable for your network.
                    byte mac[] = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
                    byte server[] = { 192, 168, 69, 51 };
                    byte ip[] = { 192, 168, 69, 71 };

                    void callback(char* topic, byte* payload, unsigned int length) {
                    // handle message arrived (no messages expected though)
                    }

                    EthernetClient ethClient;
                    PubSubClient client(server, 1883, callback, ethClient);

                    void setup() {
                    Ethernet.begin(mac, ip);
                    if (client.connect("arduinoController", "testuser", "testpass")) {
                    client.publish("arduinoController/status","online");
                    client.publish("arduinoController/sensors/temp1","78");
                    }
                    }

                    void loop() {
                    delay(10000);
                    //client.publish("arduinoController/sensors/temp1","78");
                    client.loop();
                    }</pubsubclient.h></ethernet.h></spi.h>

                    Ошибка:
                    [50_pic_119.jpg](/assets/uploads/files/50_pic_119.jpg)
                    1 Reply Last reply Reply Quote 0
                    • Bluefox
                      Bluefox last edited by

                      Есть новая версия.

                      1 Reply Last reply Reply Quote 0
                      • E
                        electric69 last edited by

                        @Bluefox:

                        Есть новая версия. `
                        Вроде скетч сработал, но в логе куча сообщений:

                        ! mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/sensors": offline mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": online mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/alive": true mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/connected": true mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapUsed": 7.31 mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memRss": 16.48 mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/uptime": 2 mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/alive": false mqtt-0 2015-05-14 22:26:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/connected": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memRss": 17.41 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/email/0/uptime": 152 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/email/0/wakeup": undefined mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttical/0/events/Vacation": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_61": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_62": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/alive": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/connected": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapUsed": 9.26 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapTotal": 19.64 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memRss": 25.95 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/uptime": 3724 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapUsed": 7.25 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memRss": 16.45 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/uptime": 3 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memRss": 16.98 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/uptime": 3 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsayit/0/tts/volume": 70 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsayit/0/tts/text": mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsayit/0/tts/playing": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsayit/0/tts/mp3": undefined mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttvis/0/control/instance": a9809a3c mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttvis/0/control/command": changedView mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttvis/0/control/data": main/DemoView mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapUsed": 10.9 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memRss": 24.76 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/web/0/uptime": 18 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapUsed": 5.68 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memRss": 17.59 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/uptime": 17 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttvis/0/command": undefined mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/alive": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/connected": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapUsed": 17.48 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapTotal": 30.53 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memRss": 34.31 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/uptime": 185 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/alive": false mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapUsed": 9.64 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memRss": 23.49 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/uptime": 3 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttical/0/data/trigger": undefined mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttical/0/data/count": 0 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttical/0/data/table": mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttical/0/data/html": mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapUsed": 4.98 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memRss": 17.4 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/history/0/uptime": 17 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapUsed": 6 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapTotal": 16.75 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memRss": 17.73 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/uptime": 33 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/load": 1.61 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/uptime": 33 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/memRss": 23.6 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapTotal": 17.71 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapUsed": 9.68 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/host/bananapi/mem": 77 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/alive": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/connected": true mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapUsed": 14.86 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapTotal": 31.51 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memRss": 31.52 mqtt-0 2015-05-14 22:26:04 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/uptime": 38 mqtt-0 2015-05-14 22:26:02 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": offline mqtt-0 2015-05-14 22:26:02 info Client [arduinoController] publishes "mqtt.0.arduinoController.status": online mqtt-0 2015-05-14 22:26:02 info Client [arduinoController] connected mqtt-0 2015-05-14 22:26:02 info Client [arduinoController] closed mqtt-0 2015-05-14 22:26:02 error [arduinoController] Error: read ECONNRESET mqtt-0 2015-05-14 22:25:55 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": 123 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/sensors": offline mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": online mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapUsed": 7.31 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memRss": 16.48 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/uptime": 2 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/alive": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/connected": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memRss": 17.41 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/uptime": 152 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/email/0/wakeup": undefined mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttical/0/events/Vacation": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_61": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_62": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/alive": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/connected": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapUsed": 9.26 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapTotal": 19.64 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memRss": 25.95 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/uptime": 3724 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapUsed": 7.25 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memRss": 16.45 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/uptime": 3 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memRss": 16.98 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/uptime": 3 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsayit/0/tts/volume": 70 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsayit/0/tts/text": mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsayit/0/tts/playing": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsayit/0/tts/mp3": undefined mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttvis/0/control/instance": a9809a3c mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttvis/0/control/command": changedView mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttvis/0/control/data": main/DemoView mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapUsed": 10.9 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memRss": 24.76 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/web/0/uptime": 18 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapUsed": 5.68 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memRss": 17.59 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/uptime": 17 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttvis/0/command": undefined mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/alive": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/connected": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapUsed": 17.48 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapTotal": 30.53 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memRss": 34.31 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/uptime": 185 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/alive": false mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapUsed": 9.64 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memRss": 23.49 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/uptime": 3 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttical/0/data/trigger": undefined mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttical/0/data/count": 0 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttical/0/data/table": mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttical/0/data/html": mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapUsed": 4.98 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memRss": 17.4 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/history/0/uptime": 17 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapUsed": 6 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapTotal": 16.75 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memRss": 17.73 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/uptime": 33 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/load": 1.61 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/uptime": 33 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/memRss": 23.6 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapTotal": 17.71 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapUsed": 9.68 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/host/bananapi/mem": 77 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/alive": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/connected": true mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapUsed": 14.86 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapTotal": 31.51 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memRss": 31.52 mqtt-0 2015-05-14 22:25:11 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/uptime": 38 mqtt-0 2015-05-14 22:25:09 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": offline mqtt-0 2015-05-14 22:25:09 info Create state mqtt.0.arduinoController.sensors mqtt-0 2015-05-14 22:25:09 info Client [arduinoController] publishes "mqtt.0.arduinoController.status": online mqtt-0 2015-05-14 22:25:09 info Create state mqtt.0.arduinoController.status mqtt-0 2015-05-14 22:25:09 info Client [arduinoController] connected host-bananapi 2015-05-14 22:23:24 info Update repository "default" under "conf/sources-dist.json" !

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

                          @electric69:

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

                          Если в описанной модели передачи захочется поменять период передачи - переписывай код ардуины (можно конечно сделать костыль - типа передавать интервал клиенту - подписать ардуину на этот параметр). `
                          MQTT сервер создает переменные по subscribe, если они указаны явно "arduino/in/interval", а не "arduino/in/#".

                          @electric69:

                          Если ардуина зависнет - данных нет, надо придумывать какой то таймер… `
                          А чего это она зависнет? Если она зависнет, то и на запросы реагировать не будет.

                          @electric69:

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

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

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

                          Ардуина в out публикует состояние лампочки, а на переменную in подписывается. Как только in меняется - брокер извещает об изменении ардуину и та принимает решение - включать, отключать, ничего не делать. `
                          Для этого в брокере есть ack.. По умолчанию, всё что приходит от клиента имеет ack=true. Всё, что уходит от брокера ack=false. Таким образом можно различать команды и статусы.

                          @electric69:

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

                          @electric69:

                          Адаптер MQTT в ioBroker не умеет, я так понял, публиковать переменные… `
                          Как это не умеет? А для чего он тогда нужен?

                          @electric69:

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

                          @electric69:

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

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

                          Я тут бьюсь второй день с этим драйвером, а он другой ищет. 😄 Нет уж до конца, так до конца. :lol:

                          1 Reply Last reply Reply Quote 0
                          • E
                            electric69 last edited by

                            @Bluefox:

                            @electric69:

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

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

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

                            Ардуина в out публикует состояние лампочки, а на переменную in подписывается. Как только in меняется - брокер извещает об изменении ардуину и та принимает решение - включать, отключать, ничего не делать. Для этого в брокере есть ack.. По умолчанию, всё что приходит от клиента имеет ack=true. Всё, что уходит от брокера ack=false. Таким образом можно различать команды и статусы.
                            Эээ, все равно чот не понял как это работает))

                            Можно чуть подробнее для особо-одаренных? :oops:

                            @Bluefox:

                            @electric69:

                            Адаптер MQTT в ioBroker не умеет, я так понял, публиковать переменные… Как это не умеет? А для чего он тогда нужен?
                            Я имел ввиду сам, т.е. без участия клиетов (ардуин)…

                            @Bluefox:

                            @electric69:

                            P.S. Блин, засада, не могу нормально установить альтернативный MQTT-брокет на Windows-машину, у кого-ниб получилось заставить работать http://mosquitto.org/ из-под винды? Я тут бьюсь второй день с этим драйвером, а он другой ищет. :D Нет уж до конца, так до конца. :lol:
                            Да не, просто хотел поиграться с этим MQTT, много не понятно.

                            А адаптер мы конечно же допилим))
                            48_nutzungsrechte_bergabe_vis_template.docx

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

                              @electric69:

                              @Bluefox:

                              Есть новая версия. `
                              Вроде скетч сработал, но в логе куча сообщений:

                              mqtt-0	2015-05-14 22:26:05	info	Send to client [arduinoController] "mqttmqtt/0/arduinoController/sensors": offline
                              mqtt-0	2015-05-14 22:26:05	info	Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": online
                              .....
                              mqtt-0      2015-05-14 22:25:11 info   Send to client [arduinoController] "mqttsystem/adapter/admin/0/uptime": 38
                              mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": offline
                              mqtt-0	2015-05-14 22:25:09	info	Create state mqtt.0.arduinoController.sensors
                              mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] publishes "mqtt.0.arduinoController.status": online
                              mqtt-0	2015-05-14 22:25:09	info	Create state mqtt.0.arduinoController.status
                              mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] connected
                              host-bananapi	2015-05-14 22:23:24	info	Update repository "default" under "conf/sources-dist.json"
                              
                              ```` `  
                              

                              Столько много событий из-за того, что клиент не на что не подписывается. Тогда он получает всё.

                              Брокер ждёт 2 секунды, прежде чем начать слать данные. 22:25:09 => 22:25:11

                              Если убрать флаг "Выдавать собственные значения при старте:" то тогда при соединении ничего отсылаться не будет, но изменения всё равно будут все слаться.

                              Надо сделать на клиенте subscribe

                              1 Reply Last reply Reply Quote 0
                              • E
                                electric69 last edited by

                                @Bluefox:

                                @electric69:

                                @Bluefox:

                                Есть новая версия. `
                                Вроде скетч сработал, но в логе куча сообщений:

                                mqtt-0	2015-05-14 22:26:05	info	Send to client [arduinoController] "mqttmqtt/0/arduinoController/sensors": offline
                                mqtt-0	2015-05-14 22:26:05	info	Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": online
                                .....
                                mqtt-0      2015-05-14 22:25:11 info   Send to client [arduinoController] "mqttsystem/adapter/admin/0/uptime": 38
                                mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": offline
                                mqtt-0	2015-05-14 22:25:09	info	Create state mqtt.0.arduinoController.sensors
                                mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] publishes "mqtt.0.arduinoController.status": online
                                mqtt-0	2015-05-14 22:25:09	info	Create state mqtt.0.arduinoController.status
                                mqtt-0	2015-05-14 22:25:09	info	Client [arduinoController] connected
                                host-bananapi	2015-05-14 22:23:24	info	Update repository "default" under "conf/sources-dist.json"
                                
                                ```` `  
                                

                                Столько много событий из-за того, что клиент не на что не подписывается. Тогда он получает всё.

                                Брокер ждёт 2 секунды, прежде чем начать слать данные. 22:25:09 => 22:25:11

                                Если убрать флаг "Выдавать собственные значения при старте:" то тогда при соединении ничего отсылаться не будет, но изменения всё равно будут все слаться.

                                Надо сделать на клиенте subscribe `
                                Понятно.

                                Самое интересное, что начинает слать "все" только при рестарте ардуины (при коннекте).

                                Следующие паблиши идут нормально:

                                ! mqtt-0 2015-05-14 23:39:53 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:39:43 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:39:33 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:39:23 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:39:13 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/status": online mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttmqtt/0/arduinoController/sensors": offline mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapUsed": 7.31 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/memRss": 16.48 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/mqtt/0/uptime": 2 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/alive": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/connected": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/memRss": 17.41 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/uptime": 152 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/email/0/wakeup": undefined mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttical/0/events/Vacation": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_61": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttping/0/bananapi/192_168_69_62": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/alive": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/connected": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapUsed": 9.26 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memHeapTotal": 19.64 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/memRss": 25.95 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/onkyo/0/uptime": 3724 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapUsed": 7.25 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memHeapTotal": 11.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/memRss": 16.45 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/simple-api/0/uptime": 3 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapUsed": 4.99 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/memRss": 16.98 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/sayit/0/uptime": 3 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsayit/0/tts/volume": 70 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsayit/0/tts/text": mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsayit/0/tts/playing": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsayit/0/tts/mp3": undefined mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttvis/0/control/instance": a9809a3c mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttvis/0/control/command": changedView mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttvis/0/control/data": main/DemoView mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapUsed": 10.9 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/memRss": 24.76 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/web/0/uptime": 18 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapUsed": 5.68 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/memRss": 17.59 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/node-red/0/uptime": 17 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttvis/0/command": undefined mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/alive": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/connected": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapUsed": 17.48 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memHeapTotal": 30.53 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/memRss": 34.31 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/javascript/0/uptime": 185 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/alive": false mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapUsed": 9.64 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memHeapTotal": 18.68 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/memRss": 23.49 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ical/0/uptime": 3 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttical/0/data/trigger": undefined mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttical/0/data/count": 0 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttical/0/data/table": mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttical/0/data/html": mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapUsed": 4.98 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memHeapTotal": 15.79 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/memRss": 17.4 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/history/0/uptime": 17 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapUsed": 6 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memHeapTotal": 16.75 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/memRss": 17.73 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/ping/0/uptime": 33 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/load": 1.61 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/uptime": 33 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/memRss": 23.6 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapTotal": 17.71 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/memHeapUsed": 9.68 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/host/bananapi/mem": 77 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/alive": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/connected": true mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapUsed": 14.86 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memHeapTotal": 31.51 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/memRss": 31.52 mqtt-0 2015-05-14 23:39:05 info Send to client [arduinoController] "mqttsystem/adapter/admin/0/uptime": 38 mqtt-0 2015-05-14 23:39:03 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": offline mqtt-0 2015-05-14 23:39:03 info Client [arduinoController] publishes "mqtt.0.arduinoController.status": online mqtt-0 2015-05-14 23:39:03 info Client [arduinoController] connected mqtt-0 2015-05-14 23:39:02 info Client [arduinoController] closed mqtt-0 2015-05-14 23:39:02 error [arduinoController] Error: read ECONNRESET mqtt-0 2015-05-14 23:38:58 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:38:48 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:38:38 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:38:28 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 mqtt-0 2015-05-14 23:38:18 info Client [arduinoController] publishes "mqtt.0.arduinoController.sensors": 78 !

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

                                  @electric69:

                                  Для этого в брокере есть ack.. По умолчанию, всё что приходит от клиента имеет ack=true. Всё, что уходит от брокера ack=false. Таким образом можно различать команды и статусы.

                                  Эээ, все равно чот не понял как это работает))

                                  Можно чуть подробнее для особо-одаренных? :oops: `
                                  На ардуине есть 3 переменные:

                                  • arduino/out/temperature - актуальная температура

                                  • arduino/in/light - вкл/выкл света. Причем управляться может, как локально (на ардуине), так и чз ioBroker.

                                  • arduino/in/interval - как часто надо слать температуру

                                  Так вот при соединении ардуина всегда шлёт все свои данные, как in, так и out, кроме настроек (interval). Они все в брокере помечаются флагом ack=true. То есть статус подтверждён конечным устройством. Эти данные обратно к ардуине не отсылаются, т.к. флаг true. Да даже если перешлются, то ничего не случится, кроме как включится включенный свет.

                                  Потом ардуина подписывается на все команды in, то есть````
                                  subscribe("arduino/in/#")

                                  subscribe("arduino/in/interval")

                                  
                                  Как только в ioBroker в vis нажали кнопку, записывается статус с ack=false. mqtt сервер видит, что пришел статус с ack=false, значит это команда, а не статус и надо отослать это клиенту. Клиент тупо исполняет всё, что приходит от брокера и не надо in и out.
                                  
                                  Теперь в игру вступает установка "Выдавать собственные значения при старте:". Т.к клиент подписался в течении 2х секунд после соединения на "arduino/in/#" и "arduino/in/interval", то он получит свои собственные значения обратно и "arduino/in/interval" тоже. Причем если "arduino/in/interval" не существовал раньше на брокере, то придёт значение "null" и его нужно проигнорировать, а если существовал, то придёт нормальное значение, которое нужно принять к сведению и использовать.
                                  
                                  ~~@electric69:~~ 
                                  
                                  > Я имел ввиду сам, т.е. без участия клиетов (ардуин)… `  
                                  А вот здесь уже не понял я.. Я так понимаю загвоздка в слове "публиковать".
                                  
                                  Что ты подразумеваешь под этим словом?
                                  
                                  Я понимаю - "publish", то есть отсылать данные клиентам… А если это так, то как можно отсылать данные клиентам без клиентов (ардуин) ? :)
                                  1 Reply Last reply Reply Quote 0
                                  • Bluefox
                                    Bluefox last edited by

                                    @electric69:

                                    Самое интересное, что начинает слать "все" только при рестарте ардуины (при коннекте).

                                    Следующие паблиши идут нормально: `
                                    Настройка "Выдавать собственные значения при старте:".

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

                                    1 Reply Last reply Reply Quote 0
                                    • E
                                      electric69 last edited by

                                      @Bluefox:

                                      Теперь в игру вступает установка "Выдавать собственные значения при старте:". Т.к клиент подписался в течении 2х секунд после соединения на "arduino/in/#" и "arduino/in/interval", то он получит свои собственные значения обратно и "arduino/in/interval" тоже. Причем если "arduino/in/interval" не существовал раньше на брокере, то придёт значение "null" и его нужно проигнорировать, а если существовал, то придёт нормальное значение, которое нужно принять к сведению и использовать. `
                                      Так, вот тут еще немного подробнее.

                                      Я понимаю так. Ардуина подписывается на переменную интервал опроса - она получит эту переменную только в случае её изменения в ioBroker, т.е. делаем на работающей системе рестарт ардуины, в её программе этот интервал сбрасывается на "по-умолчанию" - на ноль (переинициализируется) и все - труба… В зависимости от кода в ардуине - она может начать DDOS на ioBroker)))

                                      Если в настройках адаптера поставить галочку "Выдавать собственные значения при старте", то при рестарте ардуины, кроме сброса интервала, будет реконнект к MQTT-брокеру, который перешлет данные, на которые подписана ардуина (интервал), даже если они не поменялись - так? И интервал станет нормальным и будут все счастливы...

                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        instalator last edited by

                                        Добавить в настройки Настройка времени квантования, если тебе нужен этот интервал

                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          electric69 last edited by

                                          @instalator:

                                          Добавить в настройки Настройка времени квантования, если тебе нужен этот интервал `
                                          Ммм, сам протокол MQTT не подразумевает такой настройки вроде, тем более это время может быть разное для разных клиентов, для каких то вообще нет необходимости в этой настройке…

                                          1 Reply Last reply Reply Quote 0
                                          • I
                                            instalator last edited by

                                            @electric69:

                                            @instalator:

                                            Добавить в настройки Настройка времени квантования, если тебе нужен этот интервал Ммм, сам протокол MQTT не подразумевает такой настройки вроде, тем более это время может быть разное для разных клиентов, для каких то вообще нет необходимости в этой настройке…

                                            А причем тут протокол? Речь про драйвер, можнос делать визуальную настройку для каких id задать время квантования (опроса)

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            848
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            18
                                            244
                                            65690
                                            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