Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Einrichtung, Nutzung und Hilfe zu RaspberryMatic (OCCU auf Raspberry Pi)

Moderatoren: jmaus, Co-Administratoren

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jp112sdl » 16.01.2023, 18:50

Baxxy hat geschrieben:
16.01.2023, 18:21
Oder meldest du dich etwa freiwillig? :lol: :wink:
Ja. Alles andere wäre inkonsequent.
MichaelN hat geschrieben:
16.01.2023, 18:39
Wäre es nicht ausreichend das beim booten zu machen? Kann das denn jede Woche plötzlich auftreten?
Wobei ich Michael hier zustimme.
So wie ich es verstanden habe, kann das fehlerhafte Verhalten nur dann auftreten,
- wenn eine falsche (zu neue) Gerätefirmware eingespielt wird, die mehr Parameter unterstützt, als die aktuelle CCU Version (sprich HMIPServer) verwaltet.
- wenn ein Gerät mit einem neueren Firmware-Versionsstand ausgeliefert wird, als von der aktuell laufenden CCU-FW unterstützt wird
An dieser Stelle ist der "Murks" noch nicht feststellbar.

Wird dann ein CCU-FW-Update durchgeführt, dessen Version nun die neuere Geräte-Firmware mit ihren neuen/zusätzlichen Parametern unterstützt, hängt in der Gerätekonfigurationsdatei (in /etc/config/crRFD/data) weiterhin der alte Parameterstand "fest".
Der HMIPServer ist darauf getrimmt, diese Datei nur dann zu aktualisieren, wenn ein Gerätefirmware-Update erfolgt

Insofern würde es ausreichen, wenn das Skript einmalig nach einem CCU-FW-Update läuft.

Und wie schon an anderer Stelle erwähnt - gehört hier eigentlich der HMIPServer dahingehend gefixt (oder erweitert), solche Inkonsistenzen beim Starten selbst zu reparieren.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
jmaus
Beiträge: 9844
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 462 Mal
Danksagung erhalten: 1863 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jmaus » 16.01.2023, 19:32

MichaelN hat geschrieben:
16.01.2023, 18:39
Sonntags, 05:00 Uhr.
Wäre es nicht ausreichend das beim booten zu machen? Kann das denn jede Woche plötzlich auftreten?
Könnte man, wenn man sicherstellen könnte bzw. genau wüsste wann man das machen sollte. Ist im Startup nicht ganz so einfach, denn HmIPServer und ReGaHss müssen ja gestartet sein damit das alles funktioniert was der Skript macht. Da war es einfach einfacher nen cronjob zu machen. Tut ja auch nicht weh die paar sekunden pro woche.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

Benutzeravatar
jmaus
Beiträge: 9844
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 462 Mal
Danksagung erhalten: 1863 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jmaus » 16.01.2023, 19:33

jp112sdl hat geschrieben:
16.01.2023, 18:50
Und wie schon an anderer Stelle erwähnt - gehört hier eigentlich der HMIPServer dahingehend gefixt (oder erweitert), solche Inkonsistenzen beim Starten selbst zu reparieren.
Ist halt nicht in unserer Hand und eQ3 sieht das Problem aktuell noch nicht als wirklich relevant an wie es aussieht.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jp112sdl » 17.01.2023, 06:21

jmaus hat geschrieben:
16.01.2023, 19:32
Könnte man, wenn man sicherstellen könnte bzw. genau wüsste wann man das machen sollte. Ist im Startup nicht ganz so einfach, denn HmIPServer und ReGaHss müssen ja gestartet sein damit das alles funktioniert was der Skript macht.
10min. nach einem Neustart sollten ausreichend sein.
Den at-Scheduler gibt es im RaspberryMatic Image nicht. Aber mit sleep könnte die Ausführung in der crontab verzögert werden.

Code: Alles auswählen

@reboot sleep 600 && /bin/checkHmIPconsistency.tcl
Der tägliche Alarm ist vielleicht für diejenigen nervig, die nicht die Möglichkeit haben, den Fehler gleich zu beseitigen.
Gerade wenn man Push-Meldungen einsetzt, die bei Alarmen etwas höher priorisiert sind.
Der Alarm kommt jeden Tag aufs Neue.

