Home Assistant – Jak ułożyć dane w kartach aby były tak jak chcemy – tips and tricks

Powitać.
Jednym z potężnych i niezaprzeczalnych plusów Home Assistant jest możliwość jego dostosowania do naszych potrzeb.

Mam sobie kod jak poniżej:

      – entity: weather.dark_sky
        type: weather-forecast
      – entity: weather.home
        type: weather-forecast
      – entities:
          – entity: binary_sensor.burze_dzis_net_frost_warning
          – entity: binary_sensor.burze_dzis_net_heat_warning
          – entity: binary_sensor.burze_dzis_net_precipitation_warning
          – entity: binary_sensor.burze_dzis_net_storm_warning
          – entity: binary_sensor.burze_dzis_net_storms_nearby
          – entity: binary_sensor.burze_dzis_net_tornado_warning
          – entity: binary_sensor.burze_dzis_net_wind_warning
        type: entities
który wygląda tak:
Używając dodatku Vertical stack https://www.home-assistant.io/lovelace/vertical-stack/ możemy te karty połączyć ze sobą. Oczywiście jest to jeden z przykładów, bo można łączyć różne elementy i encje w jeden pionowy zestaw.
      – type: vertical-stack
        in_card: true
        cards:
          – entity: weather.dark_sky
            type: weather-forecast
          – entity: weather.home
            type: weather-forecast
          – entities:
              – entity: binary_sensor.burze_dzis_net_frost_warning
              – entity: binary_sensor.burze_dzis_net_heat_warning
              – entity: binary_sensor.burze_dzis_net_precipitation_warning
              – entity: binary_sensor.burze_dzis_net_storm_warning
              – entity: binary_sensor.burze_dzis_net_storms_nearby
              – entity: binary_sensor.burze_dzis_net_tornado_warning
              – entity: binary_sensor.burze_dzis_net_wind_warning
            type: entities
Aby połączyć je natomiast poziomo możemy skorzystać z Glance https://www.home-assistant.io/lovelace/glance/ :
        – type: glance
          no_card: true
          title: „Salon”
          show_name: false
          entities:
            – sensor.salon_flora_temperature
            – sensor.humidity_158d000163e802
            – sensor.salon_flora_light_intensity
            – sensor.salon_flora_moisture
Z kolei menu 'Drop down’ jest już trochę bardziej czasochłonne, ale również proste.
W configuration.yaml zdefiniowałem sobie plik dla takich właśnie przełączników:
input_select: !include input_select.yaml
W tym oto pliku:
light_scenes_tv:
  name: „LED za TV”
  icon: mdi:palette
  options:
    – „ledzatvonwhite”
    – „ledzatvonblue”
    – „ledzatvonfade”
    – „ledzatvoff”
W ui-lovelace.yaml
– input_select.light_scenes_tv
A pod konkretne nazwy podpiąłem Automatyzacje:
– id: '1589838898697′
  alias: LED za TV white
  description: ”
  trigger:
  – entity_id: input_select.light_scenes_tv
    platform: state
    to: ledzatvonwhite
  condition: []
  action:
  – scene: scene.led_za_tv_white
I scena:
– id: ledzatvonwhite
  name: LED za TV white
  entities:
    switch.ledzatv: on
    switch.ledzatvwhite: on
Oraz, żeby było śmieszniej, to wywołuje kody IrDA w Broadlink 🙂
  – platform: broadlink
    host: 192.168.1.119
    mac: 34:EA:34:CE:00:CC
    switches:
      ledzatv:
        friendly_name: „LED za TV”
        command_on: 'JgBQAAABR5QXERYRFxEWERYRFxEWERYRFjcWNxY2FzYWNxY2FzYXNhY3FhEXNhc2FhEWEhYRFhEWERc2FhEXERY2FjcWNhc2FgAFFAABR0oVAA0FAAAAAAAAAAA=’
        command_off: 'JgBYAAABUZMXERYRFxEWERcRFhIWERcRFjcXNhc2FzcXNhc2FzYYNhY3FzYXNhg2FzYXEhcRFxEWEhcRFxEXERgRFzYXNhg2FwAFFQABU0oXAAxdAAFSSRcADQU=’
  – platform: broadlink
    host: 192.168.1.119
    mac: 34:EA:34:CE:00:CC
    switches:
      ledzatvwhite:
        friendly_name: „LED za TV white”
        command_on: 'JgBYAAABTJUVERUVExMVExUSFRUTExQTFTgVOBU3FjgWNhc2FjgRPRU3FhQTORUbDDkUExUUExQVFhE3FhMUOBcSFDkUOBU4FgAFGAABS0oWAAxgAAFOSRcADQU=’
        command_off: 'JgBYAAABTJUVERUVExMVExUSFRUTExQTFTgVOBU3FjgWNhc2FjgRPRU3FhQTORUbDDkUExUUExQVFhE3FhMUOBcSFDkUOBU4FgAFGAABS0oWAAxgAAFOSRcADQU=’
Może da się łatwiej, ale na ten moment inaczej nie potrafię 😉
Dwie rzeczy:
– ja uwielbiam 'babrać się’ w skryptach i plikach konfiguracyjnych. To mi daje poczucie pełnej kontroli
– uważajcie na wcięcia w tekście! To jest YAML i bardzo ważne są odstępy, odpowiednie marginesy