Hauptmenü

Neueste Beiträge

#91
FHEM Development / Aw: Keine commits mehr unter F...
Letzter Beitrag von betateilchen - 08 Dezember 2025, 11:03:07
Moin,

schraubt Ihr gerade wieder am SVN Server rum?

svn: E170013: Unable to connect to a repository at URL 'https://svn.fhem.de/fhem/trunk/fhem'
svn: E175002: Unexpected HTTP status 503 'Service Unavailable' on '/fhem/trunk/fhem'
#92
MQTT / Aw: mqtt2.template: Contributi...
Letzter Beitrag von offebaescher - 08 Dezember 2025, 10:44:38
Hallo zusammen, ich bin nicht so der Coding Guru und weiß nicht ob ich das alles richtig gemacht habe.

Ich habe einen Heizkörperthermostat von AVATTO, Modell TRV06, im Detail "TZE284_o3x45p96" bei der berühmten chinesischen Handelsplattform testweise bestellt und konnte das Gerät sehr erfolgreich in Betrieb nehmen via Zigbee2MQTT und soweit alles damit machen, was ich brauche. Also entweder es in den "auto" Modus versetzen und es die maximal 6 Transitions pro Tag durchlaufen lassen (Format: "HH:MM/C HH:MM/C HH:MM/C HH:MM/C HH:MM/C HH:MM/C"), oder es in den "heat" Modus versetzen und die desired-temp jeweils setzen durch FHEM.

Zigbee-Modell TS0601
_TZE284_o3x45p96 (Thermostatic radiator valve)
Modell TRV06_1 AVATTO
https://www.zigbee2mqtt.io/devices/TRV06_1.html

Ich hatte mich an dem bestehenden Template "zigbee2mqtt_thermostat_with_weekprofile" orientiert. Dieses Gerät hat allerdings nicht die Profiles holidays und workdays sondern schedule_monday bis schedule_sunday. Ausserdem kann man noch die Werte local_temperature_calibration, frost_protection und scale_protection setzen. Mit dem battery_low bin ich noch unsicher wie das funktioniert, es wird nur gesendet, wenn die battery_low ist, solange das nicht der Fall ist, ist das reading nicht existent und wird mir nicht angezeigt.

