Zigbee2MQTT - Template für Thermostat

Begonnen von Snocksman, 07 Dezember 2020, 17:22:39

Vorheriges Thema - Nächstes Thema

Snocksman

#60
Mit dem Weekprofile habe ich bisher leider noch nicht testen können... Vielleicht schaffe ich es dieses WE ja mal.

Hier aber noch ein paar kleine Änderungen bzw. Fehlerkorrekturen, welche ich an dem Template vornehmen würde:

Es gibt keinen Wert Battery, welcher von dem Thermostat zurückgeliefert wird. Es gibt nur einen Wert battery_low, welcher true oder false zurückgibt.

Im devStateIcon ist als Symbol secur_lock angegeben, es heißt aber secur_locked. Dann wird das Schloss Icon auch richtig dargestellt.

Ich habe jsonMap wie folgt geändert :

attr Bad_Thermostat jsonMap current_heating_setpoint:desired-temp local_temperature:measured-temp battery_low:batteryLow preset:mode


Und stateFormat dann so:

attr Bad_Thermostat stateFormat child_lock\
batteryLow\
Measured: measured-temp °C


Und zu guter letzt devStateIcon:

attr Bad_Thermostat devStateIcon LOCKED:secur_locked:btnLock+UNLOCK UNLOCKED:secur_open:btnLock+LOCK true:measure_battery_25@red false:measure_battery_100@green

Snocksman

#61
Jetzt hab ich lange genug rumprobiert und (glaube ich) endlich verstanden wie´s funktioniert...  8)

Hier noch eine Erweiterung für die setList um die Funktion system_mode:

