Autor Thema: Modul weekprofile + FHEMWEB widget  (Gelesen 120730 mal)

Offline Risiko

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 788
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #675 am: 18 September 2021, 21:19:28 »
Hallo beaune,

mir geht es nicht um den Aufwand und die größer der Änderung in weekprofile. Mir geht es um einen einheitlichen Ansatz, welcher hier meiner Meinung nach verletzt wird, welcher für alle mir bekannten Heizsysteme aber passt. Weekprofile wurde designed um Wochenprofile (Zeit + Temperatur) zu verwalten und diese einfach um\einstellen zu können. Ein Wochenprofil legt fest, welche Temperatur an welchem Tag zu welcher Uhrzeit vorliegen soll. Zum ein- bzw verstellen eines Profils schickt weekprofile das Profil an ein Modul, welches die Einstellung dann vornimmt (hier ist ja nicht gesagt, dass die Hardware z.B. Thermostat das Profil direkt annimmt\speichert). 

Meiner Meinung nach fehlt eben hier an ein Modul, was das "Sonderverhalten" von ebus gegenüber einer Homatic, MAX, "normalen Thermostaten" ausgleicht.
Ich habe verstanden, dass dein System keine Verwaltung Zeit + Temperatur kann. ABER man kann Sollwerte einstellen. Bei Homatic oder MAX stellt das Gerät\Thermostat selbst den Sollwert entsprechend Zeitintervall ein. Das müsste hier meiner Meinung nach ein FHEM-Modul machen.  Also eine Übersetzung von einem Wochenprofil in die ebus Logik.
Bei all mir bekannten Systemen kann man die Solltemperatur unabhängig vom Profil\Zeitplan einstellen. Das hat aber überhaupt nichts mit weekprofile zu tun.

Wenn es so nicht passt, dann ist weekprofile nicht das richtige Modul (auch wenn ggf. vieles verwendet werden könnte).
Wenn es eben nur um Zeitpläne geht, dann wäre meiner Meinung nach ein anderes Modul notwendig.

Risiko



« Letzte Änderung: 18 September 2021, 21:27:03 von Risiko »

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15761
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #676 am: 19 September 2021, 09:36:47 »
Habs gefixt.
Danke!

Jetzt hoffen wir mal, dass die Änderung nicht "komische" Nebenwirkungen hat - das Problem ist, dass weekprofile damit möglicherweise die Funktionen aus 99_Utils überschrieben hatte und _andere_ Module/myUtils-Funktionen, die min/max haben wollen, plötzlich anders funktionieren, falls weekprofile das einzige Modul war, das an der Stelle so gestrickt war.

Zitat
data::Dumper wird doch nur im Fehlerfall verwendet, um die Daten auszugeben und nicht zur JSON-Evaluierung selbst.
Auch hier besteht m.E. nach wie vor das Problem, dass Data::Dumper durch dieses use in main verfügbar wird. also wenn überhaupt, sollte man vermutlich das use nur im Fehlerfall (in der konkreten Teilfunktion) absetzen. Muss aber zugeben, dass ich das auch nicht in der letzten Verästelung verstanden habe, vielleicht schaust du mal in https://forum.fhem.de/index.php/topic,109755.0.html rein. Da ist btw. auch noch "Storable" als Kritikpunkt zu finden.
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline Risiko

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 788
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #677 am: 19 September 2021, 20:50:34 »
@Risiko:
- zum anderen ist das userAttr "weekprofile" ja (aus Sicht der commandref) eigentlich eines, das zu weekprofile gehört. Dazu müsste man aber den betreffenden "fremden Modul-Instanzen" mitteilen, dass die Hilfe aus weekprofile kommt. Da es nur einzelne Instanzen betrifft (und nicht alle), müsste für diese Fälle dann addToDevAttrList aufgerufen werden, siehe Link unten (erster commit, die Schleife war da aber schon da).
Habe das heute mal eingebaut. Das userattr wird auch angelegt, doch die Hilfe wird bei der Selektion von weekprfofile im fremden Device nicht angezeigt. Muss man da noch was beachten z.B. abweichende ID-Syntax? Finde zu dem Thema leider auch (mal wieder) keine Dokumentation.

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15761
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #678 am: 20 September 2021, 08:53:10 »
Habe das heute mal eingebaut. Das userattr wird auch angelegt, doch die Hilfe wird bei der Selektion von weekprfofile im fremden Device nicht angezeigt. Muss man da noch was beachten z.B. abweichende ID-Syntax? Finde zu dem Thema leider auch (mal wieder) keine Dokumentation.
Na ja, die "Doku" sind nachfolgender Beitrag von Rudi und entsprechende Beispiele, auf die ja verlinkt war:
Das funktioniert mit data-pattern="o.*Cmd" (gerade getestet).
Wichtig: das ID der ersten <a> in der Hilfe dient als Modulbezeichner, d.h. die Hilfe sollte mit <a id="RandomTimer"></a> anfangen.
Um das zu wissen, muss FHEM wissen, wer dieses Attribut spendiert hat.

