FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Müller am 05 April 2024, 13:41:21

Titel: Thermostat Ubisys H1 arbeitet nicht mit zigbee2mqtt - gelöst
Beitrag von: Müller am 05 April 2024, 13:41:21
Hallo,

ich habe ein Ubisys H1 Thermostaten für Heizkörper. Angelernt in zigbee2mqtt (kein Problem). Kann  über zigbee2mqtt angesteuert werden.
Über autocreate in FHEM angemeldet und als template habe ich "zigbee2mqqtt_thermotat_without_weekprofile" und auch "with".
Nun kommen bei zigbee2mqtt (und beim Thermostaten) nicht von den Parametern von FHEM an (außer der Ist Temperatur). Hauptproblem ist natürlich "desired Temperatur"

define MQTT2_zigbee_0x001fee000000999e MQTT2_DEVICE zigbee_0x001fee000000999e
attr MQTT2_zigbee_0x001fee000000999e userattr weekprofile
attr MQTT2_zigbee_0x001fee000000999e comment For use with weekprofile, additional configuration is needed
attr MQTT2_zigbee_0x001fee000000999e devStateIcon LOCKED:secur_lock:btnLock+UNLOCK UNLOCKED:secur_open:btnLock+LOCK
attr MQTT2_zigbee_0x001fee000000999e devicetopic zigbee2mqtt/0x001fee000000999e
attr MQTT2_zigbee_0x001fee000000999e 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_0x001fee000000999e icon temp_control
attr MQTT2_zigbee_0x001fee000000999e jsonMap occupied_heating_setpoint:daytemp unoccupied_heating_setpoint:nighttemp child_protection:btnLock current_heating_setpoint:desired-temp local_temperature:temperature battery:batteryPercent voltage:batterymV
attr MQTT2_zigbee_0x001fee000000999e model zigbee2mqtt_eurotronic_spirit
attr MQTT2_zigbee_0x001fee000000999e periodicCmd temperature:55
attr MQTT2_zigbee_0x001fee000000999e readingList $DEVICETOPIC:.* { json2nameValue($EVENT,'',$JSONMAP) }
attr MQTT2_zigbee_0x001fee000000999e room MQTT2_DEVICE
attr MQTT2_zigbee_0x001fee000000999e setList boost:true,false $DEVICETOPIC/set {"eurotronic_host_flags": {"boost": $EVTPART1 }}\
  btnLock:true,false $DEVICETOPIC/set {"eurotronic_host_flags": {"child_protection": $EVTPART1 }}\
  desired-temp:slider,5.0,0.5,30.0,1 $DEVICETOPIC/set {"current_heating_setpoint": $EVTPART1 }\
  daytemp:slider,5.0,0.5,30.0,1 $DEVICETOPIC/set {"occupied_heating_setpoint": $EVTPART1 }\
  nighttemp:slider,5.0,0.5,30.0,1 $DEVICETOPIC/set {"unoccupied_heating_setpoint": $EVTPART1 }\
  window_open:true,false $DEVICETOPIC/set {"eurotronic_host_flags": {"window_open": $EVTPART1 }}\
  boost:true,false $DEVICETOPIC/set {"eurotronic_host_flags": {"boost": $EVTPART1 }}\
  x_mirror_display:true,false $DEVICETOPIC/set {"eurotronic_host_flags": {"mirror_display": $EVTPART1 }}
