Mein Smart Home denkt jetzt mit – dank KI in Home Assistant 🤖

Es gibt Updates, die verändern Kleinigkeiten. Und dann gibt es Updates, die verändern alles.
Mit Home Assistant ist genau das passiert. Seit dem neuen Release ist eine native KI-Aktion eingebaut – kein HACS, kein GitHub-Gefrickel, keine Add-ons. Einfach da. Direkt. Und bereit, mein Zuhause auf ein ganz neues Level zu bringen.

Ich war sofort neugierig: Was passiert, wenn mein Smart Home nicht mehr nur Regeln befolgt, sondern wirklich versteht, was vor sich geht? :fire:

Also habe ich drei Beispiele ausprobiert, die zeigen, wie genial diese KI-Aktion ist.


:red_car: Beispiel 1: Mein Garagentor versteht mich

Bisher war es immer ein Balanceakt: Bewegungsmelder, Schalter oder App – und doch öffnete sich das Tor manchmal im falschen Moment. Mit der KI ist das anders.
Ich lasse meine Kamera das Kennzeichen analysieren. Erkennt sie mein Auto, öffnet sich die Garage automatisch. Keine Fehler, keine Zufälle. Es fühlt sich an, als würde das Tor sagen: „Willkommen daheim.“
Kennzeichenerkennung

alias: TEST Garagentor öffnen bei Zufahrt und Kennzeichen
description: >-
  Öffnet das Garagentor nur, wenn ein Fahrzeug aktiv auf die Einfahrt zufährt
  und dein Kennzeichen erkannt wird
triggers:
  - entity_id:
      - binary_sensor.kamera_hof_fahrzeug
    to: "on"
    trigger: state
conditions: []
actions:
  - alias: Fahrzeugrichtung analysieren
    data:
      task_name: Fahrzeugrichtung erkennen
      instructions: >-
        Analysiere das Kamerabild. Ist ein Fahrzeug zu sehen? Falls ja, fährt es
        auf die Einfahrt zu ("approaching driveway"), fährt es nur vorbei
        ("driving past") oder steht es ("stationary")? Antworte nur mit einem
        dieser drei Begriffe.
      structure:
        movement:
          selector:
            text: null
      attachments:
        media_content_id: media-source://camera/camera.kamera_hof_klar
        media_content_type: image/jpeg
      entity_id: ai_task.openai_ai_task
    response_variable: richtung
    action: ai_task.generate_data
  - alias: Nur fortfahren, wenn Fahrzeug zufährt
    if:
      - condition: template
        value_template: "{{ richtung.data.movement == 'approaching driveway' }}"
    then:
      - alias: Kennzeichen prĂĽfen
        data:
          task_name: Nummernschild erkennen
          instructions: >-
            Erkennst du das Kennzeichen "RA-EE2010" auf dem Bild? Antworte nur
            mit true oder false.
          structure:
            recognized:
              selector:
                boolean: null
          attachments:
            media_content_id: media-source://camera/camera.kamera_hof_klar
            media_content_type: image/jpeg
          entity_id: ai_task.openai_ai_task
        response_variable: nummernschild_erkannt
        action: ai_task.generate_data
      - alias: Nur fortfahren, wenn Kennzeichen erkannt
        if:
          - condition: template
            value_template: "{{ nummernschild_erkannt.data.recognized == true }}"
        then:
          - alias: Garagentor öffnen
            action: cover.open_cover
            data: {}
            enabled: true
            target:
              entity_id: cover.garagentorgateway_garage_door
          - type: turn_on
            device_id: cb61f82bae52f5f01f8fdb7323a7f9ee
            entity_id: 49b9e0a6dd1bca1c69af9043b5003f73
            domain: light
            enabled: true
mode: single

:cat: Beispiel 2: Katzendetektor auf dem Balkon

Jede*r kennt es: Die Nachbarskatze schleicht über die Terrasse, macht es sich gemütlich – oder manchmal auch ein bisschen zu gemütlich. :roll_eyes:
Mit der KI-Aktion lasse ich die Kamera prĂĽfen: Ist eine Katze im Bild?

  • Ja → Benachrichtigung aufs Handy
  • Nein → Alles bleibt ruhig.
    Das Beste: Keine Fehlalarme mehr durch Blätter oder Schatten. Endlich reagiert mein Smart Home auf das, was wirklich da ist.
alias: TEST Katze auf Terrasse erkannt – sofortige Nachricht
description: Katze im Bild und Benachrichtigung
triggers:
  - type: turned_on
    device_id: db43eadbbf2f9ec084eb5591f4615923
    entity_id: fd426508dc2192dcc582209a3efb546a
    domain: binary_sensor
    trigger: device
