Autor Thema: MQTT2_SERVER Template für Luftreiniger und Luftqualitätssensor  (Gelesen 95 mal)

Offline Udomatic

  • Full Member
  • ***
  • Beiträge: 323
Hallo,

ich habe heute über zigbee2mqtt einen Luftqualitätssensor von frient und den IKEA STARKVIND Luftreiniger angelernt.

Hier das List der beiden Geräte

IKEA STARKVIND


Internals:
   CFGFN     
   CID        zigbee_IKEA
   DEF        zigbee_IKEA
   DEVICETOPIC MQTT2_zigbee_IKEA
   FUUID      61a8e29f-f33f-8bc1-0400-ade25a1c4e819e68
   IODev      z2m
   LASTInputDev z2m
   MSGCNT     29
   NAME       MQTT2_zigbee_IKEA
   NR         235672
   STATE      OFF
   TYPE       MQTT2_DEVICE
   z2m_MSGCNT 29
   z2m_TIME   2021-12-02 19:18:50
   READINGS:
     2021-12-02 16:13:35   IODev           z2m
     2021-12-02 19:18:50   air_quality     good
     2021-12-02 16:13:35   associatedWith  MQTT2_zigbee_pi
     2021-12-02 16:13:35   availability    online
     2021-12-02 19:18:50   child_lock      UNLOCK
     2021-12-02 19:18:50   device_applicationVersion 16
     2021-12-02 19:18:50   device_dateCode 20210428
     2021-12-02 19:18:50   device_friendlyName IKEA STARKVIND
     2021-12-02 19:18:50   device_hardwareVersion 1
     2021-12-02 19:18:50   device_ieeeAddr 0xcc86ecfffe832897
     2021-12-02 19:18:50   device_manufacturerID 4476
     2021-12-02 19:18:50   device_manufacturerName IKEA of Sweden
     2021-12-02 19:18:50   device_model    E2007
     2021-12-02 19:18:50   device_networkAddress 44337
     2021-12-02 19:18:50   device_powerSource Mains (single phase)
     2021-12-02 19:18:50   device_softwareBuildID 1.0.033
     2021-12-02 19:18:50   device_stackVersion 103
     2021-12-02 19:18:50   device_type     Router
     2021-12-02 19:18:50   device_zclVersion 3
     2021-12-02 19:18:50   fan_mode        off
     2021-12-02 19:18:50   fan_speed       0
     2021-12-02 19:18:50   fan_state       OFF
     2021-12-02 19:18:50   led_enable      true
     2021-12-02 19:18:50   linkquality     255
     2021-12-02 19:18:50   pm25            12
     2021-12-02 19:18:50   replace_filter  false
Attributes:
   genericDeviceType AirPurifier
   homebridgeMapping On=fan_state,cmdOn=On,cmdOff=off,valueOn=ON,valueOFF=OFF
   readingList zigbee2mqtt/IKEA\x20STARKVIND/availability:.* availability
zigbee2mqtt/IKEA\x20STARKVIND:.* { json2nameValue($EVENT) }
   room       Homekit,MQTT2_DEVICE
   siriName   STARKVIND
   stateFormat fan_state

frient Luftqualitätssensor

Internals:
   CFGFN     
   CID        zigbee_frient
   DEF        zigbee_frient
   DEVICETOPIC MQTT2_zigbee_frient
   FUUID      61a8c4de-f33f-8bc1-e46b-255bd4fc4af287b9
   IODev      z2m
   LASTInputDev z2m
   MSGCNT     235
   NAME       MQTT2_zigbee_frient
   NR         234522
   STATE      excellent
   TYPE       MQTT2_DEVICE
   z2m_MSGCNT 235
   z2m_TIME   2021-12-02 20:31:35
   READINGS:
     2021-12-02 14:06:38   IODev           z2m
     2021-12-02 20:31:35   air_quality     excellent
     2021-12-02 14:06:38   associatedWith  MQTT2_zigbee_pi
     2021-12-02 14:06:38   availability    online
     2021-12-02 20:31:35   battery         100
     2021-12-02 20:31:35   battery_low     false
     2021-12-02 20:31:35   device_dateCode 20210824 21:05
     2021-12-02 20:31:35   device_friendlyName frient Luftqualitätssensor
     2021-12-02 20:31:35   device_ieeeAddr 0x0015bc0036001045
     2021-12-02 20:31:35   device_manufacturerID 4117
     2021-12-02 20:31:35   device_manufacturerName frient A/S
     2021-12-02 20:31:35   device_model    AQSZB-110
     2021-12-02 20:31:35   device_networkAddress 24019
     2021-12-02 20:31:35   device_powerSource Battery
     2021-12-02 20:31:35   device_type     EndDevice
     2021-12-02 20:31:35   device_zclVersion 1
     2021-12-02 20:31:35   humidity        63.4
     2021-12-02 20:31:35   linkquality     255
     2021-12-02 20:31:35   temperature     19.9
     2021-12-02 20:31:35   voc             0
     2021-12-02 20:31:35   voltage         3200