Ich habe jetzt addToDevAttrList und addToAttrList mit einem optionalen $module Parameter erweitert, damit kann man die Quelle spezifizieren.

Damit erscheinen in der Liste die FHEMWEB Attribute im FHEMWEB-Abschnitt (und nicht mehr unter "global userattr") und die Modul eigenen Attribute unter dem Abschnitt mit dem Modulnamen (nicht mehr "Module").
Letzteres kann man als Nachteil empfinden, weil damit die Modulattribute je nach Modulnamen ganz nach unten rutschen koennen.

Benötigt wird also ein entsprechender Abschnitt in der commandref, z.B.:
Zitat
<a id="weekprofile-attr-weekprofile"></a>
Helps weekprofile to identify it's client devices at the time a <i>restore_topi</i> command is issued.

Und in den (CUL_HM, MAX, ....-) Client-Instanzen muss das userattr eben über addToDevAttrList() nicht "allgemein" vohanden sein, sondern dort muss ergänzend das "weekprofile" (als Modulkenner) gesetzt sein, wie hier für AutoShuttersControl:
             - addToDevAttrList( $shuttersDev, $attrib )
+ addToDevAttrList( $shuttersDev, $attrib, 'AutoShuttersControl' )
Ergo müßte in der Schleife für alle Clients dann eben sowas stehen:
addToDevAttrList( $clientDev, 'weekprofile', 'weekprofile' )
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline Risiko

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 788
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #679 am: 20 September 2021, 11:32:14 »
Danke. So ausführlich wäre es garnicht notwendig gewesen  ;). Mein Fehler war der optionale Parameter in addToDevAttrList

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 15761
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #680 am: 20 September 2021, 11:41:54 »
Gerne. Hatte nur gesehen, dass der Link auf den commit irgendwie kaputt ist, und dann ist es in der Tat etwas schwierig nachzuvollziehen, an was es hängt bzw. wie das konkret aussehen muss...

Danke für's Aufgreifen der Anregung!
Server: HP-T620@Debian 10, aktuelles FHEM + ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline stolus

  • New Member
  • *
  • Beiträge: 31
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #681 am: 22 Oktober 2021, 14:09:57 »
@Risiko
Ich nutze das Modul "weekprofile" schon länger, vielen Dank für Deine Arbeit!

Im Moment habe ich gerade den Überblick verloren welche Arten von Devices unterstützt werden.
Ich bin auf das Modul "HMCCU" (Raspberymatic) umgestiegen und nutze die Version 5.0 von HMCCU.

Die meisten Devices in FHEM (z.B. HM-CC-RT-DN) werden jetzt in Version 5.0 als TYPE=HMCCUCHN angelegt, beim Übertragen des profils (send to device) kommt die Fehlermeldung "Error device type not supported"

