Guten Abend zusammen,
ich habe 4 Comet DECT Thermostate in FHEM über
define Heizung FBAHAHTTP 192.168.x.x eingebunden
dazu habe ich fritzBoxUser und das passwort hinterlegt
Das ganze funktioniert auch einwandfrei. Selbst per Sprache mit Homekit (Siri) ist ein verstellen der Temperatur möglich.
Ein Problem kann ich jedoch feststellen, wenn ich in der IOS Home App oder in der EVE App mir die eingestellte Temperatur ansehe, springt sie immer auf den Wert 21°. Es wir nach Eingabe der neuen Temperatur zwar kurz die neu eingestellte Temperatur angezeigt z.B. "Auf 22° heizen" danach springt es wieder auf 21° zurück, obwohl lauf dem Heizungsventil der korrekt eingestellte Wert 22° steht.
Warum ist das so? Wird vielleicht irgendwie der falsche Wert abgefragt?
Vielen Dank
Update: mir scheint als würde IMMER der Wert temperature 20.0 C (measured) ausgelesen werden. Allerdings sollte es doch so sein, dass einmal der IST Wert ausgelesen wir und einmal der SOLL Wert
Als erstes sollten wir "den Schuldigen" suchen, das ist mir hier noch nicht so klar:
- was wird im FritzBox angezeigt und ist das da angezeigte korrekt
- was wird in FHEMWEB Detailfenster angezeigt
- was sollte im IOS Home App oder EVE App angezeigt werden (ich kenne weder noch). Temperatur alleine ist ja mehrdeutig, manche wollen die gewuenschte, die anderen die gemessene Temperatur sehen.
Ich vermute, dass die Erklaerung fuer dieses Verhalten eher im Homebridge Bereich zu suchen ist, und damit waere das Thema in dem Fritzbox Bereich des Forums falsch platziert.
Ich habe mal einen Screenshot angehängt der Home App bei der Eve App verhält es sich genauso. Der obere Wert im orangen Kreis ist die aktuell gemessene Temperatur im Raum, also der IST Wert. Unten "Auf 20° gestellt" sollte der SOLL Wert sein.
Wenn nun die Heizung auf z.B. 22° Grad gestellt wird, ändert sich der untere Wert ebenfalls KURZ "Auf 22° gestellt". Nach kurzer Zeit oder nach dem wiederholten starten der App, steht aber wieder der Wert auf 20°. Es sind quasi IMMER beide Werte gleich. Ich vermute das immer die IST Temperatur gezogen wird.
Sind im Raum z.B. 18° dann stehen beide Werte auch auf 18°. In der Fritz!Box steht beides richtig drin. Temperatur gemessen und Temperatur Soll.
Danke, es fehlt noch die Antwort auf meine Frage nach dem FHEMWEB Detailsicht.
Wo finde ich das?
FHEMWEB (http://<fhemhost>:8083/fhem) aufrufen, Geraet suchen und anklicken.
Im Anhang einmal die Übersicht und dann das Beispiel Wohnzimmer.
Zu dieser Zeit seht nun in der Home App oberer Wert 17 Grad und unterer Wert auch 17 Grad. Heisst für mich er nimmt aus den readings den Wert Temperatur 16,5 measured und rundet diesen auf 17 Grad, da in der App nur voll Grad angezeigt werden -> ist auch ok.
Allerdings müsste er beim unteren Wert den eingestellten Wert des Ventils anzeigen. und das sind 18 Grad -> state desired-temp: 18,0 C
Es wird wohl immer wieder der Wert genommen der in measured steht genommen
Es muesste auch ein explizities desired-temp Reading geben. Es ist vermutlich wg. dem Verschnitt auf dem Screenshots nicht zu sehen, in solchen Faellen ist ein Copy&Paste aus "Raw definition" (ganz unten) vmtl. sinnvoller.
Wenn das stimmt, dann sollte die Frage den Homebridge Maintainer/Helfern gestellt werden.
Sie lesen diesen Bereich bzw. Themen mit so einem Betreff nicht/nur zufaellig.
defmod FBDECT_FBDECT_10971_0484872 FBDECT FBDECT:10971_0484872 actuator,tempSensor
attr FBDECT_FBDECT_10971_0484872 IODev FBDECT
attr FBDECT_FBDECT_10971_0484872 alias Heizung Wohnzimmer
attr FBDECT_FBDECT_10971_0484872 event-min-interval power:120
attr FBDECT_FBDECT_10971_0484872 icon sani_heating
attr FBDECT_FBDECT_10971_0484872 room Heizung,Homekit
setstate FBDECT_FBDECT_10971_0484872 desired-temp: 18.0 C
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 AIN 10971 0484872
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 FBNAME Heizung Wohnzimmer
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 FBPROP actuator,tempSensor
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 FBTYPE Comet DECT
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 ID 22
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 day-temp 21.0 C
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 fwversion 03.66
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 night-temp 18.0 C
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 present yes
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 state desired-temp: 18.0 C
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 tempadjust -3.0 C
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 temperature 19.0 C (measured)
Wie bekomme ich denn dann dieses Thema zu den Kollegen hingeschoben?
Da fehlt desired-temp, ist mAn ein BUG in FBDECT Modul. Das habe ich gefixt und eingecheckt, ist ab morgen per fhem-update oder ab sofort per sourceforge/SVN verfuegbar. Erst wenn es damit auch nicht funktioniert, dann ist das ein Homebridge Thema.
Ok wenn es das ist wäre super. Aber ist das nicht der Wert bzw. Die Zeile die Du/Sie suchen.
setstate FBDECT_FBDECT_10971_0484872 2016-12-02 12:51:45 state desired-temp: 18.0 C
Dritte zeile von unten aus meinem letzten Post oder ist das was anderes?
Oder siebte Zeile von oben?
setstate FBDECT_FBDECT_10971_0484872 desired-temp: 18.0 C
Ja, das ist naemlich Teil vom state.
state enthaelt das, was zuletzt gesetzt wurde, bzw. was "sinnvolles", was der Modulauthor als solches erachtet.
Da kann also auch "day-temp 19" stehen, wenn das zuletzt gesetzt wurde. Fuer die Anzeige der Solltemperatur sollte das desired-temp Reading genommen werden, und nicht state.
Habe mir die aktuelle Datei per SVN gezogen. Das Grundproblem scheint behoben! Somit einen Schritt weiter zur perfekten Umsetzung.
Ein kleine Unschärfe habe ich jedoch im Test jetzt festgestellt. Stelle ich die Temperatur DIREKT am Heizventil ein wird diese auch richtigerweise an FHEM übertragen. Jedoch wird der Wert im Homekit NICHT automatisch aktualisiert. Erst wenn ich ein
sudo service homebridge stop
sudo service homebridge start
mache steht der korrekte Wert auch in der App. Ist das auch noch ein Bug?
evtl reicht es, wenn du ein event-on-change-reading auf das Reading im Device setzt.
Hab noch kein Comet, sonst würd eich dir beim Testen helfen
Wie gehe ich genau mit dem Befehl um - bin noch recht weit am Anfang mit Fhem
Kannst du mir den genauen Befehl sagen?
Vielen Dank
Update: Habs getestet -> funktioniert leider nicht!!!
Es klappt wirklich nur wenn ich den Homebridge Dienst stoppe und wieder starte. Wenn man das hin bekommt, dass es ohne Stop/Start geht, funktionieren diese Ventile absolut zuverlässig mit Fhem und der Home/Eve App.
ZitatIst das auch noch ein Bug?
Mag sein, aber nicht mehr meine Baustelle :) , und das hier ist der falsche Forumsbereich.
An wen, welches Forum muss ich mich denn wenden? Ich kann hier nichts geeignetes finden?
Eigentlich steht im MAINTAINER.txt (http://fhem.de/MAINTAINER.txt) in welchem Forums-Bereich die Autoren die Fragen erwarten. Da finde ich aber nix mit Homebridge, also rate ich: https://forum.fhem.de/index.php/topic,48558.0.html
Grüße,
Wäre es möglich den Batteriestatus mit einzubinden?
Soweit ich weiss, wird das vom Fritz!BOX nicht gemeldet.
Ich sehe auf der FB-Webseite auch keine Angabe dazu.
Mit der aktuellen Fritzbox Version ist der Batteriestand verfügbar!
Habe batterylow ohne Uebersetzung des mitgelieferten Wertes eingebaut. Bei mir wird 0 mitgeliefert, im FB-Frontend steht 50%. Eine Doku dazu habe ich nicht gefunden, in der Doku hier: https://avm.de/service/schnittstellen/ ist es nicht beschrieben, wer jemand was genaueres kennt, sollte sich melden.
Ist vlt sowas hier hilfreich?
Das bekomme ich wenn ich im FritzBox Device get tr64 service list mache.
Es öffnet sich eine Liste mit allen Services und Commandos die ich bei der FritzBox über TR 64 abrufen bzw steuern kann.
Relativ mittig kommt dann was zu den Dects. Wenn ich dann nochmal bissl mittig im Text schaue finde ich was von " NewMultimeterPower".
Keine Ahnung ob das hilfreich ist, so gut kenn ich mich da leider nicht aus, aber wenns ein guter Hinweis ist bin ich froh geholfen zu haben ;D
Ich schätze mal das es da eine interne Berechnung für den aktuellen Batteriestatus gibt, abhängig von der Leistung des Thermostats.
Es wird sicherlich kein Status zur Übertragung via TR 64 geben.
Wenn ich das jetzt weiter stricke, kann ich mir im Prinzip, da wir ja die verbrauchte Leistung vom Thermostat erhalten und die Werte der Batterien haben, den aktuellen Batteriestatus errechnen. Allerdings denke ich da schon wieder viel zu kompliziert.
Bitte sowas als Text und nicht als Bild posten, dann kann ich damit eher was anfangen (z.Bsp. durchsuchen/Werte kopieren).
Etwas mehr anfangen kann ich mit https://avm.de/fileadmin/user_upload/Global/Service/Schnittstellen/x_homeauto.pdf
Ich sehe da aber nichts, was man nicht ueber die HTTP/lua Schnittstelle hat, und wirklich Lust fuer die 3. Schnittstelle fuer AVM habe ich auch nicht.
Deswegen hab ich ja noch dazu geschrieben woher ichs hab.
Spec: http://fritz.box:49000/x_homeautoSCPD.xml Version: 1.0
Service: X_AVM-DE_Homeauto:1 Control: x_homeauto
----------------------------------------------------------------------------------------------------------------------------------
GetInfo ( ) = ( NewAllowedCharsAIN )
GetGenericDeviceInfos ( NewIndex ) = ( NewAIN NewDeviceId NewFunctionBitMask NewFirmwareVersion NewManufacturer NewProductName
NewDeviceName NewPresent NewMultimeterIsEnabled NewMultimeterIsValid NewMultimeterPower
NewMultimeterEnergy NewTemperatureIsEnabled NewTemperatureIsValid NewTemperatureCelsius
NewTemperatureOffset NewSwitchIsEnabled NewSwitchIsValid NewSwitchState NewSwitchMode
NewSwitchLock NewHkrIsEnabled NewHkrIsValid NewHkrIsTemperature NewHkrSetVentilStatus
NewHkrSetTemperature NewHkrReduceVentilStatus NewHkrReduceTemperature NewHkrComfortVentilStatus
NewHkrComfortTemperature )
GetSpecificDeviceInfos ( NewAIN ) = ( NewDeviceId NewFunctionBitMask NewFirmwareVersion NewManufacturer NewProductName
NewDeviceName NewPresent NewMultimeterIsEnabled NewMultimeterIsValid NewMultimeterPower
NewMultimeterEnergy NewTemperatureIsEnabled NewTemperatureIsValid NewTemperatureCelsius
NewTemperatureOffset NewSwitchIsEnabled NewSwitchIsValid NewSwitchState NewSwitchMode
NewSwitchLock NewHkrIsEnabled NewHkrIsValid NewHkrIsTemperature NewHkrSetVentilStatus
NewHkrSetTemperature NewHkrReduceVentilStatus NewHkrReduceTemperature NewHkrComfortVentilStatus
NewHkrComfortTemperature )
SetSwitch ( NewAIN NewSwitchState )
________________________________________________________________
Aber dann steht doch da eh schon drin was wir brauchen. Power und bzw oder Energy, wenn da sinnvolle Werte übergeben werden kann ich ermitteln wie der Batteriestatus ist.
Das ist für den Energiemesser der Steckdose.
Das ist mir schon klar das das für die Steckdosen gedacht ist. Aber kann ja sein das das für die Thermostate so auch genutzt wird.
Wie gesagt ich kenn mich was das betrifft nicht so gut aus, ich versuch nur eine Lösung zu finden und greife nach jedem Strohhalm ;D
AVM holt sich die Werte intern von einer bin. Und die scheint sich von der AHA-Schnittstelle zu unterscheiden
local hkr=aha.GetHKR(device.ID)
stellt hkr.BatteryLow==1 und hkr.Battery zur Verfügung
Also vermutlich keine Chance.
Hast du wohl recht :(
@tupol: kannst du das bitte uebersetzen? Ich stehe auf dem Schlauch.
Das ist der passende Abschnitt im Quelltext (smarthome.lua) der Box, der die Infos auf der Web-GUI anzeigt.
AVM holt sich z.B. in der Datei smarthome.lua die Werte intern von einer binären Datei (namens "aha"). Und die scheint sich von der AHA/HTTP-Schnittstelle zu unterscheiden.
Evtl. gibt es ähnliche undokumentierte Fähigkeiten der AHA/HTTP-Schnittstelle, aber ich glaub nicht dran.
AVM hat kürzlich meine Frage zu der nicht mehr so richtig funktionierenden query.lua-Schnittstelle ignoriert. Ich denke, bei AVM gibt es keinen mehr mit Interesse an Idealisten wie uns. Da zählen nur noch die großen Käufergruppen also die Provider.
Den Eindruck habe ich auch.
Meine Kontakte sind auch verstummt.