attr Esszimmer_Thermostat setList desired-temp:slider,5.0,0.5,30.0,1 $DEVICETOPIC/set {"current_heating_setpoint": $EVTPART1 }\
  btnLock:LOCK,UNLOCK $DEVICETOPIC/set {"child_lock": "$EVTPART1"}\
  mode:schedule,manual,boost,complex,comfort,eco $DEVICETOPIC/set {"preset": "$EVTPART1"}\
  system_mode:heat,auto,off $DEVICETOPIC/set {"system_mode": "$EVTPART1"}\
  holidays $DEVICETOPIC/set/schedule { "holidays":[$EVTPART1] }\
  workdays $DEVICETOPIC/set/schedule { "workdays":[$EVTPART1] }\
  week:5+2,6+1,7 $DEVICETOPIC/set $EVTPART1\
  weekprofile { FHEM::attrT_z2m_thermostat_Utils::z2t_send_weekprofile($NAME, $EVTPART1, $EVTPART2) }\
  x_send_set_payload:textField { my $payload = $EVENT;;$payload =~ s/$EVTPART0 //;; qq($DEVICETOPIC/set $payload)}


Der Punkt ist, wie ich finde, noch ganz cool, weil sich damit der Heizkörper ganz abdrehen (off), oder voll Aufdrehen (heat) lässt. Das Abdrehen nutze ich z.B. wenn das Fenster über dem Heizkörper geöffnet wird.

Was mir noch aufgefallen ist: Der Punkt boost in der setList könnte wegfallen, weil es ja schon eine Option von mode ist.

Beta-User

Sorry, dass es mit der Rückmeldung etwas gedauert hat...

Vorab: Freut mich, wenn der Groschen zu der weekprofile-Geschichte gefallen ist. Ist nicht ganz so einfach zu verstehen, v.a. dann in diesem Zusammenhang. Btw.: es gibt ein Mini-update der myUtils-File wegen Änderungen, die @Risiko als Maintainer von weekprofile grade in der Mache hat.

Was die attrTemplates hier angeht, muss ich mir das mal in Ruhe ansehen, auch in der Zusammenschau mit anderen attrTemplate-Diskussionen (ausgehend von MAX!/MQTT_GENERIC_BRIDGE). Von daher dürfte z.B. das Reading für die gemessene Temperatur mittelfristig doch eher "temperature" heißen.

Was die Modi angeht, bin ich unschlüssig, welcher denn "mode" heißen sollte, eventuell sollte man auch den Namen "preset" unangetastet lassen?

"boost" als separaten Setter weglassen finde ich ok, das ist auch bei anderen Thermostaten (CUL_HM) nichts separates, und das hier anzubieten, ist ggf. später hinderlich...

battery_low ist schwierig, bin geneigt, das original-Reading zu belassen und einen userReadings-Eintrag zu ergänzen, der dann entsprechend https://wiki.fhem.de/wiki/DevelopmentGuidelinesReadings "batteryState: ok|low" liefert? Für stateFormat sollte man auf alle Fälle einen eindeutigen Kenner hinzufügen, damit man bei mehreren gleichen Werten weiß, was zu was gehört (in deinem Wording: "1:batteryLow\" und "1.true:measure_battery_25@red").

Bin mal auf deine Meinung gespannt, und vielleicht kannst du das im Zusammenhang gleich als attrTemplate so aufbereiten, dass ich's direkt einchecken kann?
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

dirkcx

vielen Dank für Eure Arbeit an dem Template.

zu batteryState nutze ich das userReading
batteryState {if(ReadingsVal($NAME,"battery_low","false") eq "false") {return "ok"} else  {return "low"} }

bei mir funktioniert das getList mode:noArg mode $DEVICETOPIC/get {"preset": ""} leider nicht.
Fehlermeldung: Timeout reading answer for zigbee2mqtt/ThermostatMultiraum/get {"preset": ""}

Das ist nachvollziehbar, im log von zigbee2mqtt gibts damit den folgenden Fehler: No converter available for 'get' 'preset' ()
Allerdings ist das lt. https://www.zigbee2mqtt.io/devices/TS0601_thermostat.html der korrekte Aufruf. Ich bin generell mit den mqtt Requests recht ratlos mit den Vorgaben dieser Website. Bei mir funktionieren viele nicht bzw. schmeißen analoge Fehlermeldungen.
Allerdings scheint mein Thermostat auch eine alte Firmware zu haben. Alle zeitbezogenen Funktionen klappen nicht. Wie kann ich ohne das Tuya Gateway die Firmware updaten?

off topic: mein Tuya TS0601 hat einen enormen Batteribedarf, ca. 6 Wochen für den ersten Batteriesatz.
Und das Regelverhalten hat ein ungewöhnlich großes Delta von 2 °C, siehe Screenshot
Seht Ihr ähnliches Verhalten bei Euren Thermostaten?

Server: Gigabyte GB-BACE3160 | Ubuntu 20.04 LTS Server | aktuelles FHEM | CULUSB (busware) FS20/FHT/... | MySensors: seriell / esp8266 | ZigBee (Zigbee CC2531 / zigbee2mqtt) | homebridge / homebridge-config-ui

Beta-User

Hier mal ein konsolidierter Zwischenstand:

name:zigbee2mqtt_thermostat_with_weekrofile
desc: Developed for <a href="https://zigbee.blakadder.com/Moes_HY368-ZB.html">Model HY368-ZB manufactured by Moes</a> via zigbee2mqtt <br>Might not completely work for all firmware versions and also some commands seem not yet to be fully integrated on the zigbee2mqtt side... <br>To contribute, participate in <a href="https://forum.fhem.de/index.php/topic,116535.0.html">Forum Thread</a>
filter:TYPE=MQTT2_DEVICE:FILTER=CID~zigbee.*
order:L_17a
par:BASE_TOPIC;base topic set in configuration.yaml of the zigbee2mqtt bridge;{ AttrVal("DEVICE","devicetopic",AttrVal("DEVICE","readingList","")) =~ m,[\b]?([^/:]+)[/].+, ? $1 : undef }
par:DEV_ID;name of the device in the zigbee2mqtt bridge;{ AttrVal("DEVICE","devicetopic",AttrVal("DEVICE","readingList","")) =~ m,[^/]+[/]([^/:]+).*, ? $1 : undef }
par:ICON;ICON as set, defaults to temp_control;{ AttrVal("DEVICE","icon","temp_control") }
par:WPNAME;weekprofile attr value, defaults to device name;{ AttrVal("DEVICE","weekprofile","DEVICE") }
farewell:template has been applied successfully. <br>NOTE: code has been downloaded from svn (contrib). <br>For use with weekprofile, additional configuration is needed!
{ Svn_GetFile("contrib/AttrTemplate/99_attrT_z2m_thermostat_Utils.pm", "FHEM/99_attrT_z2m_thermostat_Utils.pm", sub(){ CommandReload(undef, "99_attrT_z2m_thermostat_Utils.pm") }) }
attr DEVICE comment For use with weekprofile, additional configuration is needed
attr DEVICE icon ICON
attr DEVICE devicetopic BASE_TOPIC/DEV_ID
attr DEVICE userattr weekprofile
attr DEVICE weekprofile WPNAME
attr DEVICE readingList $\DEVICETOPIC:.* { my %h; my $temp = $EVENT; $temp =~ s/,?("(holidays|workdays)":.([^]]+))./$h{$2}=$3/ge; $EVENT =~ s/,?("(holidays|workdays)":.([^]]+)).//g; my $h2 = json2nameValue($EVENT,'',$JSONMAP); %h = (%h,%$h2); \%h }
attr DEVICE setList \
  desired-temp:slider,5.0,0.5,30.0,1 $\DEVICETOPIC/set {"current_heating_setpoint": $EVTPART1 }\
  btnLock:LOCK,UNLOCK $\DEVICETOPIC/set {"child_lock": "$EVTPART1"}\
  preset:schedule,manual,boost,complex,comfort,eco $\DEVICETOPIC/set {"preset": "$EVTPART1"}\
  mode:heat,auto,off $DEVICETOPIC/set {"system_mode": "$EVTPART1"}\
  holidays $\DEVICETOPIC/set/schedule { "holidays":[$EVTPART1] }\
  workdays $\DEVICETOPIC/set/schedule { "workdays":[$EVTPART1] }\
  week:5+2,6+1,7 $\DEVICETOPIC/set $EVTPART1\
  weekprofile { FHEM::attrT_z2m_thermostat_Utils::z2t_send_weekprofile($NAME, $EVTPART1, $EVTPART2) }\
  x_send_set_payload:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set $payload)}
