HomeAssistant – Dashboard iOS vs. Android

Problem: Es kam zu Problemen bei der Darstellung auf einem Android Handy, wo die gleiche Ansicht auf dem iPhone korrekt dargestellt wurde.

Ursache: dieses Android konnte nicht mit externen Bildquellen umgehen:

state_image:
'on': local/image.png. #android + iOS darstellbar
'off': http://         #android nicht + iOS darstellbar

Lösung/Vorgehen:

  • samba Add-on installieren
  • Dateien unter config/www/… ablegen
  • im code per ‚local/dateiname.dateiendung‘ einfügen

Homematic Variablen in HA „schalten“

Voraussetzung:

  • ccu3 Integration in HA wurde erfolgreich eingerichtet
  • in der CCU muss in der Beschreibung der Variable „hahm“ stehen

Die Variablen welche in der CCU zu sehen sind, werden automatisch alle in Homeassistant deaktiviert und versteckt.

Um diese dann in HA nutzen zu können:

  • man geht auf Einstellungen –> Geräte & Dienste –> Entitäten
  • man klicke rechts oben und auf die 3 Striche und aktiviert die Haken bei “ Anzeige deaktivierter Entitäten“ und „versteckte Entitäten anzeigen“
  • man sucht nach der Variable, hier „A-test“

Nun kann man die Variable aktivieren. Danach steht die Variable, hier als „switch/Schalter“ zur Verfügung und man kann diese schalten.

Quelle: https://github.com/danielperna84/custom_homematic

Wasserzähler auslesen und in HomeAssistant integrieren

Gegebenheiten bei mir:

  • Ich habe einen Hydrus 171A Wasserzähler , wo mir leider der Funkschlüssel nicht verraten wird. Daher kam das AI-on-the-edge Projekt wieder zum tragen.

Folgendes Druckteil hab ich mir erstellt:

Dazu wird das Gehäuse von der Ai-on-the-edge Seite genommen und oben drauf geklebt:

Danach nur noch die Config anpassen, im Expert-Mode:

  • Digit-Modell: dig_class11_1600_s2.tflite (weil das eine reine digitale Anzeige ist)
  • den Rest natürlich auch 🙂

[HowTo] – MAPS mit Bewegungsdaten

Maps / Karten in Home Assistant ist eine schöne Sache. Können wir uns doch immer ansehen wo genau ein „tracking_device“ grade steckt und damit Automatisierungen anschieben. Aber wie wäre es wenn wir den Verlauf des „tracking_device“ auch Visuell nachvoll ziehen könnten. Das geht mit einem kleinen aber feinen Trick.

Als erstes erstellen wir uns ein neues Dashboard „Einstellungen -> Dashboards -> Dashboard hinzufügen“

Home Assistant hat uns nun ein neues Dashboard mit dem Namen Angelegt und mit Beispielen gefüllt. Wir brauchen ein Leeres Dashboard also gehen wir auf Dashboard bearbeiten und wählen die Option „Beginne mit leeren Dashboard“

In unserem jetzt Leeren Dashboard erstellen wir uns genau eine Karte mit dem Typ „Landkarte“
Titel und Seitenverhältnis lassen wir leer und im Feld Stunden tragen wir die gewünschte Zeit ein die wir die Bewegung der „tracking_device“ oder „Personen“ rückwirkend visualisiert haben wollen. In meinem Fall sind es 24 Stunden. Als Entitäten wählen wir die „Personen“ oder „tracking_devices“ aus. Je nach Geschmack kann man sich auch noch die Zonen mit Anzeigen lassen.

Beispiel: Tracking von Florian

Code zur Karte

type: map
entities:
  - entity: person.EUREPERSON
  - entity: zone.EUREZONE
dark_mode: true
default_zoom: 15
hours_to_show: 24

RAW des Dashboards

views:
  - theme: Backend-selected
    title: Home
    type: panel
    badges: []
    cards:
      - type: map
        entities:
          - entity: person.EUREPERSON
          - entity: zone.EUREZONE
        dark_mode: true
        default_zoom: 15
        hours_to_show: 24

[HowTo] Tankstellen einbinden

  1. Man benötigt einen API-Key für Tankerkönig, den könnt ihr euch unter folgendem Link holen:

