KNX Status auslesen

Hallo zusammen,

ich bekomme den Status unterschiedlicher Komponenten (z.B. Licht, Steckdosen, etc.) leider nicht in IPS angezeigt.
In KNX sind für jede Komponente u.A. eine „Schalten“ GA und eine „Status“ GA vorhanden.

In IPS habe für beide GAs eine eigene Instanz erstellt. Die „Schalten“ Instanz habe ich dann via Link im WebFront in der gewünschten Kategorie (vom Typ Dummy) angezeigt. Das Schalten funktioniert auch soweit.

Für den Status habe ich in der „Schalten“ Instanz dann unter „mehr“ die „Status“ Instanz als weitere Rückmeldeadresse angelegt.
Unter den Experteneinstellungen habe ich bei der „Status“ Instanz "auch das Lesen (Erlaubt der Instanz den aktuellen Wert vom Bus abzufragen) getestet. Leider ohne Erfolg.

Beide Instanzen sind vom Typ EIS1. Das Schalten funktioniert zwar, jedoch wird der Status nicht aktualisiert.
Da ich Anfänger bin, frage ich mich, was ich falsch mache…

Weiterhin würde mich interessieren, was genau die Option:
„Versuche Gruppen-Adressen für den Status zuzuordnen“ im KNX Konfigurator bedeutet.

Danke und Gruss
Jan

In IPS habe für beide GAs eine eigene Instanz erstellt.

Da haben wir den Fehler. Für die Status GA willst du keine Instanz erstellen, sondern die GA in der Haupt-Instanz bei „MEHR“ eintragen. Dann läuft auch alles :slight_smile:

paresy

Hi
Ich habe schon lange das gleiche Problemchen.
Eine Controlinstanz zum schalten
Eine Statusinstanz zum Anzeigen.
Diese dann unter Mehr gegenseitig verknüpft.
Die Anzeigen waren dann nicht zuverlässig.
In IPSView dann 1 Button drin zum Schalten und daneben eine Variablenanzeige zum Statusanzeigen…
Sollte das mein Fehler gewesen sein?
Also nur die Instanz Schalt GA anlegen und bei mehr die Statusanzeige eintragen?
Die Status GA kann (soll) dann gelöscht werden?

Schönen Gruß:)
Egon

Ganz genau. Die Status Instanz kann einfach weg.

paresy

Hallo Paresy
Danke dafür:)
Egon

Ich habe nun die „Status“ Instanz gelöscht und die GA der Statusinstanz bei „mehr“ unter der „Schalten“ Instanz hinzugefügt.
Die Instanz zeigt leider weiterhin „false“, obwohl der Status ganz sicher true ist.

Benötigt die „Schalten“ Instanz ein aktiviertes Lesen (Erlaubt der Instanz den aktuellen Wert vom Bus abzufragen)?

Hast du einmal umgeschaltet nachdem du die Änderung durchgeführt hattest?

paresy

Nein.
Wenn ich umschalte, dann kann ich ja den Status nicht mehr testen.
Hab mir extra was genommen, was definitiv „an“ ist, um zu testen, ob der Status auch ohne umschalten richtig gelesen wird.
Z.B. die KWL oder die Heizung.

Es wird ja nicht gelesen, sondern nur „Empfangen“. Du musst also quasi warten bis das Gerät seinen Status sendet.

paresy

OK und wofür aktiviert man in den Eigenschaften einer Instant das „Lesen“ (Erlaubt der Instanz den aktuellen Wert vom Bus abzufragen)?

Wenn du diese aktivierst kannst du die Instanz über den RequestStatus Befehl abfragen. Oder über dieses Skript: EIB/KNX — IP-Symcon :: Automatisierungssoftware

paresy

OK, aber ich möchte ja die „Status“ GA auslesen und nicht die „Schalten“ GA, daher bringt mich das wohl hier nicht weiter, wenn ich das bei der „Schalten“ GA aktiviere, oder?
Die Instanz der „Status“ GA habe ich ja gelöscht…