attr DEVICE getList desired-temp:noArg desired-temp $\DEVICETOPIC/get {"current_heating_setpoint": ""}\
  temperature:noArg temperature $\DEVICETOPIC/get {"local_temperature": ""}\
  preset:noArg preset $\DEVICETOPIC/get {"preset": ""}
attr DEVICE periodicCmd temperature:55
attr DEVICE stateFormat btnLock\
Measured: temperature Battery: batteryPercent %
attr DEVICE devStateIcon LOCKED:secur_lock:btnLock+UNLOCK UNLOCKED:secur_open:btnLock+LOCK
attr DEVICE webCmd desired-temp
attr DEVICE widgetOverride desired-temp:knob,min:5,max:30,angleArc:180,width:40,height:40,fgColor:#FF9900,bgColor:#CCCCCC,step:0.5,lineCap:round,angleOffset:225
attr DEVICE jsonMap current_heating_setpoint:desired-temp local_temperature:temperature Battery:batteryPercent system_mode:mode
attr DEVICE setStateList on off
attr DEVICE userReadings batteryState:battery_low.* {ReadingsVal($name,'battery_low','false') eq 'false'?'ok':'low'}
attr DEVICE model zigbee2mqtt_thermostat_with_weekrofile
set DEVICE attrTemplate speechcontrol_type_thermostat
deletereading -q DEVICE (?!associatedWith).*
setreading DEVICE attrTemplateVersion 20210211