Bis zum nächsten Release ist die Deaktivier-Option über die erweiterten Einstellungen wohl mit drin.
Das führt zwar dazu, dass 1x deaktiviert, es wohl nie wieder eingeschaltet wird und dann wieder der Zustand herrscht, dass man gar nix mehr von den Inkonsistenzen mitbekommt.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
jmaus
Beiträge: 9844
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 462 Mal
Danksagung erhalten: 1863 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jmaus » 17.01.2023, 08:24

jp112sdl hat geschrieben:
17.01.2023, 06:21
jmaus hat geschrieben:
16.01.2023, 19:32
Könnte man, wenn man sicherstellen könnte bzw. genau wüsste wann man das machen sollte. Ist im Startup nicht ganz so einfach, denn HmIPServer und ReGaHss müssen ja gestartet sein damit das alles funktioniert was der Skript macht.
10min. nach einem Neustart sollten ausreichend sein.
Den at-Scheduler gibt es im RaspberryMatic Image nicht. Aber mit sleep könnte die Ausführung in der crontab verzögert werden.

Code: Alles auswählen

@reboot sleep 600 && /bin/checkHmIPconsistency.tcl
Darüber hatte ich auch schon nachgedacht, aber sleep 600 muss auch nicht treffsicher sein und wer sagt das dann alles bereits ordnungsgemäß hochgefahren ist?!? Oder ich bau etwas in das check Skript selbst ein was auf den HMIPServer und ReGaHss start wartet und dann erst weiter macht. Aber auch da wissen wir ja das ReGa mitunter ne weile braucht um sich "einzupendeln". Aber ja, prinzipiell bin ich auch dafür das nur 1x beim Start diese Prüfung stattfindet und es nicht zwingend regelmäßig 1x die Woche passieren muss. Vielleicht finden wir ja noch einen guten Kompromiss...
jp112sdl hat geschrieben:
17.01.2023, 06:21
Der tägliche Alarm ist vielleicht für diejenigen nervig, die nicht die Möglichkeit haben, den Fehler gleich zu beseitigen.
Gerade wenn man Push-Meldungen einsetzt, die bei Alarmen etwas höher priorisiert sind.
Der Alarm kommt jeden Tag aufs Neue.
Warum täglich? Der aktuelle cronjob ist doch so eingestellt das 1x die *Woche* das ausgeführt wird.
Bis zum nächsten Release ist die Deaktivier-Option über die erweiterten Einstellungen wohl mit drin.
Das führt zwar dazu, dass 1x deaktiviert, es wohl nie wieder eingeschaltet wird und dann wieder der Zustand herrscht, dass man gar nix mehr von den Inkonsistenzen mitbekommt.
Ich bin ehrlich eh kein große Fan davon mehr und mehr solche Dinge in die erweiterten Einstellungen als WebUI Element hinzuzufügen, denn sonst krankt das ganze irgendwann genauso wie Windows. Nämlich das man hunderte Optionen hat die keiner mehr durchschaut. Deshalb würde ich am liebsten in der Tat für diese simple Prüfaktion eigentlich gar kein "NoXXXXCheck" vorsehen, denn ich denke das sollte wirklich bei jedem ausgeführt werden. Für das "SetInterfaceClock" haben wir ja auch keien NoXXXCheck Option und das aus gutem grund.
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

MichaelN
Beiträge: 9650
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von MichaelN » 17.01.2023, 09:01

jmaus hat geschrieben:
17.01.2023, 08:24
Darüber hatte ich auch schon nachgedacht, aber sleep 600 muss auch nicht treffsicher sein und wer sagt das dann alles bereits ordnungsgemäß hochgefahren ist?!
Dann mach halt sleep 3600
Es ist ja nicht Zeit kritisch.
Und nach 1 Stunde sollte das System wieder rund laufen.
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Benutzeravatar
jmaus
Beiträge: 9844
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 462 Mal
Danksagung erhalten: 1863 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jmaus » 17.01.2023, 09:06

MichaelN hat geschrieben:
17.01.2023, 09:01
jmaus hat geschrieben:
17.01.2023, 08:24
Darüber hatte ich auch schon nachgedacht, aber sleep 600 muss auch nicht treffsicher sein und wer sagt das dann alles bereits ordnungsgemäß hochgefahren ist?!
Dann mach halt sleep 3600
Es ist ja nicht Zeit kritisch.
Und nach 1 Stunde sollte das System wieder rund laufen.
Inzwischen solltest du mich kennen und wissen, das ich solche "murky" Sachen wirklich nicht gerne mag und daher bessere/stabilere Lösungen finden möchte. Solche "sleep XXX" Verzögerungen existieren in 99% der Fälle nur um entweder ein Workaround für ein vermeintlich unlösbares Problem zu haben oder schlichtweg die Faulheit des Erfinders auszugleichen :mrgreen:
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jp112sdl » 17.01.2023, 09:18

