Autor Thema: UserReadings mit difference funktionieren nicht  (Gelesen 195 mal)

Offline _fhemuser_

  • New Member
  • *
  • Beiträge: 48
UserReadings mit difference funktionieren nicht
« am: 02 Oktober 2022, 13:10:52 »
Hallo,

da mir ein Hardwaresensor fehlt, möchte ich einen Status ausrechnen.

Dazu berechne ich Temperaturunterschiede.

Mit DIF differential {ReadingsVal("Temp1", "T1", 1)*30}, erhalte ich annähernd die Unterschiede die im 30 Sekundenrhytmus übertragen werden.
Mit DIF2 difference {ReadingsVal("Temp1", "T1", 1) }, erhalte ich immer 0.

ist die Sytax für difference und differential unterschiedlich?

Besten Dank
_fhemuser_
« Letzte Änderung: 02 Oktober 2022, 13:26:29 von _fhemuser_ »
fhem in der aktuellsten Version auf:
Raspberry 2 mit SD-Karte | fhem2fhem
Raspberry 3 mit SD Karte | fehm2fhem | MAXCube | NanoCul433 | NanoCul868 | DbLog | deCONZ -> zieht um auf einen Raspberry 4
Raspberry 4 mit SD Karte | fhem2fhem

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19331
Antw:UserReadings mit difference funktionieren nicht
« Antwort #1 am: 02 Oktober 2022, 16:31:55 »
Einmal mehr: https://forum.fhem.de/index.php/topic,71806.0.html

Meine Glaskugel meint, dass es helfen könnte einen passenden trigger zu ergänzen...
Server: HP-T620@Debian 11, 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: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Offline _fhemuser_

  • New Member
  • *
  • Beiträge: 48
Antw:UserReadings mit difference funktionieren nicht
« Antwort #2 am: 03 Oktober 2022, 11:43:19 »
Das hilft leider nicht weiter.

In der Foren- und WikiSuche habe ich dazu nichts gefunden.

In der Commandref steht nur, dass der trigger optional ist.

Bei differential funktioniert es ohne Trigger korrekt.

Der Timestamp ändert sich bei beiden UserReadings nach jeder Temperaturaktualisierung. Also wird auch etwas berechnet

Wenn ich einen Trigger angebe zB DIF2:T1 difference {ReadingsVal("Temp1", "T1", 1) }, wird der Timestamp ncht verändert, was auf einen Fehler hindeutet.

Wenn ich die Zeile andere auf:  DIF2:T1.* difference {ReadingsVal("Temp1", "T1", 1) }, wird der Timestamp verändert, aber ich erhalte auch immer 0.

Ich werde wohl den fehlenden Sensor nachrüsten müssen.
fhem in der aktuellsten Version auf:
Raspberry 2 mit SD-Karte | fhem2fhem
Raspberry 3 mit SD Karte | fehm2fhem | MAXCube | NanoCul433 | NanoCul868 | DbLog | deCONZ -> zieht um auf einen Raspberry 4
Raspberry 4 mit SD Karte | fhem2fhem

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 19331
Antw:UserReadings mit difference funktionieren nicht
« Antwort #3 am: 03 Oktober 2022, 11:49:09 »
Solange du nicht zeigst, um was es überhaupt geht (list!), wird keiner wirklich helfen können.

Das mit "optional" ist in den meisten Fällen schlicht irreführend, "eigentlich" ist es fast immer PFLICHT!

Und in der Tat war deine Version 1 halt unvollständig, ganz korrekt sollte für V2 hinter dem Reading-Namen dann noch ein Doppelpunkt kommen.
Server: HP-T620@Debian 11, 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: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files