attr MQTT2_zigbee_0x001fee000000999e setStateList on off
attr MQTT2_zigbee_0x001fee000000999e stateFormat Measured: temperature Battery: battery %
attr MQTT2_zigbee_0x001fee000000999e userReadings batteryVoltage:batterymV.* {ReadingsNum($name,'batterymV',0)/1000}
attr MQTT2_zigbee_0x001fee000000999e webCmd desired-temp
attr MQTT2_zigbee_0x001fee000000999e weekprofile MQTT2_zigbee_0x001fee000000999e
attr MQTT2_zigbee_0x001fee000000999e 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
#   CFGFN     
#   CID        zigbee_0x001fee000000999e
#   DEF        zigbee_0x001fee000000999e
#   FUUID      660fd9eb-f33f-cb54-0da0-a2304b938877ea3f
#   IODev      MQTT2_FHEM_Server
#   LASTInputDev MQTT2_FHEM_Server
#   MQTT2_FHEM_Server_CONN MQTT2_FHEM_Server_127.0.0.1_56846
#   MQTT2_FHEM_Server_MSGCNT 20
#   MQTT2_FHEM_Server_TIME 2024-04-05 13:38:38
#   MSGCNT     20
#   NAME       MQTT2_zigbee_0x001fee000000999e
#   NR         6436
#   STATE      Measured: 24 Battery: battery %
#   TYPE       MQTT2_DEVICE
#   eventCount 39
#   periodicCounter 35
#   JSONMAP:
#     battery    batteryPercent
#     child_protection btnLock
#     current_heating_setpoint desired-temp
#     local_temperature temperature
#     occupied_heating_setpoint daytemp
#     unoccupied_heating_setpoint nighttemp
#     voltage    batterymV
#   OLDREADINGS:
#   READINGS:
#     2024-04-05 13:00:59   IODev           MQTT2_FHEM_Server
#     2024-04-05 13:00:59   associatedWith  MQTT2_zigbee_pi
#     2024-04-05 13:11:39   attrTemplateVersion 20220110
#     2024-04-05 13:38:38   batteryPercent  100
#     2024-04-05 13:38:38   batteryVoltage  3.4
#     2024-04-05 13:38:38   batterymV       3400
#     2024-04-05 13:38:38   daytemp         22
#     2024-04-05 13:35:10   desired-temp    set desired-temp 20.5
#     2024-04-05 13:38:38   linkquality     117
#     2024-04-05 13:38:38   nighttemp       16
#     2024-04-05 13:38:38   occupancy       true
#     2024-04-05 13:38:38   pi_heating_demand 0
#     2024-04-05 13:38:38   running_mode    heat
#     2024-04-05 13:38:38   system_mode     heat
#     2024-04-05 13:38:38   temperature     24
#     2024-04-05 13:38:38   update_available true
#     2024-04-05 13:38:38   update_installed_version 22086704
#     2024-04-05 13:38:38   update_latest_version 22152240
#     2024-04-05 13:38:38   update_state    available
#     2024-04-05 13:38:38   vacation_mode   false
#
setstate MQTT2_zigbee_0x001fee000000999e Measured: 24 Battery: battery %
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:00:59 IODev MQTT2_FHEM_Server
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:00:59 associatedWith MQTT2_zigbee_pi
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:11:39 attrTemplateVersion 20220110
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 batteryPercent 100
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 batteryVoltage 3.4
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 batterymV 3400
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 daytemp 22
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:35:10 desired-temp set desired-temp 20.5
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 linkquality 117
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 nighttemp 16
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 occupancy true
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 pi_heating_demand 0
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 running_mode heat
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 system_mode heat
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 temperature 24
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 update_available true
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 update_installed_version 22086704
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 update_latest_version 22152240
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 update_state available
setstate MQTT2_zigbee_0x001fee000000999e 2024-04-05 13:38:38 vacation_mode false

Hat jemand eine Idee wo das Problem liegt ?

Danke & Gruß

Jochen
Titel: Aw: Thermostat Ubisys H1 arbeitet nicht mit zigbee2mqtt
Beitrag von: Müller am 06 April 2024, 15:59:30
in zigbee2mqtt habe ich folgende Einstellungen gefunden:

{
    "battery": 100,
    "linkquality": 87,
    "local_temperature": 24,
    "occupancy": true,
    "occupied_heating_setpoint": 16,
    "pi_heating_demand": 0,
    "running_mode": "off",
    "system_mode": "heat",
    "unoccupied_heating_setpoint": 16,
    "update": {
        "installed_version": 22086704,
        "latest_version": 22152240,
        "state": "available"
    },
    "update_available": true,
    "vacation_mode": false,
    "voltage": 3400
}

Daher habe ich in FHEM in jsonMap "current_heating_setpoint" gegen  "occupied_heating_setpoint" ersetzt.
und bei setList entsprechend.

Nun scheint es zu gehen.
Titel: Aw: Thermostat Ubisys H1 arbeitet nicht mit zigbee2mqtt
Beitrag von: Müller am 06 April 2024, 23:06:12
vielleicht kann jemand ein entsprechendes template erstellen ?
Titel: Aw: Thermostat Ubisys H1 arbeitet nicht mit zigbee2mqtt - gelöst (einigermaßen)
Beitrag von: Beta-User am 09 April 2024, 11:02:40
Zitat von: Müller am 06 April 2024, 23:06:12vielleicht kann jemand ein entsprechendes template erstellen ?
Hmmmm, also....:

Können ja, aber ich bin sehr unsicher, ob sich das lohnt, und wie es am besten anzugehen wäre. Hintergrund:
- Nach https://www.zigbee2mqtt.io/devices/H1.html gäbe es z.B. auch die Option, eine "schedule" zu setzen (=> with weekprofile). Da steht aber nicht, wie das ggf. ginge, und wenn, könnte es sein, dass das irgendwie "endet", weil erst dann "occupied" gilt (?).
- Anscheinend gibt es auf der z2m-Seite keine wirklichen Bestrebungen, die Endpoints (für Thermostate bzw. "Heizgeräte"?) irgendwie zu standardisieren, so dass man anscheinend für jede Variante eine eigene Implementierung auf der MQTT-Seite braucht. Das wird mit der Zeit dann aber tendenziell sehr unübersichtlich, so dass es am Ende dann (auf der MQTT- bzw. FHEM-Seite) ggf. einfacher ist, die paar exemplarischen Beispiele zu haben und klarzustellen, dass man das individuell mit den Angaben auf der blackadder/z2m.io-Seite abgleichen (und anpassen) muss, so wie du das ja am Ende dann auch (korrekt) gemacht hast....

Bin aber für Vorschläge offen, wie man das ggf. lösen kann.
Titel: Aw: Thermostat Ubisys H1 arbeitet nicht mit zigbee2mqtt - gelöst (einigermaßen)
Beitrag von: Müller am 21 April 2024, 08:46:18
Ich gebe dir recht, wenn man mehrere templates für verschiedenste Thermostate braucht wird die template liste unübersichtlich lang.

Grüße