jmaus hat geschrieben:
17.01.2023, 08:24
Warum täglich? Der aktuelle cronjob ist doch so eingestellt das 1x die *Woche* das ausgeführt wird.
Ja stimmt, die letzte 0 hatte ich übersehen.
jmaus hat geschrieben:
17.01.2023, 08:24
Ich bin ehrlich eh kein große Fan davon mehr und mehr solche Dinge in die erweiterten Einstellungen als WebUI Element hinzuzufügen,
Na gut, war zwar schon fertig, aber ist nicht weiter schlimm.
jmaus hat geschrieben:
17.01.2023, 08:24
Für das "SetInterfaceClock" haben wir ja auch keien NoXXXCheck Option und das aus gutem grund.
Da steckt ja auch eine notwendige Funktion dahinter, um den HM Geräten die Uhrzeit mitzuteilen.

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

jp112sdl
Beiträge: 12108
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 848 Mal
Danksagung erhalten: 2148 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jp112sdl » 19.01.2023, 10:59

jmaus hat geschrieben:
12.01.2023, 20:49
weil eQ3 die 1.22.8 Firmware freigegeben hatte mit einer falschen CCU minVersion Angabe, sodass Nutzer wie ich die sehr früh die 1.22.8 FW der FSM16 einspielen lassen hatten leider dieser Geräteparameter dem HMIPServer noch nicht bekannt war und dies nun erst mit der 3.67.10 Version wohl überhaupt der Fall ist. Das hatte dann eben zur Folge das man zwar die 1.22.8 Firmware des FSM16 installiert hatte, aber der HMIPServer von dem neuen Parameter gar nichts mitbekommen konnte, eben weil die interne Gerätebeschreibung nicht passte. Das selbe passiert dann sicherlich auch Leuten die hier regelmäßig auftauchen mit neueren Gerätefirmwareversionen als das was für die CCU Firmware vorgeschrieben wird und denen dann eben ein downgrade vorgeschlagen wird.
Die Datei wurde ausgetauscht und unter dem selben Namen wieder veröffentlicht:
viewtopic.php?f=58&t=75048&p=753800#p753800

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
jmaus
Beiträge: 9844
Registriert: 17.02.2015, 14:45
System: Alternative CCU (auf Basis OCCU)
Wohnort: Dresden
Hat sich bedankt: 462 Mal
Danksagung erhalten: 1863 Mal
Kontaktdaten:

Re: Inkonsistenzen bei HmIP bzgl. getParamset() vs. getParamsetDescription()

Beitrag von jmaus » 19.01.2023, 11:00

jp112sdl hat geschrieben:
19.01.2023, 10:59
jmaus hat geschrieben:
12.01.2023, 20:49
weil eQ3 die 1.22.8 Firmware freigegeben hatte mit einer falschen CCU minVersion Angabe, sodass Nutzer wie ich die sehr früh die 1.22.8 FW der FSM16 einspielen lassen hatten leider dieser Geräteparameter dem HMIPServer noch nicht bekannt war und dies nun erst mit der 3.67.10 Version wohl überhaupt der Fall ist. Das hatte dann eben zur Folge das man zwar die 1.22.8 Firmware des FSM16 installiert hatte, aber der HMIPServer von dem neuen Parameter gar nichts mitbekommen konnte, eben weil die interne Gerätebeschreibung nicht passte. Das selbe passiert dann sicherlich auch Leuten die hier regelmäßig auftauchen mit neueren Gerätefirmwareversionen als das was für die CCU Firmware vorgeschrieben wird und denen dann eben ein downgrade vorgeschlagen wird.
Die Datei wurde ausgetauscht und unter dem selben Namen wieder veröffentlicht:
viewtopic.php?f=58&t=75048&p=753800#p753800
Ich weiss :) Und was denkste wer das angetriggert hatte? :mrgreen:
RaspberryMatic 3.75.6.20240316 @ ProxmoxVE – ~200 Hm-RF/HmIP-RF/HmIPW Geräte + ioBroker + HomeAssistant – GitHub / Sponsors / PayPal / ☕️

Antworten

Zurück zu „RaspberryMatic“