Anbindung Loxone/Homematic IP

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Annii_*
Beiträge: 6
Registriert: 14.02.2024, 13:00
System: CCU
Hat sich bedankt: 2 Mal

Anbindung Loxone/Homematic IP

Beitrag von Annii_* » 14.02.2024, 14:27

Hallo zusammen,

wir haben in unserem Neubau Loxone verbaut.
Da die Wassermelder von Loxone mehr wie bescheiden sind (#Einwegprodukt), haben wir uns für Wassermelder inkl. CCU3 von HomeMatic entschieden.
Ich habe die Wassermelder an die CCU3 eingelernt und sie sind im WebUi sichtbar.

Nun habe ich versucht die einzelnen Komponenten in Loxone zu integrieren und bin leider gescheitert :D .

Vorgehensweise:
Im LoxWiki gibt es einen Betrag zur Vorgehensweise.

1) Installation der AddOns CUx-Daemon und XML-Api
2) Konfiguration CUx-Daemon: Gerät anlegen - (28) System und Funktion Exec - Gerät auf CCU erzeugen - Gerät auf CCU "anlernen" (Gerätename: CUX28xxxxx)
3) Virtueller Eingang anlegen und als Digitaleingang konfigurieren (VI2)
4) HomeMatic Zentrale - Programme und Verknüpfungen - Programme und Zentralenverknüpfungen - NEU habe ich folgendes Programm angelegt:
WENN: Geräteauswahl -- Wassermelder bei Feuchtigkeit oder Wasserstand erkannt: Ja -- bei Änderung auslösen
DANN: Skript --
string url="http://LoxoneUser:LoxonePassword@192.16 ... io/VI2/Ein";
dom.GetObject("CUxD.CUX28xxxxx:1.CMD_EXEC").State( "wget -q -O - '"#url#"'");
SONST: Skript --
string url="http://LoxoneUser:LoxonePassword@192.16 ... io/VI2/Aus";
dom.GetObject("CUxD.CUX28xxxxx:1.CMD_EXEC").State( "wget -q -O - '"#url#"'");

Diese Skripte sind auch aus dem LoxWiki - meine Programmierkenntnisse sind zwar teilweise vorhanden und ich verstehe so generell was dieses Skript auslösen soll, aber nicht 100%ig.

Ich habe den Wassermelder dann mit Wasser ausgelöst, Alarmsignal ist ausgelöst worden. In der Loxone hat sich allerdings genau nichts geändert.
Ich habe dann hier im Forum einen Beitrag gefunden, der sich mit dem Thema Boolean und Loxone beschäftigt und folgendes Skript für mich umgeschrieben/verwendet:
--> Die Wassermelder geben ja den Value "false" und nicht "0" wie beispielsweise ein Rauchmelder (den wir auch verbaut haben) aus. --> Beim Rauchmelder bekomme ich zumindest im Liveview einen "gelben Balken" der ja ein Signal darstellt und ich rufe hier parallel auch über einen HTTP-Eingang nochmal den Wert ab (kann ich beim Wassermelder aber ja nicht, weil der HTTP ja nur Werte ausgeben kann und nicht "true" oder "false").

var source = dom.GetObject("HmIP-RF.0018A0C996xxxx:1.MOISTURE_DETECTED").Value();
if (source== "true") {real value = 1;} else {real value = 0;};
integer variable = dom.GetObject("HmIP-RF.0018A0C996xxxx:1.MOISTURE_DETECTED");
variable.State(source);
string url="http://LoxoneUser.LoxonePassword@192.16 ... ps/io/VI2/" #value;
dom.GetObject("CUxD.CUX28xxxxx:1.CMD_EXEC").State( "wget -q -O - '"#url#"'");

Quelle:
viewtopic.php?t=27808

Allerdings verstehe ich dieses Skript noch viel weniger und es tut sich wieder rein gar nichts in der Loxone.

Zusatzfrage: Warum verwendet der Threatersteller BidCos-RF-Objekte und keine HmIP-RF? Funktioniert das mit HomeMatic IP gar nicht mehr? (Fragestellung war ja 2015). Brauche ich RasperryMatic?

Fragen über Fragen und ich weiß nicht mehr weiter :D.

Vielen Dank vorab für eure Hilfe und Unterstützung.

Liebe Grüße,
Anna

Benutzeravatar
Baxxy
Beiträge: 10982
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 624 Mal
Danksagung erhalten: 2271 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Baxxy » 14.02.2024, 18:28

Annii_* hat geschrieben:
14.02.2024, 14:27
Warum verwendet der Threatersteller BidCos-RF-Objekte und keine HmIP-RF?
Vermutlich weil es 2015 noch kein HmIP gab. :wink:
Annii_* hat geschrieben:
14.02.2024, 14:27
Brauche ich RasperryMatic?
Nein, die CCU kann das auch.

Das XML-API AddOn ist für den Weg Loxone --> CCU
Die andere Richtung, CCU --> Loxone geht dann über CUxD, heutzutage käme man aber auch ohne CUxD aus.

Generell solltest du erstmal die URL's in den Browser eingeben/testen und gucken ob dein Loxone das korrekt empfängt.

Code: Alles auswählen

http://LoxoneUser:LoxonePassword@192.168.xxx.xx/dev/sps/io/VI2/Ein

Annii_*
Beiträge: 6
Registriert: 14.02.2024, 13:00
System: CCU
Hat sich bedankt: 2 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Annii_* » 14.02.2024, 19:55

Was sollte denn kommen? :D

<LL control="dev/sps/io/VI2/Ein" value="0" Code="200"/>

In der Loxone selbst passiert nichts.

Liebe Grüße,
Anna

Benutzeravatar
Baxxy
Beiträge: 10982
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 624 Mal
Danksagung erhalten: 2271 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Baxxy » 14.02.2024, 21:23

Gute Frage, ich nutze das (Loxone) nicht.

Vielleicht fragst du mal im Loxone-Forum nach wie die Befehle konkret auszusehen haben.
Hat man ein funktionierendes Beispiel kann man dir dann hier helfen das auf Homematic-Seite zu implementieren.

Annii_*
Beiträge: 6
Registriert: 14.02.2024, 13:00
System: CCU
Hat sich bedankt: 2 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Annii_* » 16.02.2024, 11:53

Hallo nochmal,

also die Loxone schaltet auf "1" und löst meinen Alarm aus bei folgender URL:
http://loxoneuser:loxonepassword@192.16 ... s/io/VI2/1

Wie bekomme ich jetzt HomeMatic dazu bei "true" den Wert "1" zu senden und bei "false" den Wert "0"?
Aktuell habe ich folgendes in der CCU hinterlegt:

WENN: Gerät Wassermelder bei Feuchtigkeit oder Wasserstand erkannt: Ja bei Aktualisierung auslösen
DANN: Skript (Haken bei Vor dem Ausführen alle laufenden Verzögerungen für diese Aktivitäten beenden (z.B. Retriggern).)
var source=dom.GetObject("HmIP-RF.xxxxxxxxxxxxxx:1.MOISTURE_DETECTED").Value();
if (source=="true") {newvalue=1;} else {newvalue=0;};
string url="http://loxoneUser:loxonePassword@192.16 ... /#newvalue";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#url#"'");

Grüße,
Anna

Benutzeravatar
Baxxy
Beiträge: 10982
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 624 Mal
Danksagung erhalten: 2271 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Baxxy » 16.02.2024, 12:04

Code bitte in Codetags posten </>.

Ist ganz einfach:

Code: Alles auswählen

var source=dom.GetObject("HmIP-RF.xxxxxxxxxxxxxx:1.MOISTURE_DETECTED").Value().ToInteger();
Damit kannst du dir deine if/then/else - Umwandlung sparen.

Xel66
Beiträge: 14253
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 597 Mal
Danksagung erhalten: 1522 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Xel66 » 16.02.2024, 12:05

Ohne Garantie, aber Dein URL-String sieht falsch aus. Ich würde es mit ...

Code: Alles auswählen

string url="http://loxoneUser:loxonePassword@192.168.xxx.xx/dev/sps/io/VI2/" #newvalue;
[/quote]
... versuchen. Du musst die URL ja aus zwei Strings (bzw. string und integer) zusammen bauen, den Aufruf und nachfolgend mit # das newvalue dranhängen.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Benutzeravatar
Baxxy
Beiträge: 10982
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 624 Mal
Danksagung erhalten: 2271 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Baxxy » 16.02.2024, 12:08

Ach auf die URL hab ich gar nicht geguckt.
Ich würde sagen schlecht aus dem LoxWiki kopiert. :wink:

Hier nochmal komplett:

Code: Alles auswählen

var source=dom.GetObject("HmIP-RF.xxxxxxxxxxxxxx:1.MOISTURE_DETECTED").Value().ToInteger();
string url="http://loxoneUser:loxonePassword@192.168.xxx.xx/dev/sps/io/VI2/"#source;
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#url#"'");

Annii_*
Beiträge: 6
Registriert: 14.02.2024, 13:00
System: CCU
Hat sich bedankt: 2 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Annii_* » 16.02.2024, 13:31

Den String " #new value hatte ich tatsächlich geändert um zu sehen, ob sich was tut und vergessen zurück zu ändern. :D

Code: Alles auswählen

var source=dom.GetObject("HmIP-RF.xxxxxxxxxxxxxx:1.MOISTURE_DETECTED").Value().ToInteger();
string url="http://loxoneUser:loxonePassword@192.168.xxx.xx/dev/sps/io/VI2/"#source;
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O - '"#url#"'");
Vielen herzlichen Dank! Die Wassermelder lösen nun wie gewünscht aus!
Allerdings setzt sich der Wert nicht wieder von 1 zurück auf 0, wenn ich den Melder aus dem Wasser nehme :(

Benutzeravatar
Baxxy
Beiträge: 10982
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 624 Mal
Danksagung erhalten: 2271 Mal

Re: Anbindung Loxone/Homematic IP

Beitrag von Baxxy » 16.02.2024, 14:25

Annii_* hat geschrieben:
16.02.2024, 13:31
Allerdings setzt sich der Wert nicht wieder von 1 zurück auf 0, wenn ich den Melder aus dem Wasser nehme
Näher spezifizieren.
Triggert nur das Programm nicht korrekt? Screenshot zeigen!

Oder steht er in der WebUI weiterhin auf "nass"?

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“