Danke, das werde ich mir anschauen.
Grüße,
Kai
Danke, das werde ich mir anschauen.
Grüße,
Kai
Hi Kai,
Die Instanzen bleiben nach dem Update auf Status Inaktiv
Funktion ist aber weiterhin gegeben.
Grüße
Daniel
Ich habe den falschen Status gesetzt, korrigiere ich noch.
Danke für die Rückmeldung.
Grüße,
Kai
Ohh Mist, falsch vorgesagt Sorry …
Moin @KaiS
habe mal wieder ein fehlendes Profil (gilt für den Tuya Smart Air House Keeper):
11.03.2022, 20:00:28 | mapExposesToVariables:: Missed Exposes | {"light":[],"switch":[],"0":{"type":"numeric","name":"pm25","property":"pm25","access":1,"unit":"\u00b5g\/m\u00b3","description":"Measured PM2.5 (particulate matter) concentration"}}
Das Payload dazu:
11.03.2022, 20:14:00 | MQTT Payload | {"zh":{"_events":{},"_eventsCount":0,"ID":34,"_type":"Router","_ieeeAddr":"0xa4c138f182a17360","_networkAddress":50570,"_manufacturerID":4417,"_endpoints":[{"_events":{},"_eventsCount":0,"ID":1,"profileID":260,"deviceID":81,"inputClusters":[4,5,61184,0],"outputClusters":[25,10],"deviceNetworkAddress":50570,"deviceIeeeAddress":"0xa4c138f182a17360","clusters":{"genBasic":{"attributes":{"65503":"-i�)i-i�)i","65506":54,"65508":0,"modelId":"TS0601","manufacturerName":"_TZE200_dwcarsat","powerSource":1,"zclVersion":3,"appVersion":70,"stackVersion":0,"hwVersion":1,"dateCode":""}}},"_binds":[],"_configuredReportings":[],"meta":{},"pendingRequests":[]},{"_events":{},"_eventsCount":0,"ID":242,"profileID":41440,"deviceID":97,"inputClusters":[],"outputClusters":[33],"deviceNetworkAddress":50570,"deviceIeeeAddress":"0xa4c138f182a17360","clusters":{},"_binds":[],"_configuredReportings":[],"meta":{},"pendingRequests":[]}],"_manufacturerName":"_TZE200_dwcarsat","_powerSource":"Mains (single phase)","_modelID":"TS0601","_applicationVersion":70,"_stackVersion":0,"_zclVersion":3,"_hardwareVersion":1,"_dateCode":"","_interviewCompleted":true,"_interviewing":false,"_skipDefaultResponse":false,"_skipTimeResponse":false,"meta":{},"_lastSeen":1647026039749,"_defaultSendRequestWhen":"immediate","_linkquality":135},"_definition":{"fingerprint":[{"modelID":"TS0601","manufacturerName":"_TZE200_dwcarsat"}],"model":"TS0601_smart_air_house_keeper","vendor":"TuYa","description":"Smart air house keeper","fromZigbee":[{"cluster":"manuSpecificTuya","type":["commandDataReport","commandDataResponse"],"options":[{"type":"numeric","name":"temperature_precision","property":"temperature_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for temperature, takes into effect on next report of device."},{"type":"numeric","name":"temperature_calibration","property":"temperature_calibration","access":2,"description":"Calibrates the temperature value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"humidity_precision","property":"humidity_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for humidity, takes into effect on next report of device."},{"type":"numeric","name":"humidity_calibration","property":"humidity_calibration","access":2,"description":"Calibrates the humidity value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"co2_precision","property":"co2_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for co2, takes into effect on next report of device."},{"type":"numeric","name":"co2_calibration","property":"co2_calibration","access":2,"description":"Calibrates the co2 value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"voc_precision","property":"voc_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for voc, takes into effect on next report of device."},{"type":"numeric","name":"voc_calibration","property":"voc_calibration","access":2,"description":"Calibrates the voc value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"formaldehyd_precision","property":"formaldehyd_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for formaldehyd, takes into effect on next report of device."},{"type":"numeric","name":"formaldehyd_calibration","property":"formaldehyd_calibration","access":2,"description":"Calibrates the formaldehyd value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"pm25_precision","property":"pm25_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for pm25, takes into effect on next report of device."},{"type":"numeric","name":"pm25_calibration","property":"pm25_calibration","access":2,"description":"Calibrates the pm25 value (absolute offset), takes into effect on next report of device."}]}],"toZigbee":[{"key":["scene_store"]},{"key":["scene_recall"]},{"key":["scene_add"]},{"key":["scene_remove"]},{"key":["scene_remove_all"]},{"key":["read"]},{"key":["write"]},{"key":["command"]}],"exposes":[{"type":"numeric","name":"temperature","property":"temperature","access":1,"unit":"°C","description":"Measured temperature value"},{"type":"numeric","name":"humidity","property":"humidity","access":1,"unit":"%","description":"Measured relative humidity"},{"type":"numeric","name":"co2","property":"co2","access":1,"unit":"ppm","description":"The measured CO2 (carbon dioxide) value"},{"type":"numeric","name":"voc","property":"voc","access":1,"unit":"ppb","description":"Measured VOC value"},{"type":"numeric","name":"formaldehyd","property":"formaldehyd","access":1,"description":"The measured formaldehyd value"},{"type":"numeric","name":"pm25","property":"pm25","access":1,"unit":"µg/m³","description":"Measured PM2.5 (particulate matter) concentration"},{"type":"numeric","name":"linkquality","property":"linkquality","access":1,"unit":"lqi","description":"Link quality (signal strength)","value_min":0,"value_max":255}],"options":[{"type":"numeric","name":"temperature_precision","property":"temperature_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for temperature, takes into effect on next report of device."},{"type":"numeric","name":"temperature_calibration","property":"temperature_calibration","access":2,"description":"Calibrates the temperature value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"humidity_precision","property":"humidity_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for humidity, takes into effect on next report of device."},{"type":"numeric","name":"humidity_calibration","property":"humidity_calibration","access":2,"description":"Calibrates the humidity value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"co2_precision","property":"co2_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for co2, takes into effect on next report of device."},{"type":"numeric","name":"co2_calibration","property":"co2_calibration","access":2,"description":"Calibrates the co2 value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"voc_precision","property":"voc_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for voc, takes into effect on next report of device."},{"type":"numeric","name":"voc_calibration","property":"voc_calibration","access":2,"description":"Calibrates the voc value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"formaldehyd_precision","property":"formaldehyd_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for formaldehyd, takes into effect on next report of device."},{"type":"numeric","name":"formaldehyd_calibration","property":"formaldehyd_calibration","access":2,"description":"Calibrates the formaldehyd value (absolute offset), takes into effect on next report of device."},{"type":"numeric","name":"pm25_precision","property":"pm25_precision","access":2,"value_min":0,"value_max":3,"description":"Number of digits after decimal point for pm25, takes into effect on next report of device."},{"type":"numeric","name":"pm25_calibration","property":"pm25_calibration","access":2,"description":"Calibrates the pm25 value (absolute offset), takes into effect on next report of device."}]},"_definitionModelID":"TS0601"}
Gruß
Burkhard
Anbei noch die Maßeinheit für PM2.5: µg/m3 (0-1000)
Achja, die Maßeinheit bei Formaldehyd ist in diesem Fall ppm:
{
"result": {
"category": "pm2.5",
"functions": [],
"status": [
{
"code": "pm25_value",
"dp_id": 2,
"type": "Integer",
"values": "{\"unit\":\"ug/m3\",\"min\":0,\"max\":999,\"scale\":0,\"step\":1}"
},
{
"code": "temp_current",
"dp_id": 18,
"type": "Integer",
"values": "{\"unit\":\"℃\",\"min\":0,\"max\":850,\"scale\":1,\"step\":1}"
},
{
"code": "humidity_value",
"dp_id": 19,
"type": "Integer",
"values": "{\"unit\":\"%\",\"min\":0,\"max\":1000,\"scale\":1,\"step\":1}"
},
{
"code": "ch2o_value",
"dp_id": 20,
"type": "Integer",
"values": "{\"unit\":\"ppm\",\"min\":0,\"max\":1000,\"scale\":3,\"step\":1}"
},
{
"code": "voc_value",
"dp_id": 21,
"type": "Integer",
"values": "{\"unit\":\"ppm\",\"min\":0,\"max\":2000,\"scale\":3,\"step\":1}"
},
{
"code": "co2_value",
"dp_id": 22,
"type": "Integer",
"values": "{\"unit\":\"ppm\",\"min\":350,\"max\":2000,\"scale\":0,\"step\":1}"
}
]
},
Vielleicht kann man das auch gleich noch anpassen und „scale“ gibt die Nachkommastellen an. Vielleicht auch ganz interessant für die Profile.
Guten Abend @KaiS ,
habe dein Modul (Beta 4.0) mit einem Eurotronic Spirit Heizkörperthermostat getestet.
Dabei ist kein setzen der Temperatur möglich (‚Z2M_OccupiedHeatingSetpoint‘). Im Z2M Log kam ein „Invalid Value“ als Fehler an. Ich habe mir daraufhin dein Modul angeschaut und an der betreffenden Stelle in „Zigbee2MqttHelper.php“ folgende Zeilen geändert, dann gehts:
case ‚Z2M_OccupiedHeatingSetpoint‘:
//$Payload[‚occupied_heating_setpoint‘] = strval($Value);
$Payload[‚occupied_heating_setpoint‘] = $Value;
break;
D.h. der Wert (Float) darf nicht als String übergeben werden. Dein Code funktioniert nur, wenn man als Wert eine Ganzzahl (z.B. 22) übergibt, nicht jedoch bei einem Float (z.B. 22.5).
Ich teste jetzt weiter, ggf. muss du das noch an weiteren Stellen korrigiueren.
Könntest du das im Modul entsprechend anpassen?
Danke dir und Gruß
Georg
Moin Kai,
wenn Du die obigen Wünsche erfüllst kannst Du bitte den Status von 104 (inaktiv) auf 102 (aktiv) setzen?
Ralf
Hallo zusammen,
ich habe mal versucht, die Anbindung von Zigbee2MQTT mit IPS Bordmitteln umzusetzen. Der Grund liegt darin, dass ich eine Methode wollte, welche mich unabhängig macht von notwendigen Anpassungen im IPS Modul. Das hat erstaunlich gut funktioniert. Der Nachteil ist, dass man relativ viel händisch konfigurieren muss. Der Vorteil ist, dass man jedes Device, welches von Zigbee2MQTT unterstützt wird, direkt in IPS nutzen kann, ohne möglicherweise Anpassungen im IPS Modul vornehmen zu müssen, weil hier das Device vllt. noch nicht bekannt ist. Ich möchte damit das IPS Modul keinesfalls in Frage stellen. Dieses ist insbesondere bei der Konfiguration deutlich einfacher und schneller. Wer aber den oben genannten Vorteil haben will, kann dies mit Standard IPS Mitteln umsetzen.
Gruß
Georg
Das sollte nun in der aktuelle Version vorhanden sein.
Grüße,
Kai
Das sollte mit der neuen Version auch gefixt sein.
Grüße,
Kai
Kannst du mal zwei Debugs posten, also ein mal mit einem Float Wert und ein mal mit einem Integer Wert.
Bei beiden natürlich mit dem Code von mir.
Grüße,
Kai
So… Ich habe zwar gehofft niemandem auf die Nerven gehen zu müssen, aber ich komme einfach nicht weiter.
Setup:
Wenn ich die Leisten mit dem MQTT-Explorer anspreche klappt alles, d.h. das Setup an sich funktioniert.
Aber ich bekomme das Ganze nicht in IPS.
Ich habe das Modul installiert und auch die IPSymconExtension.js ins entsprechende Verzeichnis kopiert.
Es wurde mir auch im Objektbaum automatisch eine Verzeichnisstruktur angelegt:
Allerdings zeigt der Z2M Konfigurator keine Geräte an. Wenn ich den ausführe bzw. auf „aktualisieren“ klicke, sehe ich im MQTT-Explorer:
Versuche ich manuell ein Gerät anzulegen und aus IPS mit dem „offiziellen“ Befehl "message to topic zigbee2mqtt/FRIENDLY_NAME/set
with payload {"state_l1": "ON"}
" die Leiste zu schalten passiert nichts.
Im Debugger erscheint die Meldung:
{„DataID“:"{7F7632D9-FA40-4F38-8DEA-C83CD4325A32}",„PacketType“:3,„QualityOfService“:0,„Retain“:false,„Topic“:„zigbee2mqtt/bridge/logging“,„Payload“:"{„level“:„error“,„message“:„Entity ‚zigbee2mqtt/0xec1bbdfffea57892‘ is unknown“}"}
Wenn ich die Leiste aus dem MQTT-Explorer schalte bekomme ich die Rückmeldung:
{„DataID“:"{7F7632D9-FA40-4F38-8DEA-C83CD4325A32}",„PacketType“:3,„QualityOfService“:0,„Retain“:false,„Topic“:„zigbee2mqtt/bridge/logging“,„Payload“:"{„level“:„info“,„message“:„MQTT publish: topic ‚zigbee2mqtt/0xec1bbdfffea57892‘, payload ‚{\„linkquality\“:39,\„state_l1\“:\„OFF\“,\„state_l2\“:\„OFF\“}‘“}"}
Ich bin ratlos… Was mache ich falsch?
Ich frage mich gerade, warum Deine Geräte unter Bridge zu finden sind?
Was hast Du denn im z2m-Konfigurator eingestellt und bist Du auf dem Beta-Zweig von @KaiS z2m-Modul?
Und wichtig: Hast Du beim z2m-Konfigurator von @KaiS das richtige Gateway (MQTT-Server) eingestellt?
Im Konfigurator sollte es dann so aussehen:
Gruß
Burkhard
Das wundert mich übrigens noch viel mehr, dass dürfte nicht passieren, wenn Du @KaiS sein Modul nutzt.
Gruß
Burkhard
Das wurde vom MQTT-Server Konfigurator automatisch so angelegt. Da habe ich eigentlich garnichts gemacht.
Ich habe das Modul aus dem ModulStore installiert (Version 3.4.1). Von einer Beta-Version habe ich nichts gesehen.
Ja, das sollte eigentlich alles passen:
Ich hab’s gefunden.
Der Hinweis mit der Beta war es. Damit werden die Gerät jetzt im Z2M Konfigurator gefunden und ich kann beide Steckdosenleisten schalten.
Merci!
Sehr gut, dann hat ja noch alles geklappt.
Grüße,
Kai
Moin,
ich hab da mal ne generelle Frage: Manch einer hat im Configurator „bridge“ las topic zu stehen, manch einer (so wie ich) „tigbee2mqtt“.
Was wäre denn jetzt der eigentlich korrekte Eintrag und welche Auswirkungen hat es wenn ich „bridge“ anstelle von „zigbee2mqtt“ nehme?
Gruß
Burkhard
Ich würde mal behaupten, dass das im Kern völlig egal ist, wichtig ist, das überall das gleiche Base Topic steht, also im Z2M
und im Configurator vom Modul
und vor allem in jeder Instanz, gerade wenn sie von Hand angelegt wurde und nicht über den Configurator