Einstieg in IPS mit Homematic

Ich bin einige Schritte weitergekommen und scheine nun eine funktionierende Kommunikation zwischen ReGaHss und IPs zu haben. Einfache Ereignisse, z.B. Anschalten einer Lampe bei Auslösen eines BWMs funktionieren.

Zwei Anfängerfragen zum Mechanismus: wenn ich das richtig verstehe, ist der HM Socket sozusagen im Hintergrund dafür verantwortlich, die Instanzvariablen mit Werten zu versorgen:

[ul]
[li]Wie kann ich die Zuordnung zwischen HM Datenpunkt und IPS Variable einsehen oder verändern? Geht das rein über den Namen der Variable, d.h. die IPS Variable „LEVEL“ entspricht automatisch dem Kanal-Datenpunkt „LEVEL“?
[/li][li]Warum kann ich die Variablen nicht direkt ändern? Beim Versuch, dies zu tun, bekomme ich die Warnung, dass die Variable read-only ist, und das Schreiben eines Werts (z.B. LEVEL auf 0,8) bewirkt auch nichts. Das Aufrufen des entsprechenden Skriptbefehls mit Parametername „LEVEL“ und Wert 0,8 hingegen funktioniert.
[/li][/ul]

Wie gesagt, das sind vermutlich absolute Anfängerfragen, aber die helfen mir, den Mechanismus besser zu verstehen.

Danke und Gruß
micheljarre

Moin,

ich habe das mal gelöst vom EasyInstall-Script.
Deine Fragen haben damit nichts mehr zu tun :wink:

Nur das IPS gar nicht mit Dieser Logik-Schicht kommuniziert.
IPS spricht direkt mit dem BidCos-RF bzw BidCos-wired.
Darum habe ich ja das EasyInstall mal geschrieben, um alle Informationen welche über diese Dienst nicht bereitgestellt werden, einmalig zu importieren.

Korrekt.

Nein das geht nicht über den Namen, den darfst du frei wählen.
Es funktioniert so, dass die Instanz ‚HomeMatic Device‘ seine Daten (anhand der dort eingetragenen Adresse LEXxxxxx:x) nimmt, und in seine untergeordneten Variablen schreibt. Dabei ist der HM-Datenpunkt die Variable mit dem gleichlautenden Ident (Öffne mal den Reiter ‚Statusvariablen‘ der Homematic-Device Instanz).

Status-Variablen kannst du nie direkt beschreiben. Das wäre so, also wenn du deine Tankanzeige auf voll schiebst. Der Tank ist dann aber noch immer leer :wink:
Hier ist das beschrieben:
Variablen — IP-Symcon :: Automatisierungssoftware

Jeder fängt mal an.
Und IPS zu ‚verstehen‘ braucht Zeit… vieles ist dokumentiert
Teilweise aber nur wie man es nutzt… aber WARUM einiges so ist wie es ist, das steht da meistens nicht.
Dennoch ist es gut, sich den Beriech ‚Grundlagen‘ und ‚Vorgehensweisen‘ in der Doku mal durchzulesen.
Das sollte schon mal viele Fragen beantworten.

Viel Erfog,
Michael

OK, danke.

Ja klar, das war ein Denkfehler. Das Auslesen der Geräte, Räume etc. geht über ReGaHss, aber nach dem Importieren wird es nicht mehr benötigt. Ist ja auch genau das was ich benötigte (ReGaHss ist sehr instabil bei mir).

Zugegebenermaßen hatte ich die Grundlagen schon 1-2 mal durchgelesen, aber ich glaube es jetzt besser zu verstehen. Die Statusvariablen befinden sich im Datenhaushalt von IPS und werden vom HM Socket (via XML RPC) mit Werten beliefert.

Wenn ich per Skript einen HM Wert schreibe, geht das nicht an den Datenhaushalt von IPS (und dann an HM), sondern direkt an den HM Datenpunkt, der genau so oder auch anders als die IPS Variable heißen kann.

Gruß
micheljarre

Ja genau. Es gibt aber auch Datenpunkte, welche nur beschrieben werden können.
Zum Beispiel bei Funk-Aktoren 'ON_TIME’. Da er nicht gelesen werden kann, gibt es auch keine Variable in IPS.
Der Haken ‚Status emulieren‘ in den HM-Instanzen sorgt dafür dass sich das verhalten der Variablen etwas verändert.
Ist er gesetzt, führt IPS beim schalten/steuern sofort die Variable nach.
Ist er nicht gesetzt, passiert das erst wenn die CCU den neuen Wert übermittelt.
In ca. 90% der Fälle, brauchst du den Haken nicht setzten.
Michael