Neuigkeiten:

Am Sonntag den 8.12.2024 kann es ab ca. 8:00 Uhr zu kurzzeitigen Einschränkungen / Ausfällen bei den Diensten des FHEM Vereines kommen.
Die Server müssen mal gewartet und dabei neu gestartet werden ;)

Hauptmenü

HOMEMODE & Fritzbox: Fehler mit Ledsetting

Begonnen von caldir65, 14 September 2024, 16:09:46

Vorheriges Thema - Nächstes Thema

caldir65

Moin,

ich weiß jetzt nicht genau, wo es her kommt, aber ich finde im Zusammenhang mit Fritzbox / Ledsetting folgenden Fehler im Log:
2024.09.12 19:00:03.304 1: ################### Routine Abend: ###################
2024.09.12 19:00:05.477 3: CUL_HM set Heizung_Arbeitszimmer_Clima desired-temp 18.0
2024.09.12 19:00:07.024 3: Home: error: ledsetting: ok
2024.09.12 19:00:07.024 3: Home: error in command: {Log 1, ("################### Routine Abend: ###################")}; set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=SET_POINT_MODE!=manual manu; set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=desired-temp!=18.0 desired-temp 18.0; set Heizung_Arbeitszimmer_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0; set Heizung_Arbeitszimmer_Clima:FILTER=controlMode!=manual controlMode manual; set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual; set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0; set Fritzbox ledSetting led:off;
Geschaltet werden die LED morgens einmal an, und abends einmal aus, beides im Modul HOMEMODE:
{Log 1, ("################### Routine Abend: ###################")};
set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=SET_POINT_MODE!=manual manu;
set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=desired-temp!=18.0 desired-temp 18.0;
# set Thermostat_Joschua:FILTER=SET_POINT_MODE!=manual manu;
# set Thermostat_Joschua:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Heizung_Arbeitszimmer_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Heizung_Arbeitszimmer_Clima:FILTER=controlMode!=manual controlMode manual;
set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual;
set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Fritzbox ledSetting led:off;
sowie{Log 1, ("<br><br><br>################# Morgens #<br>br><br><br>################")};
set Fritzbox ledSetting led:on;
set wz_Wohnzimmer_Heizung_Climate:FILTER=controlMode!=manual controlMode manual;
set wz_Wohnzimmer_Heizung_Climate:FILTER=desired-temp!=20.0 desired-temp 20.0;
set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual;
set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=20.0 desired-temp 20.0;

Gebe ich den Befehl set Fritzbox ledSetting led:on;in der fhem-cmd händisch ein, funktioniert es ohne Fehlermeldung, ich bekomme nur eine Rückmeldung ledsetting: ok
Da ich keinen Fehler mehr bekomme. sobald ledsetting auskommentiert wird, könnte hier evtl. ein Problem im Zusammenspiel zwischen Fritzbox und Homemode problematisch sein?

Die Funktion wird trotzdem ausgeführt - morgens LEDs der FB an und abends wieder aus.

Gruß, Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

DeeSPe

Moin caldir65,

sobald FHEM-Befehle und Perl-Code gemischt werden, kann es zu unvorhersehbaren Schwierigkeiten kommen.
Das ist aber keine Eigenheit von HOMEMODE, sondern generell problematisch in FHEM.
Ich empfehle entweder aus dem Log Befehl einen cmdalias zu machen, oder entsprechend alles auf Perl Syntax umschreiben, z.B. so:
{
  Log 1,'################### Routine Abend: ###################';
  fhem '
    set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=SET_POINT_MODE!=manual manu;
    set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=desired-temp!=18.0 desired-temp 18.0;
    set Heizung_Arbeitszimmer_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
    set Heizung_Arbeitszimmer_Clima:FILTER=controlMode!=manual controlMode manual;
    set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual;
    set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
    set Fritzbox ledSetting led:off
    ';
}

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

DeeSPe

Mit diesem cmdalias:
define ca_log1 cmdalias log1 .* AS {Log 1,"$EVENT"}könnte der Inhalt Deiens Attributs so aussehen:
log1 ################### Routine Abend: ###################;
set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=SET_POINT_MODE!=manual manu;
set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=desired-temp!=18.0 desired-temp 18.0;
# set Thermostat_Joschua:FILTER=SET_POINT_MODE!=manual manu;
# set Thermostat_Joschua:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Heizung_Arbeitszimmer_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Heizung_Arbeitszimmer_Clima:FILTER=controlMode!=manual controlMode manual;
set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual;
set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0;
set Fritzbox ledSetting led:off

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