actions:
  - action: ai_task.generate_data
    data:
      task_name: Katze im Bild erkennen
      instructions: >
        Schau dir das Kamerabild an und bestimme, ob eine Hauskatze sichtbar
        ist.

        Gib 1 aus, wenn eindeutig eine Katze zu sehen ist, andernfalls 0.

        Verwende fĂĽr das Ergebnis den SchlĂĽssel 'cat_present'
      structure:
        cat_present:
          selector:
            number: null
      attachments:
        media_content_id: media-source://camera/camera.kamera_terrasse_hochauflosung
        media_content_type: image/jpeg
      entity_id: ai_task.openai_ai_task
    response_variable: result
  - variables:
      cat_present: "{{ result.data.cat_present | int(0) }}"
  - choose:
      - conditions:
          - condition: template
            value_template: "{{ cat_present == 1 }}"
        sequence:
          - action: notify.mobile_app_ugurs_iphone_neu
            metadata: {}
            data:
              message: >-
                Eine Katze wurde auf der Terrasse erkannt um {{
                now().strftime('%d.%m.%Y %H:%M') }}.
              title: Katze auf der Terrasse
mode: single

:seedling: Beispiel 3: Rasenhöhe statt starrer Mähpläne

Mein Mähroboter fuhr früher streng nach Zeitplan. Egal, ob das Gras hoch stand oder kaum gewachsen war. Mit der neuen KI frage ich meine Kamera:
„Schätze die Höhe des Grases in Zentimetern.“
Liegt der Wert über meinem Schwellenwert, startet der Mäher. Wenn nicht, bleibt er geparkt. Ergebnis: leiser, effizienter und einfach smarter.

alias: TEST Rasen prüfen & mähen (täglich 13:00)
description: >-
  Schau im Kamarabild des Gartens ob der Rasen ĂĽber 6cm ist. Wenn ja starte den
  Mähroboter
triggers:
  - trigger: time
    at: "13:00:00"
actions:
  - action: ai_task.generate_data
    data:
      task_name: Rasenhöhe schätzen
      instructions: >-
        Das ist mein Rasen. Schätze die durchschnittliche Grashöhe in
        Zentimetern.

        BerĂĽcksichtige nur den sichtbaren Bereich. Wenn das Gras nicht klar
        erkennbar ist (z. B. Dunkelheit, Schnee, starke Verdekkung), gib 0
        zurĂĽck.

        Gib eine einzelne Zahl unter 'grass_cm' aus.
      structure:
        grass_cm:
          selector:
            number: null
      attachments:
        media_content_id: media-source://camera/camera.garten_hochauflosung
        media_content_type: image/jpeg
      entity_id: ai_task.openai_ai_task
    response_variable: result
  - variables:
      grass_cm: "{{ result.data.grass_cm | float(0) | round(1) }}"
  - choose:
      - conditions:
          - condition: template
            value_template: "{{ grass_cm > 6 }}"
        sequence:
          - target:
              entity_id: lawn_mower.a2
            action: lawn_mower.start_mowing
            data: {}
    default: []
mode: single

:bulb: Fazit: Von Regeln zu Verständnis

Mit dieser KI-Aktion in Home Assistant fĂĽhlt sich mein Zuhause zum ersten Mal so an, als wĂĽrde es mitdenken.
Keine starren Skripte mehr, sondern echte Intelligenz: Garage, Balkon, Garten – alles reagiert auf die Realität.

Und weißt du was? Das hier war nur der Anfang. Die Möglichkeiten sind grenzenlos – und genau das macht mich so neugierig.

:movie_camera: Wenn du sehen willst, wie ich das Ganze Schritt für Schritt umgesetzt habe: Schau dir unbedingt das Video an. Es ist nicht nur eine Demo – es ist ein kleiner Blick in die Zukunft des Smart Homes.

Hier ist der Blogbeitrag: https://smartzeug.com/home-assistant/home-assistant-anleitung/die-zukunft-meines-smart-homes-wie-home-assistant-mit-ki-alles-veraendert-🚀/

4 „Gefällt mir“

:thinking:
und wo läuft die KI? wer bekommt die Videos aus Deinem zuhause zu sehen? Wer weiß, wann Dein Auto (und Du) nicht zuhause ist?

wenn die Antwort „eine extern gehostete KI“ lautet, dann läuft das für mich dem initialen Credo von Home Assistant zuwider: Mein Haus, meine Daten - alles lokal!
:pensive:

3 „Gefällt mir“

Ich muss sagen, bei mir funktioniert das sehr gut mit den Position meines Handys. Dann kann auch niemand mit einem Fake Nummernschild mein Tor öffnen. Hinzukommt dass ich mich eine actionable notification sende, mit welcher ich easy das Tor geschlossen halten kann. Diese funktioniert unter Android Auto. Brauche mein Handy also nicht rausnehmen. 2 Klicks und das Tor bleibt zu.

Hab mein Weg jetzt auch von youtube hier her gefunden. Wie bereits unter dem Video auf YT gesagt will die Automation nicht bei mir.

alias: TEST Garagentor öffnen bei Zufahrt und Kennzeichen
description: >-
  Öffnet das Garagentor nur, wenn ein Fahrzeug aktiv auf die Einfahrt zufährt
  und dein Kennzeichen erkannt wird
