48_HomeConnect.pm neue Überarbeitung

Begonnen von Adimarantis, 24 Dezember 2024, 00:02:52

Vorheriges Thema - Nächstes Thema

isy

Ich habe jetzt den Geschirrspüler gelöscht und neu angelegt. Ich habe den aber noch nicht gestartet.

Das sieht schon mal gut aus.

Zum Vergleich die WEB Ansicht mit neu angelegten Geräten (Geschirrspüler und Kochplatte) und dem noch mit dem alten Modul angelegten Backofen.

Den Backofen lösche ich jetzt auch und lege ihn neu an.
Ein Weg wird erst zu einem Weg, wenn man ihn geht

isy

So der Backofen ist jetzt auch neu.
Die Geräte sehen jetzt so aus
Ein Weg wird erst zu einem Weg, wenn man ihn geht

isy

Im Backofen fällt noch ein Zeichensatzproblem "Â" auf:
Option.SetpointTemperature 180 °C 2025-01-05 10:45:13
Ein Weg wird erst zu einem Weg, wenn man ihn geht

isy

Wie startet man eigentlich den Backofen jetzt?
Ein "set irgendwas", so wie bei der Spülmaschine, sehe ich nicht.

Ein Weg wird erst zu einem Weg, wenn man ihn geht

Adimarantis

Da ich keinen Backofen habe, kann ich dir das ohne Logfile nicht beantworten  :)

Ich hatte zwar gehofft, dass andere Geräte generisch funktionieren, aber das klappt bei der inkonsitenten API wohl doch nicht immer.
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU)/RfxTrx433XL/Zigbee
Module: 50_Signalbot, 48_HomeConnect, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

isy

#50
Kein Problem, ein List vom Backofen Log und ein List vom Device in der Anlage sofort.
Ein Weg wird erst zu einem Weg, wenn man ihn geht

Adimarantis

Danke. Schau ich mir an.
Hab inzwischen ein Update für die "°C" Darstellung eingespielt.
Mein System läuft unter unicode, deswegen baue ich immer Umwandlungen ein - nur in welche Richtung die benötigt werden ist manchmal nicht offensichtlich :)
Zum Testen reicht die neue Version mit reload einzuspielen und dann müsstest du das Reading irgendwie aktualisiert bekommen (wahrscheinlich GetProgramOptions)
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU)/RfxTrx433XL/Zigbee
Module: 50_Signalbot, 48_HomeConnect, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

isy

Gerade probiert, neue Version ist geladen.
Leider keine Änderung, immer noch wie vorher. Mein Pi steht auf UTF-8
180 °C
So was steht auch noch im FHEM Log, HB772G1B1 ist der Backofen.
2025.01.05 11:23:28 1: [HomeConnect_HandleError] HB772G1B1: Error "Program not supported"
2025.01.05 11:23:28 1: [HomeConnect_HandleError] HB772G1B1: Error "There is no program selected"
2025.01.05 11:23:59 1: [HomeConnect_HandleError] HB772G1B1: Error "Program not supported"
2025.01.05 11:23:59 1: [HomeConnect_HandleError] HB772G1B1: Error "There is no program selected"
Ein Weg wird erst zu einem Weg, wenn man ihn geht

Adimarantis

Beim encoding geht es um die "encoding" Einstellung im "global" device von FHEM.
Die "°C" gehen bei mir jetzt in beiden Einstellungen - bist du sicher, dass das Reading neu befüllt wurde - die Anpassung wird beim Schreiben vorgenommen.

Das mit dem Programmen ist beim Ofen etwas unschön, weil da überall unötigerweise ein Prefix dran ist.
Du bekommst ein "set SelectedProgram" angeboten nehme ich an, und dort stehen die deutschen Übersetzungen?
Und beim Setzen auf "Heißluft" kriegt du den Fehler? Oder bei "StartProgram"?
Oder hattest du das Programm am Gerät eingestellt?
Hab noch nicht ganz verstanden woher diese "not supported" Meldung kommt. Irgendwie verschluckt der manche Nachrichten im LogFile.
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU)/RfxTrx433XL/Zigbee
Module: 50_Signalbot, 48_HomeConnect, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

Prof. Dr. Peter Henning

#54
Leider lässt sich mit dem API, auf das FHEM zugreift, der Backofen NICHT einschalten. Auch das Kochfeld nicht - beides ist aber schon seit Jahren bekannt.

Das Einzige, was man über FHEM bei den beiden steuern kann, ist der Kurzzeitwecker (Alarm) und die Kindersicherung.

Angeblich begründet HC das mit "Sicherheit" und "gesetzliche Regelung" - allerdings trifft dies beim Backofen nicht zu.

LG

pah

isy

#55
Nach deletereading und FHEM Neustart erscheint die Temperatur neu:
Status.CurrentCavityTemperature 33 2025-01-05 12:08:57Nur die Zahl, keine Einheit.
Der Wert ändert sich nicht, wenn die Temperatur steigt.

Siehe List vom Device und letztes Log

Ein Weg wird erst zu einem Weg, wenn man ihn geht

isy

Zitat von: Prof. Dr. Peter Henning am 05 Januar 2025, 12:16:17Leider lässt sich mit dem API, auf das FHEM zugreift, der Backofen NICHT einschalten. Auch das Kochfeld nicht - beides ist aber schon seit Jahren bekannt.

Das Einzige, was man über FHEM bei den beiden steuern kann, ist der Kurzzeitwecker (Alarm) und die Kindersicherung.