"mode" ist jetzt system_mode, das bat-userReadings ist mit trigger implementiert und boost raus, temperature wird jetzt auch in anderen Fällen statt measured-temp verwendet werden.

getList ist unverändert, in der Hoffnung, dass es entweder an der firmware liegt oder das auf zigbee2mqtt-Seite noch entspr. der dortigen "vorauseilenden Doku" nachgezogen wird. Wg. update (beide Aspekte...) bitte ggf. da mal nachhaken. Das "timeout" kann übrigens auch sein, wenn nicht rechtzeitig eine Rückmeldung kommt (ist hier aber wohl nicht das Thema).

Was das übersteuernde Verhalten angeht: sollte man wohl in der firmware angehen; falls es mit dem update nicht hilft ggf. mal schauen, ob man einen externen Sensor verwenden kann; ext. Sensorik hilft auch in anderen Fällen, ein gleichmäßigeres Regelverhalten zu erzielen. Der temp-Wert am Thermostat gemessen ist eh' prinzipiell ein "Probem".
Manche Thermostate lernen auch das Umgebungsverhalten und stellen die Änderungsparameter mit der Zeit entsprechend ein (siehe Diskussionen zum HM-CC-RT-DN und der firmware 1.4 bzw. 1.5, falls sich jemand damit näher auseinandersetzen will), aber 6 Wochen für einen Satz Batterien halte ich so oder so nicht für zeitgemäß.
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

elle

#65
Hallo zusammen,

leider muss ich mal diesen Thread reanimieren, da ich ein Problem mit dem Setzen von schedules habe. Vielleicht koennte jmd. von Euch das mal Ueberpruefen (ev. bin ich ja einfach nur zu bloed hierfuer ;-)).

Ich habe hier einen Satz TuYa TS0601_thermostat Geraeten via z2m und MQTT2_SERVER an FHEM angeklemmt. So weit auch alles kein Thema, funktioniert bis auf folgendes:
Setzen eines Weekprofiles.

Wenn ich folgendes mache:

set MQTT2_zigbee_Thermostat_Bad_EG weekprofile WeekProfile.Thermostat_Bad_EG default:default

sollte er ja das Weekprofile umschreiben nach JSON und ueber das MQTT Topic
zigbee2mqtt/Thermostat_Bad_EG/set/schedule auf das Thermostat schreiben.

Nun hat mein Profile aber weniger als 6 Schaltpunkte pro Tag und das gibt leider in z2m einen Fehler:
Error 2022-10-23 17:58:55Publish 'set' 'schedule' to 'Thermostat_Bad_EG' failed: 'TypeError: Cannot read properties of undefined (reading 'hour')'

Ich habe im MQTT Explorer ein bisschen herumprobiert und scheinbar erwartet z2m an der Stelle (auch bei holidays) mindestens 6 Schaltpunkte. Hat jemand von Euch das schonmal gesehen?!

Danke + Gruss
/elle
Nachtrag, lists:

