Hallo zusammen,
ich wollte euch mal ein Beispiel für die Verwendung von dem neuen Shelly Button1 in Homematic vorstellen, in Verbinung mit dem Shelly 2.5 als Rolloschalter.
Hintergrund:
Ich benutze die Htttp Request Shortcuts APP um die Rollos zubedienen und per Timer gehen sie rauf und runter, alles ohne Cloud.
Meine Frau benutzt den Finger auf jedem Taster/Schalter.
Nun ballert ja die Sonne so schön in die 9 Fenster rein.
Da meine Frau frühs durch Haus rennt (wenn Sonne ballern soll) um die Rollos auf ihre Höhe zu bringen, wollte ich das smarter machen. Mit Kleinkind auf dem Arm..naja muss ja nicht sein.
Also Button1 dein Auftritt.
Da ich zufaul bin die Shelly 2.5 in Homematic noch mal neu einzubinden, bzw. ich schon mal mit der Behanghoehe zu kämpfen hatte und mir die CCU dauert abgeschmiert ist, habe ich das sein gelassen.
Kein Shelly 2.5 als Rolloschalter in HomeMatic aktuell.
Sonst kann man da ja Beschattungsprogramme schreiben..neeeeee anderes Thema
Nachtrag: wenn keine 9 Rollos sondern weniger oder mehr gebraucht werden, dann muss im Skript natürlich gekürzt oder verlängert werden. Ich Überlege noch das im Setup zu hinterlegen.
Auswahl: Anzahl Rollos
und Skript steuert dann nur diese an.(Zukunft)
Also was soll der Button1 können.
Alle Rollos als Gruppe bedienen und auf eine vordefinierte Behanghoehe fahren.
Button1 Belegung (Actions) (IP Adresse natürlich anpassen):
- S short = open
- L long = stop
- SS short short = close
- SSS short short short = individuelle Behanghoehe für jedes Rollo
Was brauchen wir in HomeMatic:
- 1x Programm mit der SV als Auslöser
- 1. Skript
! Skript Shelly 2.5 Fahrbefehle Befehl: "stop" als Gruppe senden
! Skript hat neo-v geschrieben mit vereinfachten Setup, Danke an @66er Stefan !
! Setup beginnt ab hier #############################################
! IpAdresse anpassen:
var url1 = "http://192.168.178.201"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url2 = "http://192.168.178.202"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url3 = "http://192.168.178.203"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url4 = "http://192.168.178.204"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url5 = "http://192.168.178.205"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url6 = "http://192.168.178.206"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url7 = "http://192.168.178.207"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url8 = "http://192.168.178.208"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
var url9 = "http://192.168.178.209"; !IP-Adresse anpassen, ggf User und PW davorsetzen user:PW@
! CUxD-Exec anpassen
var cux1 = "CUxD.CUX2801001:1"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux2 = "CUxD.CUX2801001:2"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux3 = "CUxD.CUX2801001:3"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux4 = "CUxD.CUX2801001:4"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux5 = "CUxD.CUX2801001:5"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux6 = "CUxD.CUX2801001:6"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux7 = "CUxD.CUX2801001:7"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux8 = "CUxD.CUX2801001:8"; ! CUxD-exec Gerät anpassen und auch Kanal
var cux9 = "CUxD.CUX2801001:9"; ! CUxD-exec Gerät anpassen und auch Kanal
! # Ende Setup #####################################################
! # ab hier nichts mehr ändern!#####################################
! ##################################################################
! Fahrbefehl ####################
var bef = "stop"; ! Zur Verfügnung stehen: stop / open / close
! ################################################################
! Befehl 1
string urla="'"#url1#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux1#".CMD_EXEC").State("wget -q -O - "#urla);
! ################################################################
! Befehl 2
string urlb="'"#url2#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux2#".CMD_EXEC").State("wget -q -O - "#urlb);
! ################################################################
! Befehl 3
string urlc="'"#url3#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux3#".CMD_EXEC").State("wget -q -O - "#urlc);
! ################################################################
! Befehl 4
string urld="'"#url4#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux4#".CMD_EXEC").State("wget -q -O - "#urld);
! ################################################################
! Befehl 5
string urle="'"#url5#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux5#".CMD_EXEC").State("wget -q -O - "#urle);
! ################################################################
! Befehl 6
string urlf="'"#url6#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux6#".CMD_EXEC").State("wget -q -O - "#urlf);
! ################################################################
! Befehl 7
string urlg="'"#url7#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux7#".CMD_EXEC").State("wget -q -O - "#urlg);
! ################################################################
! Befehl 8
string urlh="'"#url8#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux8#".CMD_EXEC").State("wget -q -O - "#urlh);
! ################################################################
! Befehl 9
string urli="'"#url9#"/roller/0?go="#bef#"'";
dom.GetObject(""#cux9#".CMD_EXEC").State("wget -q -O - "#urli);
!WriteLine("Skript ist durchgelaufen, Prima.");
Alles anzeigen
2. Skript
- 1x CUxD Gerät wo wir uns die Variable anzeigen lassen können, Welcher Befehl gesendet wurde (muss aber nicht)
Button Rollo Übersicht Ansicht.PNG
- 1x SV als Werteliste ( Werte können umbenannt werden, aber Reihenfolge beachten!!! )
Button Rollo SV Werteliste.PNG
Das wars. "mehr" braucht man nicht.
So nun viel Erfolg und bitte gebt Rückmeldung wenn es läuft :-). Danke
Die Anleitung inkl. der Skripte und Bilder unterliegt dem Urheberrecht. Wer gegen das Urheberrecht verstößt (z.B. Bilder oder Texte unerlaubt kopiert und auf anderen Webseiten publiziert), macht sich gem. §§ 106 ff UrhG strafbar, kann zudem kostenpflichtig abgemahnt werden und muss Schadensersatz leisten (§ 97 UrhG).