Du willst bei KNX eigentlich NIE was lesen. Denn die Geräte senden AKTIV bei Änderung ihren neuen Status. Darauf reagiert IP-Symcon und führt das zum Status GA passende Hauptobjekt passend mit. Dies funktioniert auf „immer und ewig“ zuverläsig, solange IP-Symcon NICHT ausfällt. Wenn es mal ausfällt, nimmst du das von Paresy verlinkte Script und verbindest es z.B. mit dem Ereignis „Client Socket für KNX ist wieder verbunden“. Intern wird bei ReadStatus entsprechend auch oder nur (das weiß ich nicht) die Status GA gelesen.

Da fällt mir zu diesem Thema eine weitere Frage ein: Was ist, wenn ich eine etwas ältere KNX Installation ohne Status Objekte habe. Und hier z.B. eine zentral Ein GA habe. Diese ist dann ja als Status bei 40 Instanzen eingetragen. Funktioniert das? Oder wird nur die (zufällig ausgewählte) 1. Instanz mit der Änderung versorgt?

PS: Könnt ihr die „lesen“, „schreiben“, etc. Checkboxen bitte mal konsistent mit der ETS benennen bzw. deren Flag Buchstaben dahinter setzen?

Das Auslesen macht aus meiner Sicht nur Sinn, wenn IP-Symcon frisch neu gestartet ist. Ansonsten benötigt man das nicht.

OK, d.h. also ich schalte einmal alles um und ab diesem Zeitpunkt wird es dann korrekt angezeigt, sofern IP-Symcon nicht neu gestartet wird.
Das bedeutet dann ja aber auch, dass ich die „Status“ GA eigentlich nicht benötige, sofern die Komponente ausschließlich über die „Schalten“ GA geschaltet wird und nicht z.B. durch eine Szene?

[quote="„andSpannung,post:15,topic:52865“]
ab diesem Zeitpunkt wird es dann korrekt angezeigt, sofern IP-Symcon nicht neu gestartet wird./QUOTE]
Richtig

Theoretisch ist das richtig. Praktisch würde ich die Status GA aber immer mit verknüpfen. Wenn Du z.B. über eine Zentraladresse schaltest und vergisst, diese unter „mehr“ einzupflegen, dann kann so eine eingetragene Status GA schon ganz sinnvoll sein.

Das stimmt meisten, aber wie ist es wenn der Aktorkanal gesperrt ist?

Wenn man den Status als hörende GA verbunden hat, dann hört IPS auf das Schaltobjekt und das Statusobjekt. Wenn der Aktor aber gesperrt ist würde ich vermuten, daß IPS den Schaltbefehl sieht (vermeintlich geschaltet) und vom Aktor kein Status zurückkommt.

Falls also bei der Sperre kein Status zurückkommt, so wäre das ein Fall, wo man tatsächlich aktiv den Status lesen wollte.

OK.
Falls IP-Symcon bzw. der Server neugestartet wird hilft mir das aktivieren von „Lesen“ (Erlaubt der Instanz den aktuellen Wert vom Bus abzufragen) in der „Schalten“ Instanz aber nicht weiter, da ich ja den Status auslesen müsste, oder?

Also benötige ich für den Fall eines Neustarts zwingend das Script oder ich muss eben erneut alles einmal per Hand schalten?

Richtig

Auch richtig.

*** Fehler gefunden ***

N’Abend Zusammen,
kurze Frage zum obigen Auslesescript.
Irgendwie tut es bei mir nicht, im Gruppenadressenmonitor der ETS sehe ich keine Abfrage.
Ein paar „print_r“ im Script zeigen mir, daß sowie die Gateway-ID als auch die Instanzen richtig ausgelesen werden.
Die Funktion IPS <-> KNX funktionieren sonst einwandfrei.
Mache ich einfach nur einen doofen Denkfehler?
—> Ja, hier: **** In IPS muss in der Instanz der GA „lesen erlaubt“ sein ****
Dank und Gruß
Kea

edit: Antwort selber gefunden!

1 „Gefällt mir“