defmod MQTT2_zigbee_Thermostat_Bad_EG MQTT2_DEVICE zigbee_Thermostat_Bad_EG
attr MQTT2_zigbee_Thermostat_Bad_EG userattr batteryStatus batteryStatus_map structexclude weekprofile
attr MQTT2_zigbee_Thermostat_Bad_EG DbLogInclude position|preset|mode|desired-temp|linkquality|window_open|battery_low|temperature|comfort_temperature|away_preset_days|child_lock|batteryState
attr MQTT2_zigbee_Thermostat_Bad_EG alias Thermostat Bad EG
attr MQTT2_zigbee_Thermostat_Bad_EG batteryStatus Struct.BatterieStatus
attr MQTT2_zigbee_Thermostat_Bad_EG batteryStatus_map batteryState
attr MQTT2_zigbee_Thermostat_Bad_EG comment For use with weekprofile, additional configuration is needed
attr MQTT2_zigbee_Thermostat_Bad_EG devStateIcon Battery..ok:measure_battery_100@green Battery..low:measure_battery_0@red
attr MQTT2_zigbee_Thermostat_Bad_EG devicetopic zigbee2mqtt/Thermostat_Bad_EG
attr MQTT2_zigbee_Thermostat_Bad_EG event-on-change-reading position,preset,mode,desired-temp,linkquality,window_open,battery_low,temperature,comfort_temperature,away_preset_days,child_lock,batteryState
attr MQTT2_zigbee_Thermostat_Bad_EG getList desired-temp:noArg desired-temp $DEVICETOPIC/get {"current_heating_setpoint": ""}\
  temperature:noArg temperature $DEVICETOPIC/get {"local_temperature": ""}\
  preset:noArg preset $DEVICETOPIC/get {"preset": ""}
