Home assistant / esphome (делимся примерами и наработками в данной области).

Тема в разделе "Глядите, что я сделал", создана пользователем Securbond, 6 ноя 2020.

  1. darts

    darts Нерд

    Попробуйте в скрипте вместо data написать data_template
     
  2. Sanchorezh

    Sanchorezh Нуб

    Увы, Тоже не канает.
     

    Вложения:

  3. darts

    darts Нерд

    Даже интересно стало )). Попробовал у себя на rgb-лампочке Xiaomi - всё работает. Вот рабочий скрипт:
    rgb_random:
    alias: 'Случайный цвет'
    sequence:
    - service: light.turn_on
    target:
    entity_id: light.ledb_bedroom
    data_template:
    brightness_pct: 100
    rgb_color: "[{{ (range(0, 255)|random) }},110,220]"
     
  4. Sanchorezh

    Sanchorezh Нуб

    Спасибо большое! Вот только в таком виде как у вас: "[........]" принял и скрипт сработал как надо. Где бы вообще увидеть синтаксис языка Home Assistant на примерах и подробно? С обновлениями все причудливее форма становится, мы как бы и так не программисты, а тут постоянно изменения какие то вопреки привычному...
     

    Вложения:

    • Ночник.jpg
      Ночник.jpg
      Размер файла:
      100,4 КБ
      Просмотров:
      192
  5. darts

    darts Нерд

    Движок шаблонов от версии к версии ХА не меняется. Это Jinja:
    https://palletsprojects.com/p/jinja/
    Подробнее:
    https://www.home-assistant.io/docs/configuration/templating/
     
  6. Tiberius76

    Tiberius76 Нуб

    Привет народ, установил я тут НА , поигрался. Как все переключился на редактирование конфигов вручную. Так как система молодая, бэкап не делал. Но, вот незадача, удалил содержимое automation.jaml ,, и всё!!
    Переустанавливать всю систему, как то не очень. Есть ли возможность его как нить по дефолту восстановить!?
     
  7. Sanchorezh

    Sanchorezh Нуб

    Всем привет! Тема: Управление устройствами по Telnet. Иногда случается что по каим-то причинам домашний роутер не может после сбоев на линии вернуть коннект к интернету и его приходится вручную перезагружать. Это не всегда доступная операция, особенно если нужен доступ к HomeAsistant извне... Уверен есть несложное решение, но пока не знаю как его правильно реализовать. Кто может подсказать что нужно прописать в Home Asistant. Открыт доступ по telnet к роутеру, подсоединяюсь с командной строки на компе в локальной сети и спокойно перезагружаю его командой: system reboot. Установил бинарный сенсор по пингованию интернет с HA. То есть нужно написать некий скрипт в HA, который по отсутствию пинга отправлял бы команду по telnet на перезагрузку роутера.
     
  8. ИгорьК

    ИгорьК Гуру

    Это решение лучше. Работало на ура, пока не поменял роутер на keenetic. После смены это оказалось не нужно.
    Правда и для keenetic со временем сделал возможность жёсткой перегрузки по питанию, но там очень специфическое решение через сигнализацию.

    Если роутер зависает, то и телнет на нем тоже может зависнуть. Перегружать - так по питанию.
     
  9. Sanchorezh

    Sanchorezh Нуб

    Здравствуйте! Неоднократно замечал, когда пропадает интернет, доступ в самой локалке к роутеру есть. Достаточно ребутнуть и соединение становиться нормальным. Редко такое бывает, но бывает. Роутер zyxel keenetic giga 2. Всетаки хотел сначала попробовать как из Home Asistant выдать команду по telnet. Физически Raspebery и роутер находятся рядом, могу выдать сигнал через пин GPIO на релюху и он перезагрузится, но это в том случае, если не будет работать с telnet.
     
    Последнее редактирование: 22 авг 2021
  10. Напрягало, что для работы с Алисой нужен интернет- сделал автономное распознование. На pi4 установлен Vosk сервер с голосовой моделью, на esp32 обработка цифрового микрофона I2c и цифрового I2c усилителя НЧ. Все работает под управлением Node-red на котором происходит анализ голосовых команд, формирование ответов на команды, прогноз погоды и время. Голосовые команды распознаются, но есть недостатки- одного микрофона мало (в принципе это решаемо- дополнительно ESP32 и микрофон можно натыкать где хочешь) , телевизор не мешает, а вот громкая музыка да. Для голосового ответа о результатах выполнения команды,все-таки нужен инет так как использовал TTS, а самое главное не нравится голос электронной бабы-Алиса лучше. Конструкция в корпусе, думаю повешать в коридоре, там тихо...
     
    ИгорьК нравится это.
  11. SergeiL

    SergeiL Оракул Модератор

    А чем напрягало то?
    Интернет все равно нужен, хотя бы для PUSH уведомлений.
    Мне Алиса понравилась хорошим распознаванием русского языка.
    Не нужно фразу специально строить так, чтобы голосовой ассистент понял, как было с Siri от Apple.
     
  12. Yandex колонка постоянно слушает и передает все на сервера, я не шпион и не маразматик, но я не уверен, что Yandex это не анализирует. Мой приятель писал программу девайса для буржуев, который подключается к кассе в магазинах и собирает все что может узнать о пакупателе, данные о смартофоне, распознование лица, что в чеке( детские товары? какие продукты?) это сделано для того чтобы напомнить Вам SMS или другим доступным образом, что пора купить молоко и подгузники в этом магазине, и для Вас будет скидка! А если серьезно нет интернета- нет распознования команд. Хотя зависимость от электричества еще больше.
     
  13. ИгорьК

    ИгорьК Гуру

    Фигасе блоху подковал!

    Исходим из худшего - анализирует. Ну одним анализирующим устройством больше. Что это меняет, среди наших смартфонов и умных утюгов-шпионов?

    Сейчас лучше ничего не скрывать, ибо если скрываешь - значит "или больной или подлюка".
     
    Последнее редактирование: 8 сен 2021
  14. SergeiL

    SergeiL Оракул Модератор

    Ну мне пофиг, что слушает. Абсолютно. :)
    То, о чем мы дома говорим - никому не интересно.
    То что слушает - это точно, они даже и не скрывают. Замечал на колонке, подключенной к телевизору, когда по меню ходишь, можно просто сказать дальше, и она перелистнет на следующий экран, без вызова Алисы.
    Рекламы в поиске того что обсуждалось я не видел. Обычно лезет, что сам искал с компа.
    А так дома 3 колонки, удобно, то что можно радио включить и фоном слушать.
    На самом деле - конечно это больше игрушка, но иногда удобно, например не искать пульт, а сказать, "Алиса включи телевизор, Включи первый канал, Выключи свет в гостиной".
    Еще сделал уведомление об отсутствии воды в поливалках цветов.
    После того как входная дверь закроется и обнаружится мой телефон в домашней сети, через пару минут Алиса напомнит, что закончилась вода в такой-то поливалке.
     
    ИгорьК нравится это.
  15. Chip_SET

    Chip_SET Нуб

    Securbond
    Сделал по Вашим примерам датчик температуры на плате NodeMCU, но на 2 датчика.
    Код (C++):
    esphome:
      name: tempesp
      platform: ESP8266
      board: esp01_1m

    # Enable logging
    logger:

    # Enable Home Assistant API
    api:

    ota:
      password: "****88c238981b"

    wifi:
      ssid: "***"
      password: "***"

      # Enable fallback hotspot (captive portal) in case wifi connection fails
      ap:
        ssid: "Tempesp Fallback Hotspot"
        password: "***"

    captive_portal:

    #Вэбсервер для локального контроля прибора (необязательно)
    web_server:
      port: 8080

    ################## Сенсоры #########################
    dallas:
      - pin: GPIO2 #Инициализация шины 1-Wire

    sensor:
      - platform: dallas
        address: 0x1802159246EC0428
        name: "Комната"
        id: in_ds
        accuracy_decimals: 1
        resolution: 12

      - platform: dallas
        address: 0x783C01F0958C5928
        name: "Улица"
        id: out_ds
        accuracy_decimals: 1
        resolution: 12
    В логе все нормально пишет:
    [16:02:35][D][dallas.sensor:153]: 'Комната': Got Temperature=25.0°C
    [16:02:35][D][sensor:131]: 'Комната': Sending state 25.00000 °C with 1 decimals of accuracy
    [16:02:35][D][dallas.sensor:153]: 'Улица': Got Temperature=25.9°C
    [16:02:35][D][sensor:131]: 'Улица': Sending state 25.87500 °C with 1 decimals of accuracy

    В веб морде ЕСП Комната, улица написано но температура одного датчика висит. В Хом ассистант тоже пишет - ESPHome 1 устройство и 1 объект.

    Киньте тапком куда копать. Гугл не выдает ничего :(

    --------------------------------------
    Добавил еще строчек:
    Код (C++):
    sensor:
    # Ulica sensor
      - platform: dallas
        name: "Улица"
        address: 0x783C01F0958C5928
    #    name: "Улица"
    # Komnata sensor
      - platform: dallas
        name: "Комната"
        address: 0x1802159246EC0428
    #    name: "Комната"
    # Uptime sensor
      - platform: uptime
        name: Uptime Sensor
        id: uptime_s
    # Wifi sensor
      - platform: wifi_signal
        name: "WiFi Signal Temp ESP"
        update_interval: 60s
    Теперь Хом ассистант увидел 4 объекта. Но все равно на обоих датчиках одинаковая температура (по графикам разная, один датчик на улицу выкинул). В вебе так и висит температура в верхней строчке, вторая пустая.

    ---------------------------------------------------------------------------------

    РЕШЕНО. Названия сенсоров надо писать на английском :)
     
    Последнее редактирование: 10 сен 2021
  16. Securbond

    Securbond Гуру

    Прошу прощения, что не отвечаю здесь.. Работа такая,что хожу по форумам крайне редко. Рад что тема жива и да же подсмотрел несколько интересных моментов для себя. Если что я всегда отвечу в телеге.
    Для новичков вышло новое видео по установке HA c Supervisor от Квазиса

     
  17. alekstes

    alekstes Нуб

    Добры день! Сделал реле в подрозетник
    20211120_122657.jpg
    фото версии на реле HFD4/3-SR и модуле ESP8285-ESP-01M
    этот вариант получался очень миниатюрный и легко устанавливается на дно подрозетника.
    Но есть одна проблема, через некоторое время работы происходит перезагрузка модуля и соответственно щелкает реле. при отключении перезагрузки reboot_timeout: 0s модуль просто зависает через какое то время.
    Как решить эту проблему?
    Код (C++):
    esphome:
      name: light-switch-2
      platform: ESP8266
      board: esp01_1m

    # Enable logging
    logger:

    # Enable Home Assistant API
    api:

    ota:
      password: "cd30323d17XXXXXXXXXXXXXXXX66ff83"

    wifi:
      ssid: "Arigab"
      password: "6XXXXXXX60"
      reboot_timeout: 0s
      manual_ip:
        # Set this to the IP of the ESP
        static_ip: 192.168.0.105
        # Set this to the IP address of the router. Often ends with .1
        gateway: 192.168.0.1
        # The subnet of the network. 255.255.255.0 works for most home networks.
        subnet: 255.255.255.0
      # Enable fallback hotspot (captive portal) in case wifi connection fails
      ap:
        ssid: "Light-Switch-2 Fallback Hotspot"
        password: "Password"

    captive_portal:

    web_server:
      port: 80
    sensor:
      - platform: wifi_signal
        name: "WiFi Signal Sensor"
        update_interval: 10s
     
    switch:
      - platform: gpio
        name: "rele"
        pin: GPIO16
        id: light_sw_2rele
        restore_mode: ALWAYS_OFF
     
    binary_sensor:
      - platform: gpio
        pin:
          number: GPIO4
          mode:
            input: true
        filters:
          - invert:
          - delayed_on_off: 100ms
        name: "lightswitch1_2"
        on_press:
          then:
            - switch.turn_on: light_sw_2rele
        on_release:
          then:
            - switch.turn_off: light_sw_2rele
         
      - platform: gpio
        pin:
          number: GPIO9
          mode:
            input: true
        filters:
          - invert:
          - delayed_on_off: 100ms
        name: "lightswitch2_2"
     
  18. glonas

    glonas Нерд

    Привет всем , как бы только вникаю в тему , есть счетчик энергомера , подключен через wifi (espeasy) , хочу затащить в ha . Не соображу как это замутить , обмен со счетчиком идет через запрос ответ по ком порту.
     
  19. vovatvset

    vovatvset Нуб

    Всем привет. Подскажите кто прошивал есп32 для еспхоме, я прошил есп8266 - работает, прошил есп32- не работает, может кто знает про какие то нюансы для есп32, может адрес другой во флешере ставить или еще что?
     
  20. Sanchorezh

    Sanchorezh Нуб

    Всем доброго времени суток! Подскажите пожалуйста синтаксис. Цель: автономно хранить в памяти колличество нажатий на пине 2 ESP-01S и отображать их в Home Assistant. Не понимаю как записывать число в энергонезависимую память ESP-01S и потом транслировать его в HA. Это нужно для водосчетчика. У него есть герконовый выход, и необходимо чтобы даже при пропадании сигнала Wi-Fi ESP-01 продолжал дальше считать импульсы со счетчика и при восстановлении связи передавал актуальное число. Также при обрыве питания, необходимо чтобы накопленные показания не пропали. Заранее спасибо за предложенные варианты. В ардуино например нет никакого труда такую программку составить, там я привык и принаровился к языку. Тут вообще дремучий лес...
     
    Последнее редактирование: 6 дек 2021