NEWS
Test Adapter Controme v0.5.x
-
2025-01-07 10:59:24.620 warn Room 12: Temperature value for sensor 05:17:53:3d is invalid or null controme.0 2025-01-07 10:59:24.619 warn Room 10: Temperature value for sensor 05:81:ff:c6 is invalid or null controme.0 2025-01-07 10:59:24.618 warn Room 10: Temperature value for sensor 05:82:05:6a is invalid or null controme.0 2025-01-07 10:59:24.615 warn Room 9: Temperature value for sensor 05:82:00:49 is invalid or null controme.0 2025-01-07 10:58:25.234 warn State "controme.0.2.sensors.VSensor*1.actualTemperature" has no existing object, this might lead to an error in future versions
Nun habe ich festgestellt, dass es sich bei allen 4 oberen Sensoren der Meldungen um Fensterkontakte handelt, die natürlich keine Temperatur zurückmelden können.
Kann ich einfach den Datenpunkt der jeweiligen Temperatur in den Objekten löschen?Kannst du etwas dazu sagen und warum kommen diese Meldungen nicht auf meinem Alt-System?
-
@nobbiman : Hi nobbiman!
Danke, dass du den Adapter testest, so viele scheinen hier Controm nicht im Einsatz zu haben. Bei den obigen handelt es sich um Warnungen, nicht um Fehlermeldungen. Die werden vom Adapter generiert, um dich darauf hinzuweisen, dass die Sensoren keine Temperaturwerte zurückliefern. Da ich selbst keine Fenstersensoren im Einsatz habe, habe ich diese Warnungen nicht. Es sollte aber in der Adapter-Konfiguration eine Checkbox geben "Log-Warnungen für Null-Werte anzeigen". Wenn du das anhakst, sind die Warnungen weg. Möglicherweise hast du auf deinem Altsystem genau diesen Haken gesetzt?
Die letzte Warnung deutet darauf hin, dass ein Sensor nicht angelegt wurde, der Adapter aber versucht, Werte dafür zu schreiben. Kannst du bitte den Objektbaum neu aufbauen lassen, indem du in der Adapterkonfiguration die Checkbox "Räume beim nächsten Start neu einlesen" anhakst. Ggf. macht der Stern im Adapternamen ein Problem, das müsste ich prüfen.
-
@erstam Prima, dass du dich meldest. Ja, es war die Checkbox "Log-Warnungen für Null-Werte anzeigen", die Meldungen kommen nun nicht mehr!
Nach Aktiviereung der Checkbox "Räume beim nächsten Start neu einlesen" und Neustart des Adapters ergeben sich keine Änderungen, alle 5 Minuten wird die Warnmeldung weiterhin ausgegeben, auch in meinem Altsystem.
Vergeblich habe ich aber nach einem "Stern" im Adapternamen gesucht, aber du wirst wissen, was du tust!Aber auch hier stellt sich die Frage, ob das Objekt im ioBroker einfach löschen kann. In dem Raum (Esszimmer) ist ein virtueller Sensor unter Controme angelegt, die Temperatur des Raumes ist aber in einem anderen Datenpunkt ersichtlich.
-
@erstam Hallo, ich möchte jetzt gerne mal auf mein eigentliches Thema kommen: Wie kann ich Daten über die Controme API zurückschreiben?
Mittlerweile habe ich meinen ioBroker neu auf einem RasPi 5 unter bookworm installiert, alles läuft gut.
In Abhängigkeit von meinem PV-Überschuss und der Tagesprognose möchte ich mittags die Raumtemperatur im Wohnzimmer anheben, um den Estrich als Pufferspeicher zu verwenden - nachmittags wird bei mir ohnehin das Wohnzimmer hochgefahren.
Nun habe ich das ioB-Objekt "Wohnzimmer - Offset - api - Raum" testweise über ein Script auf den Beispielwert 2 °C (Wertetyp number) gesetzt; in der Controme-Oberfläche schlägt sich dieses Offset jedoch nicht nieder und die Solltemperatur des Raumes wird nicht erhöht.
Hast du schon mal einen Wert nach Controme geschrieben und weißt, wie das geht?Nachtrag: ich habe da mal ein wenig recherchiert und bin auf Tools wie "HTTP-ioB-Adapter" - den gibt es nicht mehr (!), "Rest-API-Adapter" und "Test mit "Postman" gestoßen. Wenn es da nichts Niederschwelligeres gibt, ist das Thema "OFFSET-Setzen" für mich gestorben, für einen Datenpunkt zu ändern werde ich mich nicht in die Tools einarbeiten. Ideal wäre für mich einen Link zu bekommen, mit dem ich einen Wert entweder auf "0" oder "2" setzen kann.
Kann mir jemand einen Beispiellink konfigurieren, in den ich nur noch die IP meines Contromeservers, meine Identifikation, den zu ändernden Datenpunkt und den neuen Wert des OFFSET einpflegen muss, oder geht das nicht so einfach?Ergänzung mit Lösung: 6 Tage später habe ich die folgende Lösung erarbeitet: Ich habe den Adapter webCal unter ioB installiert, der mit einem Google-Kalender verknüpft kann wiederum von Controme ausgelesen werden. Es werden nun eventgesteuert oder manuell Termine mit Offset-Angaben über webCal in den Google-Kalender "überspielt", der dann temporär Temperaturveränderungen über die Contromeregelung im Haus bewirkt - also von hinten durch die Brust!
-
@nobbiman Also ich schreibe immer wieder Werte über das Interface zurück in den API-Raum-State, z.B. um meine Fenstersensoren zu testen. Ich habe es gerade noch mal getestet, die Werte werden verarbeitet. Hier mal, wie es bei mir aussieht:
Wichtig ist, dass der API-Raum-Wert (entsprechend der API-Dokumentation) von Controme nach 5 Minuten wieder zurückgesetzt wird. Du musst, wenn du den Wert aufrechterhalten möchtest, diesen periodisch immer wieder schreiben.
Vielleicht stellst du den Adapter mal auf Debug und postest die Log-Einträge.
Viele Grüße
Marc
-
@nobbiman Die Warnung aus dem Log lautet "State "controme.0.2.sensors.VSensor*1.actualTemperature" has no existing object", in deinem Objektbaum heißt das Device aber "VSensor_1". Das muss ich mir anschauen. Du kannst es deinerseits abstellen, wenn du den Sensor vielleicht in VSensor1 umbenennst, aber letztlich ist es ein Fehler im Adapter. Danke, dass du es bemerkt hast.
Du kannst das Objekt in ioBroker löschen, es wir aber den Fehler nicht abstellen, da dieser vom Adapter generiert wird und darauf hindeutet, dass der Adapter den State nicht findet, den er schreiben will. Eben weil der State anders heißt, als erwartet.
-
@erstam wo stelle ich bitte den Adapter auf "Debug" ein? Unabhängig von diesem Vorschlag bin ich aktuell mit der Steuerung per Google-Kalender sehr zufrieden; das Offset gilt über die Zeitdauer des gesamten Kalendereintrags.
So habe ich beispielsweise gerade heute Morgen anlässlich einer abendlichen Familienfeier einen Offset von -1,5 in einem Raum im Google-Kalender gesetzt um zu verhindern, dass bei 12 Personen im Raum dieser überhitzt wird. Das ist sehr praktisch, da ich jetzt nicht mehr über die heute Abend laufenden Temperaturszenen schauen und morgen wieder alles zurücknehmen muss. Dabei ist die Reaktionszeit der FBH zu beachten - eine vorausschauende Planung ist dadurch möglich. -
Hallo, schwer erfreut, dass der Adapter weiterentwickelt wird, habe ich versucht den Adapter zu installieren. Genauer gesagt, den alten (0.3.2?) deinstalliert und dann die neue Version 0.5.3 installiert.
Installation lief ohne Fehler durch, Instanz manuell angelegt. Beim Starten erhalte ich auch den Fehler "Unhandled promise rejection" scheinbar während er versucht die Outs über die Api zu holen. Dann gehlt nichts mehr weiter weil die DB geschlossen wird.
Gibt es eine Idee was ich tun könnte? Das Log gibt aus meiner Sicht nichts hilfreiches wieder auch nciht im ALLES-Modus.
Gibt es eine Chance die alte Version wieder einzuspielen?
Lieben Dank für mögliche Hilfe. Bin leider auch ein relativer dummie.
Gruß -
@digifreak : Hi Digifreak,
probiere bitte mal die v0.5.4. Sollten damit weiter Fehler auftauchen, schick mir bitte mal das Debug-Log (wie per Email schon geschrieben, gerne auch in der Silly-Einstellung).
Viele Grüße!
-
@nobbiman : In der v0.5.4 sollte das Problem mit dem Sensor-Namen nicht mehr auftauchen. Es lag daran, dass ich leider bei einem Teil der Sensor-Aufrufe unsichere Zeichen bereits gefixt habe, aber leider nicht überall.
-
@erstam Sieht sehr gut aus, seit mehreren Stunden kommt keine Warnmeldung mehr. Danke, dass du dich immer noch um den Adapter kümmerst, auch wenn er offenbar nicht so häufig eingesetzt wird.
-
Ich habe die 0.5.6 fertiggestellt. Oberflächlich hat sich nicht viel geändert, unter der Motorhaube ist der Adapter aber wesentlich robuster geworden und prüft die API-Rückmeldungen viel genauer.
Installiert gerne mal die 0.5.6 und gebt Feedback, ob noch irgendetwas fehlschlägt.
-
@erstam Hallo, leider bekomme ich nun im Protokoll eine Vielzahl von (Warn-)Meldungen wegen fehlender Luftfeuchtewerte, die gar nicht erhoben werden - war vorher nicht!
controme.0 2025-02-21 17:20:27.043 warn Room 14 (Außentemperatur): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.043 warn Room 14 (Außentemperatur): Invalid actual temperature value: null controme.0 2025-02-21 17:20:27.043 warn Room 12 (Kind 2): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.043 warn Room 10 (Kind 1): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.041 warn Room 9 (Ankleideraum): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.041 warn Room 7 (Bad): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.041 warn Room 6 (Flur/WC): Invalid humidity value: kein aktueller Wert vorhanden controme.0 2025-02-21 17:20:27.041 warn Room 1 (Küche): Invalid humidity value: kein aktueller Wert vorhanden
Bei der Außentemperatur stehe ich auch noch vor einem Rätsel, da Controme selbst Temperaturwerte anzeigt.
-
@nobbiman : Hi nobbiman! Danke für das Feedback, da hatte ich zu kurz gedacht. Auf Github (noch nicht im Latest) findet sich jetzt eine Version, die die Warnungen unterdrücken sollte. Außerdem berücksichtigt sie jetzt unterschiedliche API-Versionen, da bei den älteren APIs bestimmte Werte nicht mitgeliefert werden.
In der Adapter-Konfiguration gibt es die Checkbox "Show log warning for Null value"/"Log-Warnungen für Null-Werte anzeigen". Nur wenn diese Checkbox gesetzt ist, werden die Warnungen oben weiter angezeigt, sonst werden sie unterdrückt.
Prüft das gerne mal!
-
@erstam Seit nunmehr 2 Stunden kommen keine Warnmeldungen mehr, vielen Dank! Die Check-Box habe ich gesehen.
-
@erstam Ich würde gerne einmal auf ein weiteres Thema zu sprechen kommen:
Wenn ich über den Google-Kalender ein Offset einbaue, dauert es eine Ewigkeit, bis dieses Offset in der Regelung ankommt. Ich möchte das einmal mit einem Screenshot dokumentieren:
Hier der Offset-Eintrag im Google-Kalender (5:37 Uhr)
und hier die Reaktion des Controme-Servers (zwischen 5:56-5:59 Uhr)
Kann man das irgendwie beschleunigen und ggf. die Abfragefrequenz erhöhen?
Ich jedenfalls finde in der Contromekonfiguration keine Einstellmöglichkeit zum Abfrageintervall. Dort steht nurNeue Einträge benötigen etwas Zeit, maximal etwa 5 Minuten, bis sie bei uns ankommen.
-
@nobbiman : Hi Nobbiman!
Der Adapter schreibt die Offset-Werte unmittelbar. Und zumindest bei mir tauchen sie dann auch unmittelbar in Controme auf.
Hier siehst du es mal mein Beispiel: Beim Öffnen eines Fensters wird im Raum ein Offset von -10K gesetzt. Das ganze geht unmittelbar, da sind maximal Sekundenbruchteile an Verzögerung drin.
Wo jetzt genau die Verzögerung bei dir herkommt, weiß ich nicht. Aber liest der webCal-Adapter deinen Google-Kalender nicht nur periodisch aus? Zumindest der iCal-Adapter liest nur alle X Minuten, und das könnte natürlich zu einer erheblichen Verzögerung kommen.
Du schriebst oben (am 14.01.2025), dass die Offset-Änderungen in "Wohnzimmer - Offset - api - Raum" sich gar nicht in Controme wiederspiegeln. Ist das gelöst? Falls du immer noch keine Änderungen in Controme siehst, dann müsstest du bitte mal den Debug-Modus aktivieren, manuell den API-Wert setzen (indem du einfach in den Api-Raum-State einen Wert einträgst) und dann den Log hier posten.
Viele Grüße!
-
@erstam sagte in Test Adapter Controme v0.5.x:
Wo jetzt genau die Verzögerung bei dir herkommt, weiß ich nicht. Aber liest der webCal-Adapter deinen Google-Kalender nicht nur periodisch aus? Zumindest der iCal-Adapter liest nur alle X Minuten, und das könnte natürlich zu einer erheblichen Verzögerung kommen.
Es ist tatsächlich so, der webcal-Adapter lieset nur alle 10 Minuten aus, eine Verringerung der Frequenz ist leider nicht möglich!
Du schriebst oben (am 14.01.2025), dass die Offset-Änderungen in "Wohnzimmer - Offset - api - Raum" sich gar nicht in Controme wiederspiegeln.
Auf diese Frage komme ich später zu sprechen, da ich erst erneut testen muss. Im Moment verändere ich ja die Solltemperatur über den Offset, damit ist mir sehr gut geholfen.