• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

У Павла!

  • Контроллеры
    • Arduino
      • Приборы
      • Музыка
      • Проекты Arduino
      • Уроки Arduino
      • Игры на Arduino
      • Роботы на Ардуино
      • FLProg
    • Одноплатные ПК
      • Orange pi
      • Raspberry pi
        • Raspberry pi pico
        • Raspberry pi server
        • Проекты Raspberry pi
    • ESP
      • ESP8266
        • NodeMCU
      • ESP32
      • M5stack
    • Другие контроллеры
      • STM32
  • Умный дом
    • Home Assistant
      • Автоматизации
    • Tuya
    • Bluetooth
    • ESPHome
    • Frigate
    • Telegram
    • Яндекс
  • ЧПУ
  • 3d печать
  • Об авторе

Вывод информации из Home Assistant на дисплей контроллера esp8266/esp32 в ESPHome.

11 января, 2022

Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.

 

Я не знаю по какой парадоксальной причине, но информации очень мало по этому поводу. Я ее смог найти только на зарубежных форумах.

Смысл в следующем.

Я показывал уже как выводить информацию в esphome с разных датчиков и на разные дисплеи. Все работает, все замечательно. НО.

Кто-то кроме меня запумывался о том, что у каждого ардуинщика есть дисплеи разные. И что ESPHome нас замечательно интегрирует с Home Assitant. И хотелось бы информацию какраз из Home Assistant выводить на дисплей подключенный к esp контроллеру. Ведь в Home Assitant очень много всякой информации. Ведь Home Assitant это сердце нашего умного дома.

И я начал “гуглить” как-же вывести например температуру процессора моей raspberry pi на которой установлен Home assistant на мой дисплей m5stack (к примеру).

И на русских просторах ничего не смог найти. А все очень банально просто. Для этого существует – platform homeassistant

Давайте покажу на примере как вывести температуру и влажность с термоментра от Xiaomi LYWSD03MMC.

Тоесть датчик температуры и влажности XIaomi отправляет данные в Home Assistant по блютузу. А мы из Home Assistant берем эти данные и оптправляем на дисплей в ESPHome.

Выглядит это следующим образом:


captive_portal:

spi:
  clk_pin: 18
  mosi_pin: 23
  miso_pin: 19

i2c:
  sda: 21
  scl: 22
  scan: true

  
sensor:
  - platform: homeassistant   # Cpu temperature
    id: temp_balkon
    entity_id: sensor.ble_temperature_balkon
  - platform: homeassistant   # Cpu temperature
    id: humidity_balkon
    entity_id: sensor.ble_humidity_balkon

    
font:
  - file: "fonts/Roboto-Medium.ttf"
    id: font_roboto_medium22
    size: 22
color:
  - id: RED
    red: 100%
    green: 0%
    blue: 0%
  - id: BLUE
    red: 0%
    green: 0%
    blue: 100%
  - id: WHITE
    red: 100%
    green: 100%
    blue: 100%
 
display:
  - platform: ili9341
    id: m5stack_display
    model: M5Stack
#    model: TFT 2.4
    cs_pin: 14
    dc_pin: 27
    led_pin: 32
    reset_pin: 33
    rotation: 0
    lambda: |-
      it.rectangle(0,  0, it.get_width(), it.get_height(), WHITE);
      it.rectangle(0, 22, it.get_width(), it.get_height(), WHITE);   // header bar
      it.print(it.get_width() / 2, 11, id(font_roboto_medium22), WHITE, TextAlign::CENTER, "CPU");
      it.print(11,  33, id(font_roboto_medium22), WHITE, TextAlign::LEFT, "Temperature");
      it.print(11,  55, id(font_roboto_medium22), WHITE, TextAlign::LEFT, "Pressure");
      it.printf(it.get_width() - 11,  33, id(font_roboto_medium22), WHITE, TextAlign::RIGHT, "%.1f°C ", id(temp_balkon).state);
      it.printf(it.get_width() - 11,  55, id(font_roboto_medium22), WHITE, TextAlign::RIGHT, "%.1f%% ", id(humidity_balkon).state);

Ну собственно тут много конечно всего и непонятного, там нужно по сути только вот это:



sensor:
  - platform: homeassistant   # Cpu temperature
    id: temp_balkon
    entity_id: sensor.ble_temperature_balkon
  - platform: homeassistant   # Cpu temperature
    id: humidity_balkon
    entity_id: sensor.ble_humidity_balkon

 

Тут смотрите мы прописываем что это платформа homeassistant, приписываем ему id произвольное по этому id мы и забираем значения для вывода на дисплей. И последнее это entity_id. Это название сенсора в Home Assitant. Тоесть мы находим сенсор температуры датчика xiaomi и сюда его вписываем:

 

Ну вот и все. Данный способ мне очень понадобится в дальнейшем. Я хочу на дисплей вывести все показания которые мне нужны и отображать их на дисплее.

Primary Sidebar

Поиск

Новые записи

  • Автоматизация перезагрузки устройства по команде Ping.
  • Разблокирование и добавление шлюза Xiaomi gateway 3 в Home Assistant для управления Bluetooth устройствами из экосистемы Xiaomi Home (mihome)
  • Интеграция для локального управления (без интернета) ик пультом Tuya работающим по wifi из Home Assistant
  • Транслируем показания с Уличного Bluetooth Датчика температуры по BTHome на дисплей датчика температуры XIaomi LYWSD03MMC
  • Заставляем Bluetooth датчики температуры tuya и xiaomi отправлять данные по Zigbee в Home Assistant.

Официальный YouTube Канал M5Stack:

Подписывайтесь на Телеграм канал

https://t.me/ypavla

Подписаться на YouTube!

Secondary Sidebar




Подписывайтесь на Telegram Канал!

У Павла!

Footer

Copyright_У Павла! © 2025 ·