[Modul] Homematic Extended (Systemvariablen, Programme, Powermeter, u.v.m.)

Vielen Dank !

Ich bekomme bei mir nach dem Update des Moduls die Meldung bei Homematic Programme
Notice: Error on Read CCU Programms on line 284

Edit: Ok, scheint tester-branch zu sein.
Steht im Objektbaum hinter der Instanz die Adresse der CCU ?
Ist es nach einen Neustart von IPS weg ?
Wenn nein, was sagt das Debug der Instanz ?
Michael

Ja.

Nein

CCU unreachable
egal ob der Socket aktiv ist.

Ich habe jetzt auch Probleme mit dem Homematic Socket bekomme immer wieder ein Rotes Ausrufezeichen das die Verbindung getrennt wurde dann haben die Instanzen logischerweise auch ein rotes Ausrufezeichen. Die Homematic Socket wird dann wieder selbstständig hergestellt. Diese Abbrüche im Socket sind mir vorher zumindest nie aufgefallen.

Wenn der HomematicSocket in diesen Augenblick im Fehler steht, kommt ‚Instance has no active parent instance!‘
‚CCU unreachable‘ ohne einen HTTP-Fehlercode dahinter bedeutet, dass IPS keine Verbindung zu Port 8181 der CCU aufbauen kann.

Michael

Ich habe den Fehler gefunden hatte heute Vormittag einen Stromausfall und der Router an dem die CCU hängt wurde nicht richtig neu gebootet dadurch war die CCU nicht erreichbar was den Fehler erklärt. Sorry für die Aufregung.

Version 2.06:

[ul]
[li] Fix: Doku geändert (Final).
[/li][li] Fix: GUID für Empfang vom RF-Interface Splitter.
[/li][li] Fix: Trigger für Powermeter und Systemvariablen waren unter Umständen falsch.
[/li][li] Fix: HM-Systemvariablen vom Typ String wurden falsch dargestellt, wenn Umlaute enthalten waren.
[/li][/ul]

Aktuelle Tester-Version ist jetzt auch im Master-Branch verfügbar!

Hallo Michael,

die neuste Version habe ich gerade installiert. Vielen Dank.

In der vorherigen und jetzigen Version ist mir folgendes aufgefallen. Schreibt man den Duty Cycle mit

HM_WriteValueFloat2(45770 /*[HomeMatic Systemvariablen]*/, '1942' /* IDENT von CCU_DC */, GetValueInteger(31500 /*[Zeit-Scripte\CCU\CCU2\DUTY_CYCLE]*/));

in eine HM Variable, so wird der neue Wert erst dann angezeigt, wenn ich aus HM heraus die HM Systemvariablen wieder neu aktualisiere. Macht man das gleiche mit einer Booleschen Variable, so wird die Änderung sofort angezeigt. Das GetValueInteger hatte ich auch schon entfernt und über eine Variable gemacht, was aber keinen Unterschied ausmachte.

Ferner ist mir aufgefallen, dass der DC nun höher ist als vorher. Ich habe das alte Script für den DC in HM deaktiviert und rufe das HM RF Interface nur alle 10 Minuten auf, so wie es bislang auch auf der CCU war. Trotzdem ist mein DC um ca. 20. Vorher lag er bei der Hälfte. Die Logdatei der CCU weist keinerlei Besonderheiten auf. Ich werde das mal weiter beobachten.

Gruß
Hans

Welche Variante der Aktualisierung der Systemvariablen nutzt du ?

Dieses Modul unterstützt zwei Möglichkeiten die Systemvariablen von der CCU abzufragen:

[ul]
[li]Abfrage erfolgt über einen einstellbaren Intervall (Pull).
[/li]> [li]Die CCU löst einen Tastendruck einer virtuellen Fernbedienung aus, welche in diesem Modul als Trigger für eine Abfrage verwendet wird (Push).
[/li]> [/ul]

Michael

Hallo Michael,

ich nutze die Variante über einen virtuellen Tastendruck.

Gruß
Hans

Ist den die Systemvariable ’ CCU_DC’ in dem Programm auf der CCU auch eingetragen ?
Sonst kommt keine Änderung zurück.
Kannst dies auch in der Console sehen, weil ja der Zeitstempel der virtuellen FB sich in IPS ändern musst.
Und dann sollte auch die Instanz der Systemvariablen die neusten Daten von der CCU lesen (ggfls. mal im Reiter Debug nachschauen ob dies auch wirklich passiert).

