Умный дом: Domoticz.

Тема в разделе "Глядите, что я сделал", создана пользователем ИгорьК, 17 сен 2017.

Метки:
  1. ZaRaZa

    ZaRaZa Нерд

    Спасибо большое за Ваш ответ,
    Я уже сделал, вот так:
    Код (Text):
    [{"id":"211878fc.726538","type":"tab","label":"Rasberry to Domoticz","disabled":false,"info":""},{"id":"3ee9cf92.fd16d","type":"function","z":"211878fc.726538","name":"mqtt to domoticz","func":"msg.payload=JSON.stringify({\"idx\":51, \"nvalue\": 0, \"svalue\":msg.payload});\nreturn msg;","outputs":1,"noerr":0,"x":266,"y":59.00000286102295,"wires":[["34673b08.dbda54"]]},{"id":"34673b08.dbda54","type":"debug","z":"211878fc.726538","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","x":473.7000045776367,"y":61,"wires":[]},{"id":"ffe3e8a6.a6c4a8","type":"inject","z":"211878fc.726538","name":"","topic":"","payload":"42.9","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":80,"y":59,"wires":[["3ee9cf92.fd16d"]]}]
    Критика принимается ))
     
    IgorK нравится это.
  2. IgorK

    IgorK Нерд

    Критики не будет т.к. для человека, который только недавно занялся NR - в этом примере отражено хорошее понимание JS. Молодец!
    Писал пример для новичка, чтобы было проще разобраться.
     
  3. IgorK

    IgorK Нерд

    !!! В последнем релизе Domoticz (4.10659) есть ошибка аутентификации. Для того, чтобы у вас не было проблем после обновления, в настройках Domoticz поменяйте способ аутентификации на БАЗОВУЮ. Кто не успел это сделать есть 2 варианта: 1) обновиться на последнюю бэту. 2) стартануть с чистой базой, поменять способ аутентификации, а потом восстановить свою базу.
     
    ИгорьК нравится это.
  4. ИгорьК

    ИгорьК Гуру

    Не заметил, но, наверно,это так.

    Чтобы не влетать, думаю нужно устанавливать в настройках беспарольный вход из домашней сетки:
    upload_2019-5-7_10-19-37.png

    И, кстати, эта версия уже, вроде, неактуальна:

    upload_2019-5-7_10-20-52.png
     
  5. ZaRaZa

    ZaRaZa Нерд

    Доброй ночи.
    Продолжаю самообразовываться )) и снова проблема, на сей раз ардуино и mqtt Mosquitto
    я могу получить данные на мониторе порта:
    Serial.print(mq135.readCO2());
    но когда я пытаюсь сделать это:
    client.publish("esp/CO2", mq135.readCO2());
    то получаю ошибку:
    Код (C++):
    Arduino: 1.8.9 (Windows 7), Плата:"Amperka WiFi Slot, 80 MHz, Flash, Disabled, 40MHz, DOUT (compatible), 1M (no SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 115200"

    C:\Users\qq\AppData\Local\Temp\arduino_modified_sketch_456306\WiFiClient.ino: In function 'void loop()':

    WiFiClient:98:42: error: invalid conversion from 'long unsigned int' to 'const char*' [-fpermissive]

      client.publish("esp/CO2", mq135.readCO2());

                                              ^

    In file included from C:\Users\qq\AppData\Local\Temp\arduino_modified_sketch_456306\WiFiClient.ino:2:0:

    C:\Users\qq\Documents\Arduino\libraries\PubSubClient\src/PubSubClient.h:141:12: error:   initializing argument 2 of 'boolean PubSubClient::publish(const char*, const char*)' [-fpermissive]

        boolean publish(const char* topic, const char* payload);

                ^

    exit status 1
    invalid conversion from 'long unsigned int' to 'const char*' [-fpermissive]

    Этот отчёт будет иметь больше информации с
    включенной опцией Файл -> Настройки ->
    "Показать подробный вывод во время компиляции"

    что то я уже запутался в длине строк, пробелах и скобках.
    Можете подсказать, в чем проблема?
     
  6. InG0d

    InG0d Нуб

    Подскажите по обратной связи управлением gpio по mqtt через node-red
    Использую прошивку wifi-iot добавил gpio 1 (out). топик /ESP001/output1
    node-red при принятии топика /ESP001/output1, преобразует его в формат json и передает в Domoticz, {"idx": 9, "nvalue": 0, "svalue": ""}.
    связка ESP->node-red->Domoticz работает.

    При добавлении обратной связи Domoticz->node-red->ESP, происходит зацикливание.
    Меняю состояние переключателя в Domoticz, он сразу шлет топик в node-red, node-red передает в ESP. EPS меняет состояние output1, и сразу шлет топик об изменении в node-red тот в Domoticz и так по кругу.
    Как избавиться от зацикливания ??
     
  7. ИгорьК

    ИгорьК Гуру

    Несколько решений.
    1. Самый!!! простой способ - в домотикз применять подчинённый выключатель.
    2. Сложнее. В Node Red - иметь глобальную переменную. Запоминать состояние в неё. При приходе информации с любой стороны - фильтровать дальнейшую пересылку в зависимости от ситуации.
     
    Последнее редактирование: 19 май 2019
    InG0d нравится это.
  8. IgorK

    IgorK Нерд

    С таким вопросом лучше сюда https://web.telegram.org/#/im?p=@node_red
     
  9. Nikolai_s

    Nikolai_s Нуб

    Удалось ли кому-нибудь подключить к Domoticz-у
    один из новых Xiaomi Mijia Temperature and Humidity Sensor, тот, который круглый с E-ink экраном.
    В интернете нашел описание как подключают предыдущую модель. (Круглая с ЖК-экраном)
    Попробовал "в лоб" - не получилось(((. Ошибка по таймауту.

    BLE ответом выдает совсем другое имя - ClearGrass Temp & RH (Не MJ_HT_V1),
    соответственно и протокол обмена может быть другим.
    Есть и осталось желание прикрутить эту версию к Домотикзу.
    Буду рад любому совету!

    UPD:
    15.06.2019 - Решено. Написан скрипт на pyton. ;)
     
    Последнее редактирование: 15 июн 2019
  10. ИгорьК

    ИгорьК Гуру

    Температуру и влажность в домотикз тут по-самопалу влегкую заталкивают.
    Вам бы где-то в другом месте поспрашивать.
     
    Nikolai_s нравится это.
  11. Tolubey

    Tolubey Нуб

    Подскажите, как можно изменить размеры цифр на погодной иконке? Возможно ли их перенести в центр баннера? Пробовал разные темы везде мелочь неразличимая.
     

    Вложения:

    • skr.png
      skr.png
      Размер файла:
      14,4 КБ
      Просмотров:
      710
  12. InfoWolf

    InfoWolf Нуб

    Добрый день всем участникам! Не мог бы кто-нибудь подсказать совет по следующей ситуации.

    Имеем шлюз сяоми, пробую подключить к домотикс - ни в какую. Пароль из wireless communication protocol введен, 9898 порт, устройства в одной подсети, без вланов, оба пингуются. В устройствах не появляется ничего. Вообще. Домотикс стоит на малине,. Буду очень признателен за возможное решение. Заранее благодарю.
     
  13. Nikolai_s

    Nikolai_s Нуб

    Мне помогло https%3A%2F%2Fyoutu.be%2FAhkPdIujzM0&e=86469652&f
     
  14. Добрый день, коллеги! Рассматриваю вариант миграции с OH 1.9, однако имею в составе дома Овен ПЛК-100, связь с ним через ModBus TCP. Что есть на эту тему у Домотикс? Спасибо!
     
  15. Спасибо. На первый взгляд все выглядит несколько сложнее чем миграция OH с 1.9 на 2.4.
     
  16. ИгорьК

    ИгорьК Гуру

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

    1. Стандартного коннекта в Домотикз к устройствам modbus не предусмотрено. (Domoticz -> Setup -> Hardware)
    2. Подключить устройство можно попробовать с применением NodeRed, а именно:
    https://flows.nodered.org/?term=modbus&num_pages=1

    3. Хотя что-то все таки есть: https://www.domoticz.com/forum/viewtopic.php?f=65&t=28353

    Точнее: https://github.com/DomoticX/domoticz-modbus
     
    Последнее редактирование: 28 июн 2019
    DetSimen и СергейЛ нравится это.
  17. Nikolai_s

    Nikolai_s Нуб

    Вопрос к Гуру:
    Ткните носом где почитать, или подскажите как сделать:
    Есть Dummy переключатель (selector) с RGB-кольцом выбора цвета.
    Как в сценарии прочитать какой цвет выбран пользователем? а яркость?

    Пример:
    Мне необходимо подать команду включить/изменить цвет на свое устройство (сделанное на основе ESP).
    Т.е. переключатель напрямую с этим устройством не работает (как это реализовано, например, у Xiaomi), а только через сценарий по изменению его состояния пользователем. Мне необходимо понять/считать какой цвет выбрал пользователь в Д., чтобы послать на устройство команду по активизации именно этого цвета.
     
    Последнее редактирование: 6 июл 2019
  18. ИгорьК

    ИгорьК Гуру

    То есть, сначала пользователь что-то выбирает, потом приходите вы и пытаетесь узнать? Ну так же из текста следует.

    Или вопрос звучит так: не знаю как написать скрипт управления rgb устройством?

    Каждый объект в домотикз имеет свойства, которые можно получить. https://www.domoticz.com/wiki/DzVen...#RGBW.28W.29_.2F_Lighting_Limitless.2FApplamp
     
    Последнее редактирование: 6 июл 2019
    Nikolai_s нравится это.
  19. platon2k

    platon2k Нерд

    Всем доброго вечера. Прошу сильно не пинать, только начинаю осваивать Domoticz, а точнее mqtt и node-red. Задача такая: есть устройство для снятия показаний счетчиков воды - Ватериус, на базе ESP8266. С mqtt работает, отправку в mqttdash на телефон настроил, все ок. Нужно показания со счетчиков закинуть в domoticz. топики: waterius/bathroom/ch0; waterius/bathroom/ch1; waterius/bathroom/voltage
    В домотикз настроил Dummy (Does nothing, use for virtual switches only), создал виртуальные датчики: два - Counter Incremental (для показаний) (ch1 - id35, ch0 - id34), третий Voltage (voltage - id36) - для контроля за батарейками.
    Проблема заключается в том, что показания от Ватериуса из логов (в логах показываются верные показания) не бьются с тем, что показывают датчики: показания некорректные, напряжение вообще не показывает.
    В чем может быть проблема, на что обратить внимание?
    var newmsg = {};
    var zn = (+msg.payload);
    top = msg.topic.substring(18);
    function setCounter(idx, nm){
    var counterpayload = '{"idx":' + idx +',"svalue":"' + nm + '"}';
    return counterpayload;
    }
    function setVoltage(idx, nm){
    var voltagepayload = '{"idx":' + idx +',"svalue":' + nm + ',"nvalue":"0"}';
    return voltagepayload;
    }
    switch (top) {
    case 'ch1':
    newmsg.payload = setCounter(34, zn);
    return newmsg;
    case 'ch0':
    newmsg.payload = setCounter(35, zn);
    return newmsg;
    case 'voltage':
    newmsg.payload = setVoltage(36, zn);
    return newmsg;
    }

    return null;
    MQTT: Topic: domoticz/in, Message: {"idx":12,"svalue":"761.24"}
    2019-07-20 02:49:41.868 MQTT: Topic: domoticz/in, Message: {"idx":35,"svalue":"872.60"}
    2019-07-20 02:49:42.059 MQTT: Topic: domoticz/in, Message: {"idx":34,"svalue":3.00,"nvalue":"0"}
    2019-07-20 02:49:42.059 Error: MQTT: Invalid data received!
     
  20. ИгорьК

    ИгорьК Гуру

    Если данные неверные - неправильно выбран тип датчика.
    Если данные не отображаются - вероятно вы передаёте нецелое число. Например, передавать давление надо только целым числом. Возможно это касается и напряжения.

    То есть, в ряде случаев Домотикз работает только с целыми числами.
     
    platon2k нравится это.