Attributes:
   genericDeviceType AirQualitySensor
   homebridgeMapping AirQuality=air_quality,values=0:unknown;1:excellent;2:good;3:fair;4:inferior;5:poor
   readingList zigbee2mqtt/frient\x20Luftqualit\xc3\xa4tssensor/availability:.* availability
zigbee2mqtt/frient\x20Luftqualit\xc3\xa4tssensor:.* { json2nameValue($EVENT) }
   room       Homekit,MQTT2_DEVICE
   siriName   Luftbuero
   stateFormat air_quality

Beide Geräte habe ich über den MQTT2_SERVER in FHEM eingebunden.

Besteht für diese Gerätetypen die Möglichkeit ein Template zu erstellen?

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,

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16324
Besteht für diese Gerätetypen die Möglichkeit ein Template zu erstellen?

Prinzipiell ja, es würde mir aber leichter fallen, wenn
- nicht als erstes irgendwelche "komischen" "friendly names" vergeben werden würden (Leer- und Sonderzeichen sind MIST!)
- https://forum.fhem.de/index.php/topic,94494.msg872200.html#msg872200 beachtet würde, also insbesondere
-- RAW-list statt list und
-- Links zu passenden "Projektseiten" direkt mitgeliefert würden, hier vermutlich https://www.zigbee2mqtt.io/devices/AQSZB-110.html und https://www.zigbee2mqtt.io/devices/E2007.html (gefunden über https://zigbee.blakadder.com/vendors.html).

Eigentlich sollte das jeweils nicht so schwer zusammenzupuzzeln sein:
- falls der AirQuality-Sensor baugleich ist, ist sowieso alles read-only, und du müßtest dir nur Gedanken machen über "gute" Reading-Namen und/oder Umrechnungen (für Batterie, siehe z.B. zigbee2mqtt_Wireless_Button)
- der Luftreiniger hat einige Datenpunkte zum Setzen und Abfragen. Für Setzen kann jedes beliebige (light-) attrTemplate aus dem zigbee2mqtt-Satz als Basis verwendet werden, für getList findet sich ein Beispiel in zigbee2mqtt_thermostat_with_weekrofile.

Wäre schön, wenn du mal einen ersten Aufschlag zu den beiden machen könntest.

PS: das sind keine MQTT2_SERVER-Geräte, sondern TYPE ist MQTT2_DEVICE ;) .
Server: HP-T620@Debian 10, 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:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline Udomatic

  • Full Member
  • ***
  • Beiträge: 323
Gut, dann versuche ich den Gang nach Canossa!

Prinzipiell ja, es würde mir aber leichter fallen, wenn
- nicht als erstes irgendwelche "komischen" "friendly names" vergeben werden würden (Leer- und Sonderzeichen sind MIST!)

Ich bin bereit zu lernen. Komisch war jetzt das Leerzeichen?
Habe ich korrigiert

- https://forum.fhem.de/index.php/topic,94494.msg872200.html#msg872200 beachtet würde, also insbesondere
-- RAW-list statt list und

Wird gemacht, siehe unten, hoffe das ist korrekt?  FHEM Refferenz sagt mir dazu list -r

-- Links zu passenden "Projektseiten" direkt mitgeliefert würden, hier vermutlich https://www.zigbee2mqtt.io/devices/AQSZB-110.html und https://www.zigbee2mqtt.io/devices/E2007.html (gefunden über https://zigbee.blakadder.com/vendors.html).

Wenn ich gewusst hätte, dass dir das weiter hilft hätte ich die Links direkt mit rein gepackt. Gelobe Besserung fürs nächste mal!

Eigentlich sollte das jeweils nicht so schwer zusammenzupuzzeln sein:
- falls der AirQuality-Sensor baugleich ist, ist sowieso alles read-only, und du müßtest dir nur Gedanken machen über "gute" Reading-Namen und/oder Umrechnungen (für Batterie, siehe z.B. zigbee2mqtt_Wireless_Button)
- der Luftreiniger hat einige Datenpunkte zum Setzen und Abfragen. Für Setzen kann jedes beliebige (light-) attrTemplate aus dem zigbee2mqtt-Satz als Basis verwendet werden, für getList findet sich ein Beispiel in zigbee2mqtt_thermostat_with_weekrofile.