Michael

Die Systemvariable ist in der CCU hinterlegt und wurde auch entsprechend aus der CCU ausgelesen. Die Änderung des Wertes wird auch sofort an die CCU übertragen. Im Objektbaum wird diese Änderung aber erst dann angezeigt, wenn ich künstlich den virtuellen Tastendruck auslöse. Dann stimmt das Änderungsdatum im Objektbaum mit dem Änderungsdatum von Press Short überein.

Mache ich den gleichen Vorgang mit einer Booleschen Variablen, wird die Änderung sofort in der CCU UND im Objektbaum angezeigt und die Änderungsdaten werden alle sofort gesetzt.

Gruß
Hans

Das war nicht meine Frage.
Auf der CCU muss ja die Änderung der Systemvariable den Tastendruck auslösen (über ein von dir zu erstellendes Programm). Wenn das nicht passiert hast du in dem Programm der CCU einen Fehler bzw. etwas vergessen.

Beispiel:

Michael

Nun habe ich noch Tests mit einer String und einer Integer Variablen gemacht. Diese verhalten sich wie die Float Variable.

Also nur die Änderung der Booleschen Variable wird bei mir im Objektbaum sofort angezeigt.

Kann es eine Rolle spielen, dass ich im Moment sowohl die Entwicklungsumgebung als auch die Produktivumgebung am Laufen habe?

Gruß
Hans

Ach du Scheixxe, daran habe ich gar nicht mehr gedacht :mad:

Sorry, das ist der Grund. Für heute höre ich besser auf :wink:

Der DC hat sich auch wieder beruhigt :slight_smile:

Vielen Dank Michael.

Gruß
Hans

Hi Michael,
ich habe nach langer Zeit mal wieder ein Update des Moduls eingespielt. Wenn ich nun eine Taste des Dis-WM55 drücke, erhalte ich die Fehlermeldung

10.01.2017 08:52:55*| FlowHandler*| Kann Daten nicht zur Instanz #19788 weiterleiten: <br />
<b>Notice</b>:  Undefined index: DeviceID in <b>/var/lib/symcon/modules/IPSHomematicExtended/DisplayStatusAnzeige/module.php</b> on line <b>352</b><br />

In der Zeile schlägt also der Aufruf
$this->HMEventData[$Action][‚DeviceID‘] fehl. In der Debug-Ausgabe sehe ich allerdings „Receive: DeviceID | NEQ0103181:| NEQ0103181:1“.

Für mich sieht die Fehlermeldung nicht nach einem Fehler in dem aufbereiteten Display-Text aus (ich mag mich aber irren). Hast Du eine Idee, wo das Problem liegen könnte oder wie ich bei der Fehlersuche weitermachen kann?

Danke schon mal und Grüße
Peter

Bestimmt ein Fehler durch den Umbau auf die internen Buffer. Schaue ich mir heute Abend an.
Michael

Fix ist online (sowohl im master als auch tester)

Version 2.07:

[ul]
[li] Fix: Summenzähler für Powermeter hat bei Gas falsche Werte geliefert.
[/li][li] Fix: Dis-WM55 ohne Funktion.
[/li][li] Fix: Dis-WM55 hat immer das Display-Script überschrieben.
[/li][li] New: Mehr Debug-Ausgaben bei Dis-WM55.
[/li][/ul]

Michael

Perfekt, vielen Dank für das Update - das Display funktioniert bei mir jetzt wieder.

Gruß
Peter

Version 2.10 (tester):

[ul]
[li]Neu: HomeMatic WR-Interface zeigt den Status des Wired-Interfaces der CCU an.
[/li][li]Neu: Alle ‚CONNECTED‘ Statusvariablen der CCU-Interfaces werden immer aktualisiert um Ausfälle besser detektieren zu können.
[/li][li]Fix: Instanzen haben nicht erkannt wenn sich der Parent geändert hat.
[/li][li]Fix: Timer erzeugen keine Fehlermeldungen mehr.
[/li][/ul]

HomeMatic WR-Interface:

Ergänzung der Doku folgt zum push in den master.

Michael