https://creativecommons.tankerkoenig.de/

  1. Integration in Home Assistant hinzufügen:
    1. Einstellungen
    2. Geräte & Dienste
    3. Integration hinzufügen (unten rechts)
    4. nach „Tankerkönig suchen“
  1. unter der configuration.yaml folgendes hinzufügen:
tankerkoenig:
  api_key: "..."
  fuel_types:
    - "diesel"
    - "e5"
    - "e10"

  # latitude, longitude und radius wird nicht benötigt, wenn man die Tankstellen direkt angibt
  # latitude: 52.340337
  # longitude: 13.404752
  # radius: 5
  scan_interval: 600
  stations:
    - d235d2f6-b2df-4a6d-a6d4-b6255c82a841 # TotalEnergies Blankenfelde
    - 40aa766d-6e93-4f55-b34e-444638389df1 # Sprint Mahlow-Glasow Alt-Glasow
    - 6e89cba4-91d0-4019-b6fe-fe3558af7025 # Aral Tankstelle Am Lückefeld

unter api_key, euren API Key eintragen, den ihr von Tankerkönig erhalten habt

Weitere Tankstellen finden

https://creativecommons.tankerkoenig.de/TankstellenFinder/index.html

Geolocation setzen, wo man nach Tankstellen suchen möchte:

Tankstelle anklicken

im Anschluss oben rechts auf Tankstelle übernehmen klicken, dann bekommt ihr die ID für die Tankstelle:

Tasmota in Homeassistant einbinden

Requirements

  • MQTT broker and the MQTT integration set up in Home Assistant.
  • Tasmota devices’ MQTT setting configured to communicate with the MQTT broker.
  • Tasmota devices flashed with version 9.2, or later (tasmota-lite.bin does not support this integration).
  • Tasmota devices configured for native discovery (SetOption19 0)

In meinem Fall:

  • Geräte – MQTT Broker, Tasmota
  • AdOn: Mosqito-Broker

Quellen:

https://www.home-assistant.io/integrations/tasmota

https://stevessmarthomeguide.com/using-tasmota-devices-with-home-assistant-and-mqtt/

[HowTo] Abfallkalender in Home Assistant

  1. unter HACS die Integration „Waste Collection Schedule“ installieren
  2. in der configuration.yaml folgendes hinzufügen:

Abfallkalender einbinden anhand einer .ics aus dem Netz

waste_collection_schedule:
  sources:
    - name: ics
      args:
        url: "https://www.sbazv.de/entsorgungstermine/klein.ics"
        # offset: OFFSET
        # method: METHOD
        params:
          city: Blankenfelde-Mahlow
          district: Blankenfelde
          street: Stormstr.
        # year_field: YEAR_FIELD
        # regex: REGEX
        # split_at: SPLIT_AT
        version: 2
        # verify_ssl: VERIFY_SSL
      customize:
        - type: Restmülltonnen
          alias: rest
          icon: mdi:trash-can
        - type: Gelbe Säcke
          alias: gelbersack
          icon: mdi:recycle
        - type: Papiertonnen
          alias: papier
          icon: mdi:trash-can
        - type: Weihnachtsbäume
          alias: baum
          icon: mdi:pine-tree
        - type: Laubsäcke
          alias: laub
          icon: mdi:leaf
  fetch_time: "04:00"
  day_switch_time: "10:00"

die einzelnen Sensoren für die unterschiedlichen Müllentsorgungen hinzufügen

