Modul weekprofile + FHEMWEB widget

Begonnen von Risiko, 23 Dezember 2015, 20:16:54

Vorheriges Thema - Nächstes Thema

Risiko

#570
Zitat von: Wzut am 03 März 2020, 07:30:52
@Risiko, noch einen kleinen Wunsch :
In meiner PopUp Liste der möglichen Ziel Geräte sind IMHO einige zuviel.
Du könntest z.B. in weekprofile_ getDeviceType für gültige $type noch folgende Extra Prüfungen zum ausfiltern machen :
für Typ HM und MAX (bzw vermutlich global für alle)  -> IsIgnored(Devicename) und IsDummy(Devicename)
für Typ HM -> Attribut readOnly != 1
Lässt sich sicherlich machen.
Hättest du auch ein list von solchen Geräten?
Wenn wir einmal dabei sind, was ist mit IsDisabled?
readOnly bei HM heißt, ich kann das Profile abfragen aber nicht setzen?

Risiko

Nachtrag:
Hier mal eine erste Testversion.

Wzut

Zitat von: Risiko am 03 März 2020, 19:44:24
Wenn wir einmal dabei sind, was ist mit IsDisabled?
Hatte ich mit Absicht nicht gelistet da IsDisabled mehr als nur 0 und 1 zurückgeben kann und weder MAX noch HM dieses Attribut bei ihren Thermostaten haben.
HM hat dummy und readOnly , MAX nur dummy und ignore haben sie alle. Deine angehängte Version schaut gut aus, die PopUp Liste auf meinem Testsystem ist drastisch geschrumpft !
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

Risiko

Zitat von: Wzut am 03 März 2020, 20:52:06
Deine angehängte Version schaut gut aus, die PopUp Liste auf meinem Testsystem ist drastisch geschrumpft !
Hab es so eingecheckt.

Gunther

Besteht die Möglichkeit Weekprofile für Steckdosen (Zigbee/Homematic) zu nutzen und statt Temperatur on/off mitzugeben?
Finde dazu im Wiki nichts passendes.
FHEM@Proxmox@Nuc: TabletUI als User-Interface (4 Wandtablets) / IOs per ser2net gekapselt
Homematic: Heizung, Fenster, Bewegung | Jeelink: Temperatur | Z-Wave: Bewegung, Temperatur | FS20: Temperatur, Fenster | Viessmann-Heizung eingebunden

Beta-User

@Gunther: Über den "Umweg" WeekdayTimer sollte das gehen; ich meine, es hätte dazu auch mal irgendwo einen Thread gegeben...
Server: HP-elitedesk@Debian 12, 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: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

bhaal

Hallo zusammen,

Bei mir gab es beim Umstellen auf den Heizbetrieb eine Fehlermeldung beim restore mit Weekprofile.

Buzzy hat das Problem hier bereits erläutert: https://forum.fhem.de/index.php?topic=114464.0

ZitatCUL_HM reject-set Room_Thermostat_Climate_BedRoom tempListMon: param 1:'(p1|p2|p3)' => 24:00 does not match options
tempListMon: [(prep|{exec})] (p1|p2|p3) -HH:MM- -temp- [...]

Es scheint als ob sich der Syntax für "set tempListMon" geändert hat.
Früher konnte man an den Climate Channel einfach ein

set Room_Thermostat_Climate_GuestRoom tempListMon 24:00 6.0

schicken - so wie es Weekprofile auch tut.

Nun ist es plötzlich nötig explizit P1, P2 oder P3 beim set mit anzugeben:
set Room_Thermostat_Climate_GuestRoom tempListMon p1 24:00 6.0


Ich dachte mir ich schreibe das mal in den offiziellen Weekprofile Thread, in der Hoffnung, dass hier Abhilfe geschaffen werden kann. Besten Dank, bisher hat das Modul bei mir wunderbar funktioniert.

Viele Grüße
Max

Risiko

Hallo.

Ich sehe hier kein Fehler von weekprofile.
Wenn sich der Syntax geändert hat, dann sollte es auch im entsprechenden Modul betreffs Kompatibilität behoben werden.
Weekprofile kann erstmal nicht wissen, ob p1 oder p2 oder pN.

Vielleicht meldet sich ja der Modulentwickler noch zu Wort.

Risiko





Lanhydrock

Der WAF litt und den anderen im Haus war ein klein wenig zu frisch in der Übergangszeit, daher haben wir uns beholfen und ausnahmsweise die 98_weekprofile.pm direkt angepasst... bitte nur nachmachen, wenn Ihr wisst, was Ihr tut und bis martinp876 und Risiko sich geeinigt haben  :) - und auf jeden Fall eine Sicherungskopie anlegen...

nano /opt/fhem/FHEM/98_weekprofile.pm

sucht Euch den Beginn der Prozedur
sub weekprofile_sendDevProfile(@)