Angeblich begründet HC das mit "Sicherheit" und "gesetzliche Regelung" - allerdings trifft dies beim Backofen nicht zu.

LG

pah

Ah, OK, dann brauchen wir da auch nicht zu suchen  ;)
Ein Weg wird erst zu einem Weg, wenn man ihn geht

Adimarantis

Die "no program selected" Meldung kommt allerdings schon beim Holen der ProgramOptions - das sollte doch eigentlich gehen.... Hab da mal eine Kleinigkeit geändert - vielleicht eine Race Condition.

Ich habe in der gerade eingecheckten Version das logging nochmal bisschen nachgebessert.
Außerdem sollte die Einheit jetzt kommen.

Die aktuelle Temperatur scheint nicht als Event zu kommen (wahrscheinlich mal wieder "not supported" in der developer API).
Du kannst schauen, ob sie mit "get Status" zumindest manuell aktualisiert wird.
Dann noch ein Test ob "GetProgramOptions" funktioniert, wenn du sicher ein "SelectedProgram" Reading hast.

Danke,
Jörg
Raspberry 4 + HM-MOD-RPI-PCB (pivCCU)/RfxTrx433XL/Zigbee
Module: 50_Signalbot, 48_HomeConnect, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)

isy

Dank von meiner Seite vor allem!

Also habe ich die neu Version geladen.
Nach Restart FHEM folgende Info im FHEM Log:
2025.01.05 12:59:08 1: [HomeConnect_Init] for HB772G1B1 called
2025.01.05 12:59:08 1: [HomeConnect_ResponseInit] HB772G1B1: defined as HomeConnect Oven Siemens HB772G1B1
2025.01.05 12:59:09 1: [HomeConnect_Init] for EX977NVV6E called
2025.01.05 12:59:09 1: [HomeConnect_ResponseInit] EX977NVV6E: defined as HomeConnect Hob Siemens EX977NVV6E
2025.01.05 12:59:10 3: sduino868/init: get version, retry = 1
2025.01.05 12:59:10 1: [HomeConnect_Init] for SN63E800BE called
2025.01.05 12:59:10 1: [HomeConnect_ResponseInit] SN63E800BE: defined as HomeConnect Dishwasher Siemens SN63E800BE
2025.01.05 12:59:16 1: [HomeConnect_ResponseGetPrograms] EX977NVV6E: no programs found
2025.01.05 12:59:31 1: [HomeConnect_ResponseGetPrograms] EX977NVV6E: no programs found
2025.01.05 12:59:44 1: [HomeConnect_ResponseGetPrograms] EX977NVV6E: no programs found
2025.01.05 12:59:50 3: sduino868/init: get version, retry = 2

"EX" ist das Kochfeld, das hat keinerlei Programme an Board. Das ist also OK, eine Logmeldung diesbezüglich wäre dann unnötig (Kosmetik).

Der Backofen meldet eine Temperatur mit richtiger Einheit. Keine Fehler dort.
Die Temperatur ist mit 33 Grad allerdings (nach dem FHEM Restart) falsch, sie beträgt lt. Display am Ofen 45 Grad.
Es erfolgt auch manuell kein Update. Ich denke, das ging mit dem 3 Jahre alten Modul, bin mir aber nicht sicher.

Beim Status "HotAir (0:00)" ändert sich die Zeit (state2) nicht mehr, das ging, meine ich, in vorherigen Versionen.

GetProgramOptions liefert beim laufendem Backofen Readings mit neuem Zeitstempel, allerdings ohne den Inhalt zu ändern, siehe Logs.

Ich habe das Logfile mal gelöscht und hier neu eingefügt.






Ein Weg wird erst zu einem Weg, wenn man ihn geht

Adimarantis

Solange das "no programs found" nur im Log und nicht im lastErr auftaucht sollte es ok sein.
Wenn das Kochfeld nie Programme haben kann, macht es aber wahrscheinlich Sinn den Typ "Hob" aus der Progammlogik rauszunehmen.

Wegen potentieller Updates der Ofentemperatur bitte mal ein Log über eine Zeit mitlaufen lassen. Es geht ja um die ElapsedTime, richtig? Und die sollte dann im "state2" Reading landen.
Ich sehe da in deinem letzen Log seltsame Sachen - da springt dieser Wert zwischen 0 und einer größeren Zahl hin- und her - sind aber nur zwei Einträge dazu im Log.

Das sich state2 jemals geändert haben soll, fände ich seltsam - in deinen Logs ist es entweder "-" oder "0:00", was auch logisch ist, da es fix aus RemainingProgramTimeHHMM kommt - und das hat der Ofen gar nicht. Da muss dann noch eine Logik rein, die Zeit von woanders zu nehmen, wenn das der Fall ist.
Hat der Ofen auch einen Alarm? (das Kochfeld sicher) - das wäre auf jeden Fall etwas zum anzeigen. Ein Test damit wäre nett :)

Das Problem mit den Programmen mit "." sollte jetzt behoben sein. Hatte zum Glück auch eins bei meiner Waschmaschine, konnte das Problem nachvollziehen und bei mir geht es jetzt, die ProgramOptions zu holen.
In SelectedProgram steht das Programm jetzt halt mit Punkt - aber das ist auch ok, damit man mit dem "translate" Attribut eine übersetze Version erstellen kann.

Raspberry 4 + HM-MOD-RPI-PCB (pivCCU)/RfxTrx433XL/Zigbee
Module: 50_Signalbot, 48_HomeConnect, 52_I2C_ADS1x1x , 58_RPI_1Wire, (50_SPI_MAX31865)