Ich habe mehrere Thermostate zu Heizgruppen in der CCU (Raspberymatic) zusammengefügt, daraus wird in FHEM ein Device mit dem TYPE=HMCCUDEV, allerdings ein VirtualDevices ccutype=HM-CC-VG-1.
Beim Übertragen des profils (send to device) kommt die Fehlermeldung: "KEL.Wohnen.Heizgruppe Invalid parameter specified. Valid parameters are HASH(0x55fe5e9b1328)"

Hier komme ich leider alleine nicht weiter und benötige eine Rat.

FHEM im Proxmox 6.4 LXC
Raspberrymatic mit RPI-RF-MOD für Homematic
ESPEasy/Tasmota/Shelly
Bayernlüfter, Plenticore Solar mit KSME EM410
Dimplex DHW300+

Offline Risiko

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 788
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #682 am: 22 Oktober 2021, 17:13:33 »
Hallo stolus,

ich habe von dieser Hardware keine Ahnung, bekomme das auch nicht mit und kann daher immer nur hinterher programmieren, wenn es auf der Seite (von Homatic, Raspberymatic, etc.) was Neues gibt. Dazu benötige ich natürlich die Informationen von euch Usern (list vom Device, Readings, Befehl zum setzen des Profils).
Leider hält sich der Homatic-Entwickler aus meiner Sicht nicht an irgend eine Konvention bzw. Logik (jedenfalls mir nicht ersichtlich).

Also wenn du mir die notwendigen Informationen zur Verfügung stellen kannst, dann kann ich mal schauen was sich machen lässt.

Risiko

Offline kadettilac89

  • Hero Member
  • *****
  • Beiträge: 1455
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #683 am: 22 Oktober 2021, 20:10:49 »
@Risiko

HMCCU ist das Modul welches eine originale CCU2 / CCU3 (und Derivate wie Raspberrymatic) anspricht. Das ist eine eigene Homematic Zentrale die mit den Thermostaten kommuniziert. Es ist ein alternatives Setup mit eigenen Readings und Verhalten. Da wirst du kaum etwas aus der vorhandenen Homematic Implementierung übernehmen können. Bei der aktuellen Implementierung ist Fhem die Zentrale und Thermostate sind in Fhem angebunden. Bei einer CCU sind die Thermostate an die CCU angelernt und angebunden. Fhem kommuniziert dann mit der CCU

@stolus, welche Hardware nutzt du, hast du HOmematic IP im Einsatz?

Offline stolus

  • New Member
  • *
  • Beiträge: 31
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #684 am: 23 Oktober 2021, 18:26:26 »
@Risiko
ich habe drei Lists der Devices HM-CC-RT-DN (Homematic Heizkörperthermostat), HM-TC-IT-WM-W-EU (Homematic Wandthermostat) und von dem virtuellen Device HM-CC-VG angehängt.
Die ersten beiden sind jetzt Device vom TYPE=HMCCUCHN, ich vermute das dort der Unterschied liegt.
FHEM im Proxmox 6.4 LXC
Raspberrymatic mit RPI-RF-MOD für Homematic
ESPEasy/Tasmota/Shelly
Bayernlüfter, Plenticore Solar mit KSME EM410
Dimplex DHW300+

Offline Risiko

  • Developer
  • Sr. Member
  • ****
  • Beiträge: 788
Antw:Modul weekprofile + FHEMWEB widget
« Antwort #685 am: 23 Oktober 2021, 19:28:16 »
Hallo stolus,

HMCCUCHN kannte weekprofile noch nicht. Anbei eine Testversion, wo es hoffentlich geht.

Das HM-CC-VG-1 vom Typ HMCCUDEV sollte eigentlich funktionieren. Dann bräuchte ich mal ein Log von weekprofile mit verbose 4 beim Senden\Übertragen des Profils
Da es ein virtuelles Device ist, ist vermutlich der Befehlssyntax anders!? Wie ist denn der genaue Befehl zum Setzen eines Profils bei diesem virtuellen Device?

Kann man ccuif zur Erkennung eines virtuellen Devices nehmen?

Risiko