HomeKit Garagentor- und Drehtoröffner EPS8266 Arduino - Hörmann / Sommer Antriebe
37 Kommentare
In diesem Blogbeitrag geht es um ein HomeKit Garagentoröffner, gebaut mit einem Wemos D1 mini, Wemos D1 mini pro oder auch jedem anderen ESP8266. Sicher kann man sich solche Sachen einfach kaufen, aber das macht ja kein Spaß. Deswegen möchte ich euch an diesem Projekt teilhaben lassen.
Ziel ist es den ESP8266 mit dem HomeKit zu verbinden und steuern zu können. Das hört sich erst mal sehr kompliziert an, ist es aber nicht. Den es haben sich schon andere über das HomeKit Thema Gedanken gemacht. Aus diesem Grund gibt es hier schon fertige Librarys die wir hier nutzen können.
Der Aufbau
Wie können wir den ESP8266 dazu bringen das Garagentor zu öffnen und zu schließen? Hier haben die Hersteller der Antriebe, in dem Fall Hörmann und Sommer, ein Anschluss auf Ihren Platinen für externe Funksender (Hörmann) oder Schlüsseltaster (Sommer). Diesen können wir für unseren ESP8266 benutzen. (Sicher gibt es das auch für andere Antriebshersteller, habe ich aber nur für die beiden rausgesucht.)
Bei Welchem Antrieb welche Klemme benutzt werden kann, könnt Ihr in der List nachsehen.
Die Klemmenbezeichnung auf dern Platinen stimmen mit dem aktuellen Modellen überein, bei älteren Modellen kann es zu Abweichungen kommen. Daher bitte in die Liste gucken oder selber recherchieren. Ich habe die Angaben aus den Handbücher rausgesucht, übernehme aber keine Haftung dafür.
Hörmann
Sommer
Liste Hörmann Antriebe
Prinzipiell kann man sagen überall wo die Externen Funksender HE1, HE2, HE3, HEI1, HEI2 und HEI3 angeschlossen werden können, kann auch meine Platine angeschlossen werden.
Es gibt hier einmal die Version 1 mit den Bauteilen neben dem ESP8266 und die Version 2 mit den Bauteilen unter dem ESP8266.
Mit der Platine werden die entsprechenden Schalter via Optokoppler geschalten. Das hat den Vorteil das hier ein galvanische Trennung vorliegt. Sprich die beiden Stromkreise ESP8266 und der Schaltkontakt haben keine Verbindung. Sicher könnte man das auch über eine Transistorschaltung realisieren.
Version 1: 70,3mm x 50,3mm x 1,5mm Version 2: 48,2mm x 50,3mm x 1,5mm Stromverbrauch: ca. 40mA
Die 24 Volt von der Antriebssteuerung müss auf 5 Volt runtergeregelt werden. Dafür habe ich paar Bauteile rausgesucht, die dafür verwendet werdenkönnen.
Hier wird die Webansicht definiert und in der Datei handleHttp.ino ausgeführt.
server.on("/", handleRoot);
server.on("/reset", handleReset);
server.on("/reset_do", handleResetDo);
server.on("/wifi", handleWifi);
server.on("/wifisave", handleWifiSave);
server.on("/generate_204", handleRoot); //Android captive portal. Maybe not needed. Might be handled by notFound handler.
server.on("/fwlink", handleRoot); //Microsoft captive portal. Maybe not needed. Might be handled by notFound handler.
server.onNotFound(handleNotFound);
server.begin(); // Web server start
Definition der Schaltanweisung für das HomeKit.
// Diese Funktion wird aufgerufen, wenn der Schalter in HomeKit betätigt wird
void switch_S1_setter(const homekit_value_t value) {
digitalWrite(PIN_SWITCH_S1, HIGH);
delay(1000);
digitalWrite(PIN_SWITCH_S1, LOW);
}
void switch_S2_setter(const homekit_value_t value) {
digitalWrite(PIN_SWITCH_S2, HIGH);
delay(1000);
digitalWrite(PIN_SWITCH_S2, LOW);
}
void my_homekit_setup() {
pinMode(PIN_SWITCH_S1, OUTPUT);
digitalWrite(PIN_SWITCH_S1, LOW);
switch_S1.setter = switch_S1_setter;
pinMode(PIN_SWITCH_S2, OUTPUT);
digitalWrite(PIN_SWITCH_S2, LOW);
switch_S2.setter = switch_S2_setter;
arduino_homekit_setup(&config);
}
Datei my_accessory.c
Definition was im Homekit als Name für das Gerät angezeigt werden soll und was es ist. Zum Beispiel ein Schalter oder ein Sensor usw. Was es da für Möglichkeiten gibt findet Ihr in der Library.
Je nach Modell kann es sein das der Access Point nicht gleich startet, hier einfach das Modul nochmal aus und einstecken.
Update: vom 17.08.2021
Mit dem letzten IOS Update funktioniert das Garagenprogramm nicht mehr. Der Grund ist hier der lange Name in der my_accessory.c Datei "Garagentorteilöffnung" dieser muss gekürzt werden, dann geht es auch wieder. Scheinbar gibt es eine Begrenzung der Zeichen für die HomeKit Namen.
Hallo Johannes, leider ist das in der Anleitung nicht so ganz eindeutig aber ich würde denke die Hörmann Platine passt hier am besten. Angangen ohne Gewehr.
Gruß Tobias
Hallo! Super Projekt, vielen Dank! Ich habe die Tousek ST12/5 Daten hier http://download.tousek.at/downloads/DE/DE_04_ST-12-5.pdf und frage mich, welche Platine die Richtige sein könnte. Ich dachte die Hörmann, weil Impuls/Gehflügel den selben Gemeinsamen haben, oder? Würde ich über einen Tipp freuen. Danke!
Gut, danke. Dann steht die Bestellliste :-)
Hallo, ja eine 4MB Version reicht auch aus.
Ja, ist die gleiche Firma. Auch die HE3-Fernbedienung nutzen wir. Hat es einen bestimmten Grund, warum ein 16 MB Wemos genutzt wird? Hätte nämlich noch einen 4MB hier rumliegen ;-)
37 Kommentare
Hallo Johannes,
leider ist das in der Anleitung nicht so ganz eindeutig aber ich würde denke die Hörmann Platine passt hier am besten. Angangen ohne Gewehr.
Gruß
Tobias
Hallo!
Super Projekt, vielen Dank!
Ich habe die Tousek ST12/5
Daten hier http://download.tousek.at/downloads/DE/DE_04_ST-12-5.pdf und frage mich, welche Platine die Richtige sein könnte.
Ich dachte die Hörmann, weil Impuls/Gehflügel den selben Gemeinsamen haben, oder?
Würde ich über einen Tipp freuen.
Danke!
Gut, danke. Dann steht die Bestellliste :-)
Hallo,
ja eine 4MB Version reicht auch aus.
Ja, ist die gleiche Firma. Auch die HE3-Fernbedienung nutzen wir. Hat es einen bestimmten Grund, warum ein 16 MB Wemos genutzt wird? Hätte nämlich noch einen 4MB hier rumliegen ;-)