dort fügt Ihr eine neue Zeile ein (die mit dem Kommentar)...

  } elsif ($type eq "CUL_HM") {
    my $k=0;
    my $dayCnt = scalar(@dayToTransfer);
    foreach my $day (@dayToTransfer){
      $cmd .= "set $device tempList";
      $cmd .= $day;
      $cmd .= ($k < $dayCnt-1) ? " prep": " exec";
      $cmd .= " p1" if AttrVal($device,"model",0) =~ m/.*HM-TC-IT.*/ ; ### Quick'n'Dirty Patch für unsere HM-TC-IT-WM-W-EU, geschrieben wird bei uns hier immer bewusst nur in Liste p1

      my $tmpCnt =  scalar(@{$prfData->{$day}->{"temp"}});
      for (my $i = 0; $i < $tmpCnt; $i++) {
        $cmd .= " ".$prfData->{$day}->{"time"}[$i]." ".$prfData->{$day}->{"temp"}[$i];
      }
      $cmd .= ($k < $dayCnt-1) ? "; ": "";
      $k++;
    }


danach im Frontend noch ein
reload 98_weekprofile.pm

dann sollte das Topic-Restore mit dem T Button im Frontend auch für die Wandthermostate wieder gehen

und gut ist für diese Übergangsperiode...

danke, Risiko, für das schöne und komfortable Modul!

- FHEMs in VM @ Mac mini & RPi, fhem2fhem
- Homematic, 1wire, Hue & Lightify & Tradfri & Xiaomi & Oblo via zigbee2mqtt/Conbee II, Rademacher DuoFern, Roto i8 & Hunter Ventile via HM-LC-Sw4-DR
- Interdomo GBK (via Siemens ozw672; dank HTTPMOD, lest Post #33765)
- homebridge(-fhem), Grafana, DBLog

Risiko

Danke Lanhydrock.

Leider hat sich Martin noch nicht zu Wort gemeldet.
Wenn es hilft, könnte ich es auch übernehmen.
Dazu aber noch ein paar Fragen (habe ja kein HM):

  • Betrifft es alle Geräte vom Typ CUL_HM oder nur einzelne Geräte?
  • Geht immer p1 oder muss es auch mal p2, ohne p oder sonst was sein?

Einen Fix auf HM Seite würde ich jedenfalls begrüßen.

Risiko

MaverickVG

Hallo Risiko,

das wäre super!
Bei mir betrifft es nur die Wandthermostate (HM-TC-IT-WM-W-EU), wenn ich direkt die Heizkörperthermostate (HM-CC-RT-DN) nutze funktioniert es bei mir weiterhin.
Bei mir geht immer p1.

Hoffentlich hilfts! Viele Grüße


martinp876

wie schon an anderer Stelle angemarkt war ich leider 2 Wochen abwesend.
Morgen sollte es wieder gehen.

Zum Kommando:
get cmdList zeigt die Syntax an. GENAU diese wird geparst. Der Parser wurde scharf geschaltet und rejected alles, was nicht ins schema passt.
Es ist also eigentlich einfach, nachzusehen, wie ein Kommando aussehen muss.
p1/2/3 war nicht optional. Jetzt ist (morgen) ist es optional und P1 ist der default

Udomatic

Zitat von: martinp876 am 15 Oktober 2020, 15:30:00
wie schon an anderer Stelle angemarkt war ich leider 2 Wochen abwesend.
Morgen sollte es wieder gehen.

Zum Kommando:
get cmdList zeigt die Syntax an. GENAU diese wird geparst. Der Parser wurde scharf geschaltet und rejected alles, was nicht ins schema passt.
Es ist also eigentlich einfach, nachzusehen, wie ein Kommando aussehen muss.
p1/2/3 war nicht optional. Jetzt ist (morgen) ist es optional und P1 ist der default

Super, danke schon mal dafür!

Hatte mir in der Zwischenzeit mit dem Workarround von Lanhydrock weitergeholfen von ein paar Post weiter oben.


$cmd .= " p1" if AttrVal($device,"model",0) =~ m/.*HM-TC-IT.*/ ; ### Quick'n'Dirty Patch für unsere HM-TC-IT-WM-W-EU, geschrieben wird bei uns hier immer bewusst nur in Liste p1


Sollte ich diesen vor dem Update wieder raus nehmen?
2x Raspberry 3B+, 1x Raspberry 4, Signalduino 433 (Somfy), CUL_HM (HM-MOD-RPI-PCB), MQTT, Hue, ConBee 2, Sonos, AVM DECT, Netatmo, eufy, Nuki,

rogerknop

Hallo,

ich habe versucht einen Thermostat mit HM CCU über das weekprofile zu steuern und es hat nicht funktioniert.
In einem anderen Thread habe ich das bereits diskutiert: https://forum.fhem.de/index.php/topic,116110.msg1103797.html#msg1103797

Also der generierte set Befehl in der Routine weekprofile_sendDevProfile schickt den Präfix R- mit.
Wenn ich hier beim Aufbau der Variablen dpTime und dpTemp den ermittelten Präfix weglasse funktioniert es.

Mache ich in der Bedienung einen Fehler, oder ist das ein Bug im weekprofile?

Danke & Grüße,
Roger

Risiko

Hallo.

Das Setzen ohne Präfix (bei dir 'R-') scheint aber wohl nicht für alle CCU Geräte zu stimmen, oder?
Benötige hier Feedback, da andere Leute z.B. bei HmIP wohl keine Probleme haben und ich wie schon öfters gesagt kein HM habe.

Anbei eine Testversion, ohne Präfix für "HMCCUDEV HM".  Bei "HMCCUDEV HMIP" habe ich es so gelassen.

Risiko

rogerknop

#584
Danke!
Habe bei zap nachgefragt. https://forum.fhem.de/index.php/topic,116110.msg1105626.html#msg1105626
Grüße, Roger