sensor:

  - platform: waste_collection_schedule
    # source_index: SOURCE_INDEX
    name: AbfallRestmuell
    details_format: "upcoming"
    # count: COUNT
    # leadtime: LEADTIME
    value_template: "{{ value.daysTo }}"
    # date_template: DATE_TEMPLATE
    # add_days_to: ADD_DAYS_TO
    types:
      - rest

  - platform: waste_collection_schedule
    # source_index: SOURCE_INDEX
    name: AbfallGelberSack
    details_format: "upcoming"
    # count: COUNT
    # leadtime: LEADTIME
    value_template: "{{ value.daysTo }}"
    # date_template: DATE_TEMPLATE
    # add_days_to: ADD_DAYS_TO
    types:
      - gelbersack

  - platform: waste_collection_schedule
    # source_index: SOURCE_INDEX
    name: AbfallPapier
    details_format: "upcoming"
    # count: COUNT
    # leadtime: LEADTIME
    value_template: "{{ value.daysTo }}"
    # date_template: DATE_TEMPLATE
    # add_days_to: ADD_DAYS_TO
    types:
      - papier

  - platform: waste_collection_schedule
    # source_index: SOURCE_INDEX
    name: AbfallWeihnachtsbaum
    details_format: "upcoming"
    # count: COUNT
    # leadtime: LEADTIME
    value_template: "{{ value.daysTo }}"
    # date_template: DATE_TEMPLATE
    # add_days_to: ADD_DAYS_TO
    types:
      - baum

  - platform: waste_collection_schedule
    # source_index: SOURCE_INDEX
    name: AbfallLaubSack
    details_format: "upcoming"
    # count: COUNT
    # leadtime: LEADTIME
    value_template: "{{ value.daysTo }}"
    # date_template: DATE_TEMPLATE
    # add_days_to: ADD_DAYS_TO
    types:
      - laub

Wenn man noch Tage dahinter stehen haben möchte

homeassistant:
  customize:
    sensor.abfallrestmuell:
      unit_of_measurement: "Tage"
    sensor.abfallgelbersack:
      unit_of_measurement: "Tage"
    sensor.abfallpapier:
      unit_of_measurement: "Tage"
    sensor.abfallweihnachtsbaum:
      unit_of_measurement: "Tage"
    sensor.abfalllaubsack:
      unit_of_measurement: "Tage"

[HowTo]: Home Assistant Core

Vorbereiten und Abhängigkeiten Installieren

sudo apt-get update
sudo apt-get upgrade -y


sudo apt-get install -y python3 python3-dev python3-venv python3-pip bluez libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff5 libturbojpeg0-dev tzdata

System User Anlegen

sudo useradd -rm homeassistant

oder mit

sudo adduser --system homeassistant
sudo addgroup homeassistant


Verzeichnisse Anlegen und Berechtigungen erteilen

sudo mkdir /srv/homeassistant
sudo chown homeassistant:homeassistant /srv/homeassistant



Wechseln auf den User homeassistant und die Installation ausführen

sudo -u homeassistant -H -s
cd /srv/homeassistant
python3 -m venv /srv/homeassistant
source bin/activate


[HINWEIS]: Nach dem Aktivieren des virtual environment sieht der Terminal Prompt nun etwa so aus
(homeassistant) homeassistant@raspberrypi:/srv/homeassistant $)

python3 -m pip install wheel
pip3 install homeassistant


Die Installation ist ab diesem Punkt abgeschlossen und wir könnten den HomeAssistant nun mit der Eingabe von hass starten.

HomeAssistant ist dann unter http://ServerIP:8123 erreichbar

[HINWEIS]: Wenn man wie oben den HomeAssistant gestartet hat, erscheint der Hinweis das keine Config gefunden wurde und eine angelegt wird. Dies geschieht dann im HomeVerzeichnis des Users homeassistant! /home/homeassistant/.homeassistant

Sollte man nun voreilig schon die ersten Gehversuche gewagt haben oder sogar schon einiges Eingerichtet haben kann auf einen Extra Config Ordner verzichtet werden und der Service wie folgt anlegt / eingerichtet werden.

Als erstes wechselt ihr auf euren Benutzer (nicht den HomeAssistant)

wechselt in das Verzeichnis /etc/systemd/system und legt dort die Datei homeassistant.service an.

sudo nano /etc/systemd/system/homeassistant.service


Description=Home Assistant
After=network.target mosquitto.service

[Service]
Type=simple
User=homeassistant
ExecStart=/srv/homeassistant/bin/hass -c /home/homeassistant/.homeassistant --log-file /home/homeassistant/hass.log

[Install]
WantedBy=multi-user.target


Nun wird systemd durch und aktvieren unseren homeassistant.service

sudo systemctl --system daemon-reload
sudo systemctl enable homeassistant
sudo systemctl start homeassistant


Wenn homeassistant nicht starten sollte kann das mittels Log überprüft werden.

sudo systemctl status homeassistant





[Quellen]:

https://wiki.instar.com/de/Software/Linux/Home_Assistant/
https://www.home-assistant.io/installation/linux#install-home-assistant-core