#contributed by offebaescher
name:zigbee2mqtt_thermostat_AVATTO_TRV06_TS0601
desc: Developed for AVATTO TRV06 TS0601 (Thermostatic radiator valve)
filter:TYPE=MQTT2_DEVICE:FILTER=CID~zigbee.*
order:L_17c
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. NOTE: code has been downloaded from svn (contrib). 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, 6 Transitions required, format example: "HH:MM/C HH:MM/C HH:MM/C HH:MM/C HH:MM/C HH:MM/C"
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 }\
  child_lock:LOCK,UNLOCK $\DEVICETOPIC/set {"child_lock": "$EVTPART1"}\
  schedule_monday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_monday":"$payload"})}\
  schedule_tuesday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_tuesday":"$payload"})}\
  schedule_wednesday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_wednesday":"$payload"})}\
  schedule_thursday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_thursday":"$payload"})}\
  schedule_friday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_friday":"$payload"})}\
  schedule_saturday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_saturday":"$payload"})}\
  schedule_sunday:textField { my $payload = $EVENT;$payload =~ s/$EVTPART0 //; qq($\DEVICETOPIC/set {"schedule_sunday":"$payload"})}\
  mode:heat,auto,off $\DEVICETOPIC/set {"system_mode": "$EVTPART1"}\
  pi_heating_demand:slider,0,1,100,1 $\DEVICETOPIC/set {"pi_heating_demand": $EVTPART1 }\
  frost_protection:ON,OFF $\DEVICETOPIC/set {"frost_protection": "$EVTPART1"}\
  scale_protection:ON,OFF $\DEVICETOPIC/set {"scale_protection": "$EVTPART1"}\
  local_temperature_calibration:slider,-9.0,1,9.0,1 $\DEVICETOPIC/set {"local_temperature_calibration": $EVTPART1 }\
  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 stateFormat Measured: temperature Desired: desired-temp \
  Battery: batteryState child_lock
attr DEVICE devStateIcon LOCKED:secur_lock:btnLock+UNLOCK UNLOCKED:secur_open:btnLock+LOCK
attr DEVICE webCmd desired-temp
attr DEVICE widgetOverride desired-temp@set: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:battery_low system_mode:mode
attr DEVICE setStateList on off
attr DEVICE periodicCmd temperature:55
attr DEVICE userReadings batteryState:battery_low.* {ReadingsVal($name,'battery_low','false')}
attr DEVICE model zigbee2mqtt_thermostat_AVATTO_TRV06_TS0601
set DEVICE attrTemplate speechcontrol_type_thermostat
deletereading -q DEVICE (?!associatedWith|IODev).*
setreading DEVICE attrTemplateVersion 20251208

Vielleicht ist das ja für jemanden nützlich.
#93
FHEM Code changes / Revision 30602: ch.eick: EVU_T...
Letzter Beitrag von System - 08 Dezember 2025, 10:30:45
Revision 30602: ch.eick: EVU_Tibber_connect15

ch.eick: EVU_Tibber_connect15

Source: Revision 30602: ch.eick: EVU_Tibber_connect15
#94
Verbrauchsmessung / Aw: Tibber & Tibber Pulse
Letzter Beitrag von ch.eick - 08 Dezember 2025, 09:54:56
Zitat von: lulatsch66 am 06 Dezember 2025, 13:20:31EVU_Tibber verwende ich zwar bisher auch, aber seit paar Tagen (und Experimenten mit connect15)
klappt da irgendwas nicht mehr, obwohl ich auch schon mit dem Stand vom svn abgeglichen hatte.
Nun kann ich die Werte gut vergleichen.
Hallo Falko
was klappt denn beim EVU_Tibber_connect15 nicht?

Ich habe gerade nochmal meine letzte Version ins contrib geladen.

  - Werte für morgen werden noch nicht abgefragt
  - consumption habe ich gerade mal nachgesehen, das gibt es noch nicht auf 15 Minuten Basis


Bitte darauf Achten, es ist eine Testversion.
Das andere EVU_Tibber_connect sollte deaktiviert werden, damit es keine zwei Sessions zu Tibber gibt.

Token und homeID habe ich im KeyValue abgelegt
attr EVU_Tibber_connect15 replacement01Mode expression
attr EVU_Tibber_connect15 replacement01Regex %%token%%
attr EVU_Tibber_connect15 replacement01Value {KeyValue("read","EVU_Tibber_connect_token")}
attr EVU_Tibber_connect15 replacement02Mode expression
attr EVU_Tibber_connect15 replacement02Regex %%homeID%%
attr EVU_Tibber_connect15 replacement02Value {KeyValue("read","EVU_Tibber_connect_homeID")}

Zitat von: lulatsch66 am 06 Dezember 2025, 13:20:31Hast du davon abgeleitet noch Darstellungen/Diagramme oder DOIF,
mit denen du dein "Tibber" device verwendest?
Für die Bedienung gibt es das RAW_EVU_Tibber, was auch im contrib liegt. Das arbeitet jedoch noch mit dem EVU_Tibber_connect (1h) und müsste noch auf 15 Minuten angepasst werden. Da sind dan auch SVG mit drin.
Du darfst diesen Dateianhang nicht ansehen.
Wie im anderen Post zu sehen verwende ich jedoch Grafana und habe dort auch ein Diagramm um den Trigger für den aktuellen Tag in die Zukunft darzustellen.

Bei den zusteuernden Devices habe ich dann auch im DOIF eine Aktivierung für Tibber drin, was dann z.B. so aussieht
Du darfst diesen Dateianhang nicht ansehen.
Muster sind in der Ordnerstruktur im contrib.

VG  Christian
#95
Sonstige Systeme / Aw: Modul für Netgear Arlo-Kam...
Letzter Beitrag von suchard - 08 Dezember 2025, 09:54:04
Ich habe mal eine Frage:
Seit einiger Zeit kann ich aus FHEM heraus keine Snapshots oder Videos erzeugen.
Im LOG steht folgendes:

Arlo call was not successful: {"success":false,"data":{"error":"2222","message":"Your account does not support the addition of another device.  Now's a great time to upgrade your account.  Or you can remove one of your other devices.","reason":"Device is not provisioned"}}

Hat Arlo etwas geändert?
Ich habe zum Test bereits einmal alle bis auf eine CAM gelöscht, keine Veränderung.
#96
MQTT / Aw: shelly 1pm Gen4 (nicht Plu...
Letzter Beitrag von bicmac - 08 Dezember 2025, 09:23:32
Zitat von: rudolfkoenig am 07 Dezember 2025, 16:22:16Ich versuche meinen Beitrag von oben anders zu formulieren:

WENN die MQTT2_DEVICE Instanz ueber MQTT2_SERVER direkt eingebunden ist (d.h. nicht ueber eine weitere FHEM bridge Instanz)
UND in der Detailansicht kein subscriptions Reading zu sehen ist
DANN ist es nicht moeglich, dem Geraet von FHEM aus irgendetwas mitzuteilen, vulgo set funktioniert nicht.

Ob die MQTT2_DEVICE Instanz per autocreate angelegt ist oder nicht, ist irrelevant.
Das Geraet selbst muss diese subscriptions bei FHEM "bestellen", FHEM kann das nicht aufzwingen.
Jeder FHEM Befehl an diesem Geraet muss einem subscription aus dieser Liste entsprechen.

=> Falls das Geraet via MQTT Befehle entgegennehmen kann, dann muss man das in der Geraete-Einstellung reparieren.

Ich verstehe ehrlich gesagt nur Bahnhof.
Kann an den shelly1pm gen4 dann nicht einbinden und steuern?
Ich bin doch bestimmt nicht der erste mit dem gerät
#97
Sonstige Systeme / Aw: Neues Modul: 00_ShellSwitc...
Letzter Beitrag von DeeSPe - 08 Dezember 2025, 09:08:38
Mal ne ganz blöde Frage: Muss das Skript unbedingt mit sudo aufgerufen werden? Oder tust du das nur weil es in einem anderen Home Ordner liegt?
Was wäre wenn du das Skript unter "/opt/fhem/scripts" ablegst und die Berechtigungen von "fhem" vererbst?

Gruß
Dan

P.S. Trotz allem sollte es auch machbar sein es mit "sudo" auf deinem Wege hinzubekommen, weiß nur noch nicht so richtig wo es hakt!
#98
Zigbee / Aw: zigbee2mqtt und Alexa
Letzter Beitrag von rabehd - 08 Dezember 2025, 09:00:45
Danke für die Anmerkungen. Das stimmt natürlich.
Bisher sind Hue und Alexa unabhängig von FHEM.
Ab und zu hängt der Raspberry mit FHEM, das aber auch nur wenn zeitgleich der Raum geputzt wurde.
Mit zigbee4mqtt würde ein "Ersatz" für Hue in einen Docker-Container auf dem selben Raspberry laufen, wie FHEM.
Damit muss der Raspberry, bzw. bessen Probleme in bestimmten äußeren Situationen untersucht werden.
Die Sprachsteuerung ist für den WAF wichtig ;-)
#99
Anfängerfragen / Aw: PERL WARNING: Smartmatch i...
Letzter Beitrag von Rampler - 08 Dezember 2025, 08:35:49
Hallo betateilchen,
erstmal Danke, dass Du Dich erbarmt hast die TimeSeries.pm zu patchen.
Leider bringt der Patch:

Undefined subroutine &TimeSeries::contains_string called at FHEM/TimeSeries.pm line 117.
Danach stürzt das FHEM ab und started neu..

VG Klaus

#100
FHEM Code changes / Revision 30601: controls_fhem....
Letzter Beitrag von System - 08 Dezember 2025, 08:20:37
Revision 30601: controls_fhem.txt: fhemupdate checkin

controls_fhem.txt: fhemupdate checkin

Source: Revision 30601: controls_fhem.txt: fhemupdate checkin