caldir65

Moin,

sry, aber ich bin erst jetzt dazu gekommen, dies zu lesen ;-) Ich werde es mal so probieren, solald ich es schaffe - vermutlich am Feiertag ;-)

Gruß
Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

caldir65

Moin,

leider kommen immer noch Fehler im Log:

2024.11.11 19:00:07.917 1: ################### Abend ###################
2024.11.11 19:00:07.918 3: Home: error: ledsetting: ok
2024.11.11 19:00:07.918 3: Home: error in command: set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=SET_POINT_MODE!=manual manu; set HmIP_eTRV_E_002A9F29B3FFE5:FILTER=desired-temp!=18.0 desired-temp 18.0; set Heizung_Arbeitszimmer_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0; set Heizung_Arbeitszimmer_Clima:FILTER=controlMode!=manual controlMode manual; set HM_Handtuchheizung_Bad_Clima:FILTER=controlMode!=manual controlMode manual; set HM_Handtuchheizung_Bad_Clima:FILTER=desired-temp!=18.0 desired-temp 18.0; set Fritzbox ledSetting led:off; log1 ################### Abend ###################

Ich habe Deine Idee so wie o. beschrieben umgesetzt ...

Gruß
Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

DeeSPe

Das Problem kommt von diesem "set":
set Fritzbox ledSetting led:off
Sicher dass das so richtig ist?
Funktioniert das fehlerfrei in der FHEM Eingabezeile?

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

caldir65

Moin
Zitat von: DeeSPe am 12 November 2024, 20:40:25Das Problem kommt von diesem "set":
set Fritzbox ledSetting led:off
Sicher dass das so richtig ist?
Funktioniert das fehlerfrei in der FHEM Eingabezeile?

Gruß
Dan

Moin,

ja, das funktioniert einwandfrei, es wird quittiert mit ledsetting: ok
Es funktioniert ja auch aus der Homemode-Zeile, nur da habe ich eben diese Fehler-Einträge


Auszug aus der Help zu Fritzbox.pm:
set <name> ledSetting <led:on|off> und/oder <bright:1..3> und/oder <env:on|off>

Die Anzahl der Parameter variiert von FritzBox zu Fritzbox zu Repeater.
Die Möglichkeiten können über get <name> luaInfo ledSettings geprüft werden.

<led: <bright:1..3> reguliert die Helligkeit der LED's von 1=schwach, 2=mittel bis 3=sehr hell.
<env:on|off> schaltet Regelung der Helligkeit in abhängigkeit der Umgebungshelligkeit an oder aus.
Benötigt FRITZ!OS 7.21 oder höher.

Gruß, Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.

DeeSPe

Ahhh, jetzt weiß ich.
Das Problem ist die Rückmeldung beim erfolgreichen Absetzen des Befehls.
Eigentlich ist FHEM und eben auch HOMEMODE so konzipiert wie Linux: bei erfolgreichem Befehl gibt es keine Rückmeldung und bei nicht erfolgreichem Befehl kommt die Fehlermeldung zurück.
Für einige (mir bekannte) Befehle habe ich in HOMEMODE schon eine Ausnahmebehandlung eingebaut.
In der aktuellen Version von HOMEMODE stehen diese Ausnahmen in Zeile 2513.
Wenn du dich dazu in der Lage fühlst, könntest du lokal bei dir die dort bestehende Zeile ändern in diese:
  if ($err && $err !~ /^Deleted.reading|Wrote.configuration|good|Scheduled.for.sending.after.WAKEUP|ledsetting/)Danach Modul reloaden oder FHEM neustarten.
Dann sollte es vorbei sein mit den "Fehlermeldungen".

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

caldir65

Moin,

ich werde es mal testen, eingetragen ist es ... Ich werde wieder berichten ;-)

Gruß, Christoph
Alte Techniker-Regel: "kaum macht man es richtig, funktioniert es auch"
------
Dell Wyse5070 ThinClient 16GBRam, 128GB SSD, Lubuntu 24.04.01LTS, fhem (aktuell), debmatic, Homematic-Devs, ConBee II und deConz, viele Shellys, Rademacher, NextCloud-Anbindung, FullyKioskBrowser+FUIP uvm.