Wenn es für mich leicht wäre würde ich nicht den schweren Gang nach Canossa gehen...

Wäre schön, wenn du mal einen ersten Aufschlag zu den beiden machen könntest.

PS: das sind keine MQTT2_SERVER-Geräte, sondern TYPE ist MQTT2_DEVICE ;) .

Hier die neuen List:

IKEA STARKVIND:
- An / Aus geht schon mal, habe ich mir beim Plug Template abgeschaut

ToDo: Das setzen des Attributs fan_mode --> Mögliche Stufen: Auto und Stufen 1-5

define MQTT2_zigbee_IKEA_STARKVIND MQTT2_DEVICE zigbee_IKEA_STARKVIND
attr MQTT2_zigbee_IKEA_STARKVIND devicetopic zigbee2mqtt/IKEA_STARKVIND
attr MQTT2_zigbee_IKEA_STARKVIND eventMap { dev=>{ON=>'on',OFF=>'off'} }
attr MQTT2_zigbee_IKEA_STARKVIND genericDeviceType switch
attr MQTT2_zigbee_IKEA_STARKVIND homebridgeMapping On=state,cmdOn=On,cmdOff=Off,valueOn=ON,valueOFF=OFF\

attr MQTT2_zigbee_IKEA_STARKVIND model zigbee2mqtt_plug
attr MQTT2_zigbee_IKEA_STARKVIND readingList $DEVICETOPIC:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_IKEA_STARKVIND room Homekit,MQTT2_DEVICE
attr MQTT2_zigbee_IKEA_STARKVIND setList on:noArg $DEVICETOPIC/set {"fan_state":"ON"}\
  off:noArg $DEVICETOPIC/set {"fan_state":"OFF"}\
  toggle:noArg $DEVICETOPIC/set {"fan_state":"TOGGLE"}
attr MQTT2_zigbee_IKEA_STARKVIND setStateList on off toggle
attr MQTT2_zigbee_IKEA_STARKVIND stateFormat fan_state

setstate MQTT2_zigbee_IKEA_STARKVIND on
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 10:13:05 IODev z2m
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 air_quality good
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 10:13:05 associatedWith MQTT2_zigbee_pi
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:06:40 attrTemplateVersion 20200904
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 10:13:05 availability offline
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 child_lock UNLOCK
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_applicationVersion 16
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_dateCode 20210428
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_friendlyName IKEA_STARKVIND
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_hardwareVersion 1
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_ieeeAddr 0xcc86ecfffe832897
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_manufacturerID 4476
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_manufacturerName IKEA of Sweden
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_model E2007
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_networkAddress 44337
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_powerSource Mains (single phase)
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_softwareBuildID 1.0.033
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_stackVersion 103
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_type Router
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 device_zclVersion 3
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 fan_mode 1
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 fan_speed 0
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 fan_state ON
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 led_enable true
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 linkquality 255
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 pm25 12
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:24:49 replace_filter false
setstate MQTT2_zigbee_IKEA_STARKVIND 2021-12-03 16:15:41 state set_off

frient Luftqualitätssensor

define MQTT2_zigbee_frient_Luftqualit MQTT2_DEVICE zigbee_frient_Luftqualit
attr MQTT2_zigbee_frient_Luftqualit genericDeviceType AirQualitySensor
attr MQTT2_zigbee_frient_Luftqualit readingList zigbee2mqtt/frient_Luftqualit\xc3\xa4tssensor/availability:.* availability\
zigbee2mqtt/frient_Luftqualit\xc3\xa4tssensor:.* { json2nameValue($EVENT) }
attr MQTT2_zigbee_frient_Luftqualit room MQTT2_DEVICE
attr MQTT2_zigbee_frient_Luftqualit stateFormat air_quality

setstate MQTT2_zigbee_frient_Luftqualit good
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:12:59 IODev z2m
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 air_quality good
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:13:00 associatedWith MQTT2_zigbee_pi
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:13:00 availability online
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 battery 100
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 battery_low false
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_dateCode 20210824 21:05
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_friendlyName frient_Luftqualitätssensor
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_ieeeAddr 0x0015bc0036001045
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_manufacturerID 4117
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_manufacturerName frient A/S
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_model AQSZB-110
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_networkAddress 24019
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_powerSource Battery
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_type EndDevice
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 device_zclVersion 1
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 humidity 58.5
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 linkquality 255
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 temperature 19.9
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 voc 211
setstate MQTT2_zigbee_frient_Luftqualit 2021-12-03 10:38:33 voltage 3300
« Letzte Änderung: Heute um 16:26:41 von Udomatic »
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,

 

decade-submarginal