triggers:
  - entity_id:
      - binary_sensor.garage_fahrzeug
    to: "on"
    trigger: state
conditions: []
actions:
  - alias: Fahrzeugrichtung analysieren
    data:
      task_name: Fahrzeugrichtung erkennen
      instructions: >-
        Analysiere das Kamerabild. Ist ein Fahrzeug zu sehen? Falls ja, fährt es
        auf die Einfahrt zu ("approaching driveway"), fährt es nur vorbei
        ("driving past") oder steht es ("stationary")? Antworte nur mit einem
        dieser drei Begriffe.
      structure:
        movement:
          selector:
            text: null
      attachments:
        media_content_id: media-source://camera/camera.garage_hochauflosung
        media_content_type: application/vnd.apple.mpegurl
        metadata:
          title: Garage Hochauflösung
          thumbnail: /api/camera_proxy/camera.garage_hochauflosung
          media_class: video
          children_media_class: null
          navigateIds:
            - {}
            - media_content_type: app
              media_content_id: media-source://camera
      entity_id: ai_task.openai_ai_task
    response_variable: richtung
    action: ai_task.generate_data
  - alias: Nur fortfahren, wenn Fahrzeug zufährt
    if:
      - condition: template
        value_template: "{{ richtung.data.movement == 'approaching driveway' }}"
    then:
      - alias: Kennzeichen prĂĽfen
        data:
          task_name: Nummernschild erkennen
          instructions: >-
            Erkennst du das Kennzeichen "XX-XX123" auf dem Bild? Antworte nur
            mit true oder false.
          structure:
            recognized:
              selector:
                boolean: null
          attachments:
            media_content_id: media-source://camera/camera.garage_hochauflosung
            media_content_type: image/jpeg
          entity_id: ai_task.openai_ai_task
        response_variable: nummernschild_erkannt
        action: ai_task.generate_data
      - alias: Nur fortfahren, wenn Kennzeichen erkannt
        if:
          - condition: template
            value_template: "{{ nummernschild_erkannt.data.recognized == true }}"
        then:
          - action: switch.toggle
            metadata: {}
            data: {}
            target:
              entity_id: switch.garage_neu
mode: single

So wie es aussieht liegt es an Schritt 3: Nur fortfahren, wenn Fahrzeug zufährt. Vielleicht brauche ich da eine andere Variabel, kenne mich da aber leider nicht aus.

Edit: hab noch ein wenig getestet. Mit binary_sensor.garage_bewegung statt binary_sensor.garage_fahrzeug hat es 2 mal bei 10 versuchen funktioniert :confounded:

Bei mir funktioniert es ebenfalls nicht. Ich habe den Code von Ugur übernommen und OpenRouter so eingerichtet, wie er es beschrieben hat, bekomme dann beim testweise Ausführen der Automation schon ganz oben die Fehlermitteilung „ Fehler: Insufficient funds for OpenAI“. Ich möchte aber keine kostenpflichtige AI-Schnittstelle nutzen, da ich das ohnehin viel zu selten brauche. Ich habe dann noch eine andere Variante mit google versucht, bei der aber der Fehler „ Fehler: AI Task entity ai_task.google_gemma_3_27b_free does not support attachments“ ausgegeben wird. Dasselbe passiert auch mit weiteren AI-Varianten. Ich verstehe nicht, woran es liegt, dass OpenRouter bei mir nicht funktioniert.

Moin, wenn du sowieso auf eine kostenlose AI setzen möchtest, dann verwende doch einfach google generative AI. Dann erstellst du dir auf der google-site einen Api-Key, dass geht sehr leicht, hinterlegst ihn in HA und schon läuft das ganze.

1 „Gefällt mir“

Okay, super. Dann werde ich das mal versuchen. Danke fĂĽr den Tipp

Nette Ideen! …aber eine Frage zu 1)
Wenn sich nun jemand mit (d)einem gefakten Kennzeichen (Pappschild oder professionell, ohne Siegel, nachgemacht) vor deine Garage stellt; geht dann das Tor auf und derjenige kann deine Garage ausräumen?

Ich denke er hat es nur als zusätzliche Bedingung eingebaut.

DafĂĽr gibt es die Bedingung hier:

Analysiere das Kamerabild. Ist ein Fahrzeug zu sehen? Falls ja, fährt es
        auf die Einfahrt zu ("approaching driveway"), fährt es nur vorbei
        ("driving past") oder steht es ("stationary")? Antworte nur mit einem
        dieser drei Begriffe.

Wenn dann muss man schon ein gefaktes Kennzeichen an ein Auto schrauben und dann vorfahren und dann kommt es noch drauf an ob die KI erkennt ob es gefakt ist.

Ich wĂĽrde mindestens noch eine Bedingung einbauen, dass ich mich in der Home Zone befinden muss.

4 „Gefällt mir“

Ich meinte ja auch nur mal so… :wink:

1 „Gefällt mir“