attr MQTT2_zigbee_Thermostat_Bad_EG group Thermostat
attr MQTT2_zigbee_Thermostat_Bad_EG icon temp_control
attr MQTT2_zigbee_Thermostat_Bad_EG jsonMap current_heating_setpoint:desired-temp local_temperature:temperature Battery:batteryPercent system_mode:mode battery:batteryPercent voltage:batterymV
attr MQTT2_zigbee_Thermostat_Bad_EG model zigbee2mqtt_thermostat_with_weekrofile
attr MQTT2_zigbee_Thermostat_Bad_EG periodicCmd temperature:55
attr MQTT2_zigbee_Thermostat_Bad_EG readingList $DEVICETOPIC:.* { my %h;; my $temp = $EVENT;; $temp =~ s/,?("(holidays|workdays)":.([^]]+))./$h{$2}=$3/ge;; $EVENT =~ s/,?("(holidays|workdays)":.([^]]+)).//g;; my $h2 = json2nameValue($EVENT,'',$JSONMAP);; %h = (%h,%$h2);; \%h }\
zigbee2mqtt/Thermostat_Bad_EG/set\x20schedule:.* { json2nameValue($EVENT) }\
zigbee2mqtt/Thermostat_Bad_EG/set/schedule:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_Thermostat_Bad_EG room Heizung,Zigbee
attr MQTT2_zigbee_Thermostat_Bad_EG setList desired-temp:slider,5.0,0.5,30.0,1 $DEVICETOPIC/set {"current_heating_setpoint": $EVTPART1 }\
  btnLock:LOCK,UNLOCK $DEVICETOPIC/set {"child_lock": "$EVTPART1"}\
  preset:schedule,manual,boost,complex,comfort,eco $DEVICETOPIC/set {"preset": "$EVTPART1"}\
  mode:heat,auto,off $DEVICETOPIC/set {"system_mode": "$EVTPART1"}\
  holidays $DEVICETOPIC/set/schedule { "holidays":[$EVTPART1] }\
  workdays $DEVICETOPIC/set/schedule { "workdays":[$EVTPART1] }\
  week:5+2,6+1,7 $DEVICETOPIC/set $EVTPART1\
  weekprofile { FHEM::attrT_z2m_thermostat_Utils::z2t_send_weekprofile($NAME, $EVTPART1, $EVTPART2) }\
  x_send_set_payload:textField { my $payload = $EVENT;;$payload =~ s/$EVTPART0 //;; qq($DEVICETOPIC/set $payload)}
attr MQTT2_zigbee_Thermostat_Bad_EG setStateList on off
attr MQTT2_zigbee_Thermostat_Bad_EG stateFormat temperature °C\
Battery: battery
attr MQTT2_zigbee_Thermostat_Bad_EG userReadings battery { ReadingsVal($name,'battery_low','false') eq 'false'?'ok':'low'}
attr MQTT2_zigbee_Thermostat_Bad_EG webCmd desired-temp:preset:child_lock
attr MQTT2_zigbee_Thermostat_Bad_EG webCmdLabel Soll:Preset:man. Bedienung
attr MQTT2_zigbee_Thermostat_Bad_EG weekprofile MQTT2_zigbee_Thermostat_Bad_EG
attr MQTT2_zigbee_Thermostat_Bad_EG widgetOverride preset:schedule,manual,boost,complex,comfort,eco desired-temp:15,15.5,16,16.5,17,17.5,18,18.5,19,19.5,20,20.5,21,21.5,22,22.5,23,23.5,24 child_lock:LOCK,UNLOCK

WeekdayProfile

{"Tue":{"time":["06:30","23:00","24:00"],"temp":["17.0","19.0","19.0"]},"Thu":{"time":["06:30","23:00","24:00"],"temp":["17.0","19.0","19.0"]},"Wed":{"temp":["17.0","19.0","19.0"],"time":["06:30","23:00","24:00"]},"Fri":{"temp":["17.0","19.0","19.0"],"time":["06:30","23:00","24:00"]},"Sat":{"time":["08:00","23:00","24:00"],"temp":["17.0","19.0","19.0"]},"Mon":{"temp":["17.0","19.0","19.0"],"time":["06:30","23:00","24:00"]},"Sun":{"temp":["17.0","19.0","19.0"],"time":["08:00","23:00","24:00"]}}

juergen012

Hallo,
habe das mit dem weekprofile nicht hinbekommen. Deshalb habe ich ein DOIF gebastelt.
defmod di_Heizung_Buero_weekprofile DOIF ([00:00-08:00|Mo Di Mi Do Fr Sa] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 17.0)\
DOELSEIF ([08:00-18:00|Mo Di Mi Do Fr Sa] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause")  (set MQTT2_zigbee_Thermostat desired-temp 20.0)\
DOELSEIF ([18:00-00:00|Mo Di Mi Do Fr Sa] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 15.0)\
DOELSEIF ([00:00-09:00|WE] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 20.0)\
DOELSEIF ([08:00-17:00|WE] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 20.0)\
DOELSEIF ([17:00-00:00|WE] and [Urlaub] eq "off" and [HM_Buero_FK] eq "closed" and [rr_Juergen] eq "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 20.0)\
DOELSEIF ([HM_Buero_FK] eq "open") (set MQTT2_zigbee_Thermostat desired-temp 5.0)\
DOELSEIF ([Urlaub] eq "on" or [rr_Juergen] ne "zuhause") (set MQTT2_zigbee_Thermostat desired-temp 17.0)
attr di_Heizung_Buero_weekprofile DbLogExclude .*
attr di_Heizung_Buero_weekprofile room DOIF
attr di_Heizung_Buero_weekprofile wait 0:0:0:0:0:0:5:5


Gruß
Jürgen K.
Fhem unter Proxmox

paulbaumann

Vielleicht kann ich wieder nicht mit der Suche umgehen aber unter Thermostat und Tasmota finde ich nur diesen Thread, cih stelle es auch gerne woanders rein:
Komme nicht weiter-> Habe ein ME81H.16 ESP8266 based TYWE3S Wandthermostat mit WLAN
Tasmota 12.2.0 geflasht und konfiguriert mit
{"NAME":"MeinThermostat","GPIO":[1,1,1,2304,1,2272,0,0,1,0,544,0,1,0],"FLAG":0,"BASE":54}
Emulation Belkin WeMo Single Device
in MQTT2 eingebunden Findet er sofort.
Nun habe ich 3 Templates in fhem versucht ohne Erfolg:
(halt die 3 wo Thermostat drin vorkommt...
ems-esp_thermostat_simple   
ems-esp_thermostat_RC35_type
WThermostat_Beca

Welches Template muss ich nehmen?
Was muss ich noch machen/ändern?

Beta-User

Zitat von: paulbaumann am 22 November 2022, 17:15:49
Vielleicht kann ich wieder nicht mit der Suche umgehen aber unter Thermostat und Tasmota finde ich nur diesen Thread, cih stelle es auch gerne woanders rein:
Komme nicht weiter-> Habe ein ME81H.16 ESP8266 based TYWE3S Wandthermostat mit WLAN
[...]
Welches Template muss ich nehmen?
Was muss ich noch machen/ändern?
Es gibt afaik noch kein attrTemplate für diesen Gerätetyp mit dieser firmware => ergo: Unterstützung in einem eigenen Thread nachfragen, nicht "irgendeinen" kapern, nur weil die Suchfunktion nichts besseres liefert...

Was man dazu braucht, steht eventuell in einem der angepinnten Threads, aber jedenfalls ich habe grade keine Lust, irgendwelche Tasmota-Doku zu wälzen, um die erwartete Topic/Payload-Struktur aus den Untiefen des Inet zu fischen.
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

paulbaumann

Ist ja auch eine Antwort ich mache einen neuen Thred auf!

Beta-User

Hallo zusammen,

nachdem @clumsy per pm Code für https://www.zigbee2mqtt.io/devices/BHT-002_BHT-006.html#moes-bht-002%252Fbht-006 beigesteuert hat, habe ich das eben eingecheckt. Bitte melden, falls wer Probleme damit hat, ich habe etwas im Code rumgemalt und kann es grade nicht wirklich testen...

(OT: Irgendwie gefällt mir nur bedingt, dass jedes dieser z2m-Thermostate irgendwie ein anderes Format haben will - v.a. für Wochenprofile überrascht mich das irgendwie).

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

clumsy

Ich habs nun seit 2 Tagen mit der eingecheckten Version laufen, bei mir scheint das zu klappen... Wobei ich nur das 99_attrT_z2m_thermostat_Utils.pm und nichts im device selbst geändert hab.

Vielen Dank für Deinen Support!!

STefan

Zitat von: Beta-User am 02 April 2024, 16:07:25(OT: Irgendwie gefällt mir nur bedingt, dass jedes dieser z2m-Thermostate irgendwie ein anderes Format haben will - v.a. für Wochenprofile überrascht mich das irgendwie).
Ja, find ich auch nicht so super, aber so auf die Schnelle war das die einfachste Variante...

Beta-User

Qed - noch eine Variante, diesmal wohl (?) ohne weekprofile: https://forum.fhem.de/index.php?topic=137785.0.

Mal sehen, vielleicht kann/muss man (....) das irgendwie zusammenfassen. ???
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

clumsy

Hallo,

da ich verschiedene Thermostate am testen bin, hab ich auch entsprechend die Weekprofile generiereung anpassen müssen. Im Angehängten File sind noch 2 neue Funktionen, einmal für den Avatto ME168 und einmal für den Tuya TRV602. Evtl. kann das jemand gebrauchen.

Übrigens habe mich nach dem testen von 5 verschiedenen Thermostaten schlussendlich für den TRV602 entschieden! Optisch zwar nicht der schönste aber funktional m.E. der beste von den "günstigeren" China-TRV's...


Beta-User

Hallo zurück,

kannst du bitte die angehängte Fassung mal testen, dann checke ich die ein...

Anmerkungen:
- das logging ist reduziert, das war vermutlich ein Überbleibsel vom debuggen?
- die Vielzahl gefällt mir weiter nicht, irgendwie würde ich das gerne straffen (aber grade keine Kapa dazu)

Super wäre, wenn wir wenigstens die Doku ergänzt bekämen: die commandref bekommt man mit "help <utils-Name>"  angezeigt. Wäre schön, wenn man eine kurze Info bekäme, was in welcher Fassung möglich ist und ggf. bei den Thermostat-templates vorher bzw. nach Anwendung auch via comment oä. einen Hinweis fände, dass da ggf. weitere Varianten bereits da sind...
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