Aqara Thermostat E1

Begonnen von neyzen, 18 November 2022, 14:33:17

Vorheriges Thema - Nächstes Thema

Rolf56

Ich habe seit gestern einen eingebunden.
Das nötige DDF-File muss derzeit noch manuell eingebunden werden. Zudem sind zusätzliche Einträge in der general.xml Datei notwendig.
Ist alles in folgendem Issue beschrieben:
https://github.com/dresden-elektronik/deconz-rest-plugin/issues/6351

Rolf56

#2
Gerne würde ich den heatsetpoint des Gerätes in einem DOIF setzen. Ich habe nun schon so ziemlich alles versucht, komme aber zu keinem Ergebnis.

Hier ein list des Gerätes:

Internals:
   DEF        sensor 75  IODev=deConz
   FUUID      639c600c-f33f-6210-3ba0-88b1afb3e4225fb3
   FVERSION   31_HUEDevice.pm:0.267300/2022-11-21
   ID         S75
   INTERVAL   
   IODev      deConz
   NAME       HUESensor75
   NR         219
   STATE      20.4 °C
   TYPE       HUEDevice
   eventCount 52995
   has_events 1
   lastannounced 2022-12-23T05:58:33Z
   manufacturername LUMI
   modelid    lumi.airrtc.agl001
   name       Buero.Thermostat
   on         1
   reachable  1
   swversion  0.0.0_0025
   type       ZHAThermostat
   uniqueid   54:ef:44:10:00:67:44:85-01-0201
   READINGS:
     2022-12-18 12:16:05   IODev           deConz
     2022-12-23 12:26:12   battery         100
     2022-12-23 12:26:12   batteryPercent  100
     2022-12-23 12:26:12   heatsetpoint    21.0
     2022-12-23 12:26:07   lastseen        2022-12-23T11:26Z
     2022-12-23 12:26:12   locked          false
     2022-12-23 12:26:12   mode            heat
     2022-12-23 12:26:12   reachable       1
     2022-12-23 12:26:47   temperature     20.4
   helper:
     devtype    S
     reachable  0
     state     
     update_timeout 1
     configList:
       cmds:
         lock       {"locked": true }
         unlock     {"locked": false }
       regex:
         HASH(0x73ed2a8)
         HASH(0x73d9b78)
         HASH(0x73f1f50)
     json:
       e          changed
       id         75
       r          sensors
       source     event
       t          event
       uniqueid   54:ef:44:10:00:67:44:85-01-0201
       state:
         lastupdated 2022-12-23T11:26:47.050
         temperature 2040
         windowopen false
     setList:
Attributes:
   IODev      deConz
   alias      Buero.Thermostat
   configList /mode (.*)/:{"mode":"$1"}
/heatsetpoint (.*)/:perl:{'{"heatsetpoint":' . $VALUE1 * 100 . '}'}
/offset (.*)/:perl:{'{"offset":' . $VALUE1 * 100 . '}'}
lock:{"locked": true }
unlock:{"locked": false }
   group      HUESensor
   icon       max_heizungsthermostat
   model      lumi.airrtc.agl001
   room       Buero,HUEDevice
   stateFormat temperature °C


Hier mein DOIF command:
([HUESensor45:"1002"]) (set HUESensor75 heatsetpoint 21)

Ich erhalte immer die Fehlermeldung:
error
set HUESensor75 heatsetpoint 21: Please define HUESensor75:heatsetpoint first


Kann mir bitte jemand mitteilen, was ich falsch mache und wie die korrekte Syntax ist.

joesy

Damit Werte gesetzt werden können, müss diese erst bekannt sein. Bei den meisten Geräten ist dies durch den Typ und dem Modul bereits festgelegt.

Bei einen neuen Gerät ist dies nicht unbedingt immer gegeben. Hier kann über das Attribut configList definiert werden. Bei einem Thermostat z.B. folgendermaßen:

/mode (.*)/:{"mode":"$1"}
/heatsetpoint (.*)/:perl:{'{"heatsetpoint":' . $VALUE1 * 100 . '}'}
/offset (.*)/:perl:{'{"offset":' . $VALUE1 * 100 . '}'}
lock:{"locked": true }
unlock:{"locked": false }


Dann sollte das DOIF auch funktionieren.

Rolf56

Danke joesy
Nun funktioniert es wie gewünscht.
Habe das list in meinem oberen Post angepasst, so wie es jetzt funktioniert.

neyzen

Danke für die Rückmeldung. Klingt interessant.
Mich würde interessieren ob man auch die aktuelle Regler Stellung als reading bekommt. Also z.b. 60% offen. oder komplett zu.
Zweite Frage wäre:
Was nimmt er den als Solltemperatur an? Vermutlich seine eigene am Thermostat gemessene. Gibt's eventuell die Möglichkeit externe Temperatur Sensoren anzukoppeln?