Smart Garage – Custom Integration für impulsgesteuerte Garagentore

Hallo zusammen! :waving_hand:

Ich möchte euch meine Custom Integration Smart Garage vorstellen, die ich für mein eigenes Garagentor entwickelt habe. Vielleicht hat ja jemand von euch das gleiche Problem.

Das Problem

Mein Garagentorantrieb ist ein klassisches Impulstor – ein Relaisimpuls und das Tor durchläuft den Zyklus Auf → Stop → Zu → Stop → Auf. Es gibt keinen separaten „Öffnen"- oder „Schließen"-Befehl. Das macht die Steuerung über Home Assistant erstmal knifflig: man muss immer wissen, wo das Tor gerade steht, und die Impulse mitzählen.

Zusätzlich wollte ich, dass mein Garagentor bei hoher Luftfeuchtigkeit automatisch einen Lüftungsspalt öffnet – und bei Regen wieder zumacht.

Die Lösung

Smart Garage nutzt eine impulszählende State Machine, die den Torzustand exakt nachverfolgt:

  • Zählt jeden Impuls ab dem letzten bestätigten Endschalter-Punkt
  • Überlebt HA-Neustarts (RestoreEntity)
  • Erkennt physische Tasterbetätigung
  • Berechnet die Position live während der Fahrt
  • Serialisiert Befehle, damit schnelles Klicken (Auf→Stop→Auf) nie Impulse durcheinanderbringt

Features

Torsteuerung

  • Cover-Entity mit Öffnen, Schließen, Stop und Position setzen
  • Live-Positionsberechnung während der Fahrt
  • Richtungswechsel funktioniert korrekt (3-Impuls-Umkehr)

Lüftungssteuerung (optional)

  • Berechnet die absolute Luftfeuchtigkeit aus Temperatur + Feuchte (innen/außen)
  • Öffnet automatisch einen kleinen Spalt, wenn die Innenluft deutlich feuchter ist als außen
  • Berücksichtigt Anwesenheit, Tageslicht und Regen
  • Manueller Lüftungsschalter für direkte Steuerung

Regen-Automatik (optional)

  • Schließt das Tor automatisch bei Regen
  • Konfigurierbare Verzögerung (damit ein gerade erst geöffnetes Tor nicht sofort wieder zugeht)

Sicherheit

  • Erkennt versehentliches Öffnen während der Lüftungsstellung
  • Warnung wenn der Schaltaktor nicht erreichbar ist

Diagnose

  • Impulszähler-Sensor (setzt sich bei Endschalter-Bestätigung auf 0 zurück)
  • Spiegel-Sensoren für Endschalter, Erschütterungssensor, Schaltaktor
  • Diagnosedaten zum Herunterladen über die Geräteseite

Hardware

Entwickelt für Homematic IP, funktioniert aber mit jedem Impulstor:

Gerät Funktion
HmIP-PCBS Schaltaktor (Relais)
HmIP-FCI6 Kontaktinterface (ch1 = Endschalter unten, ch2 = oben)
HmIP-STV Neigungssensor (Erschütterung/Bewegung)

Grundsätzlich reicht jede HA-Switch- oder Button-Entity, die euren Garagentorantrieb schaltet.

Was braucht man mindestens?

Komponente Nötig?
Switch/Button für den Antrieb :white_check_mark: Ja
Endschalter (unten/oben) Empfohlen
Erschütterungssensor Optional
Temp + Feuchte Sensoren Optional (für Lüftung)
Regensensor Optional (für Regen-Automatik)

Die Integration passt sich an: ohne Klimasensoren → keine Lüftung. Ohne Regensensor → keine Regen-Automatik. Funktioniert auch nur mit einem Steuerungsschalter.

Installation

Über HACS:

In HACS öffnen

Oder manuell: HACS → Integrationen → ⋮ → Benutzerdefinierte Repositories → https://github.com/thokoh74-DE/smart-garage als Integration hinzufügen.

Einrichtung

5-Schritte-Assistent mit Erklärungstexten bei jedem Feld – man muss die Doku nicht parallel offen haben. Nach der Einrichtung gibt es einen Menü-basierten Options-Flow mit 4 unabhängigen Bereichen.

Alle Einstellungen sind zweisprachig (Deutsch + Englisch), die Anzeige folgt eurer HA-Spracheinstellung.

Wie die Lüftung funktioniert

Kurz erklärt: Relative Luftfeuchtigkeit sagt wenig aus, weil warme Luft mehr Feuchtigkeit halten kann. Deshalb berechnet die Integration die absolute Feuchte (g/m³) – die tatsächliche Wassermenge pro Kubikmeter.

Beispiel: Garage 22°C / 65% = 12,6 g/m³. Draußen 18°C / 72% = 11,3 g/m³. Obwohl draußen die Prozentzahl höher ist, enthält die Außenluft weniger Wasser. Lüften hilft also.

Das Tor öffnet nur, wenn:

  • Die AH-Differenz groß genug ist (konfigurierbar, Standard 5 g/m³)
  • Jemand zuhause ist
  • Sonne aufgegangen ist
  • Es nicht regnet

Links

Tipp für Homematic-IP-Nutzer

Falls euer Aktor Impulse verschluckt: die Impulspause in den Grundeinstellungen auf 1,5–2,0 Sekunden erhöhen. HmIP-Geräte brauchen zwischen Funk-Befehlen etwas mehr Zeit als andere Hardware.


Bin gespannt auf Feedback! Falls jemand ein ähnliches Setup hat oder Verbesserungsvorschläge – gerne her damit, entweder hier oder als Issue auf GitHub. :slightly_smiling_face:

1 „Gefällt mir“