Hauptmenü

Dummy

Begonnen von -user-, 05 November 2021, 08:04:19

Vorheriges Thema - Nächstes Thema

-user-

edit...

Nobbynews

Probier' es mal hiermit:

defmod atest at +*00:00:05 {\
fhem ("set d_zaehler ".(ReadingsNum("d_zaehler","state",0)+1));;\
}

KölnSolar

Puh,  ne Menge unübersichtliche Klammern...

Warum willst Du einen counter auf device-Ebene ? Das ist doch eher etwas für ein reading eines devices.  :-\ Dann einfach z.B.
Zitat+*00:00:05 {fhem('setreading d_zaehler counter '.(ReadingsVal("d_zaehler","counter",0)+1))}
Und weil viele Wege nach Rom führen, gibt es zig andere Varianten, um das Ziel zu erreichen.
Grüße Markus
Edit: vor den letzten beiden Posts geschrieben.  ;)
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

Nobbynews

Zitat von: KölnSolar am 05 November 2021, 08:41:22
Warum willst Du einen counter auf device-Ebene ? Das ist doch eher etwas für ein reading eines devices.  :-\ Dann einfach z.B.Und weil viele Wege nach Rom führen,
Würde ich ja auch über eine Reading machen. Es war halt nach device gefragt.
On Top dann noch ReadingsVal durch ReadingsNum ersetzen.

MadMax-FHEM

Zitat von: fhempi am 05 November 2021, 08:29:31
sieht kompliziert aus, teste ich gleich mal.

Aber warum funktioniert das hier nicht ? ich wollte anstatt DOIF einfach ein AT ohne Bedingung nutzen:
define di_wind DOIF ([tg_wetter:windSpeed] > 5) (set Zaehler {([Zaehler]+1)})

Was du hast ist "DOIF-Syntax" muss ja nicht (und tut es offenbar ja auch nicht: Fehler im Log?) bei "at".

Beides (DOIF und at) sind Module KEINE Befehle!
Und jedes Modul kann/bringt halt seune "Eigenheiten" mit... ;)

Es gibt bestimmt auch eine "setMagic-Variante" die bei at funktioniert, vermutlich anders zu "klammern"...

...oder eben doch ein DOIF mit Zeittrigger (ist ja wie ein at)...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

#5
Zitat von: fhempi am 05 November 2021, 08:53:59
Habe es jetzt wie Vorgeschlagen gelöst:
+*00:00:05 {fhem ("set d_zaehler ".(ReadingsNum("d_zaehler","state",0)+1))}

Zitat
Würde ich ja auch über eine Reading machen. Es war halt nach device gefragt.
On Top dann noch ReadingsVal durch ReadingsNum ersetzen.

:o - verstehe ich leider nicht  :(

Oh, dann solltest du hier aber "nachlegen"!!!

Dein set ist ein Befehl "an" das Device.
Setzt in deinem Fall (dummy) "nur" den "state" des Devices.
Bei anderen Devices löst du u.U. auch eine "Funktion" aus.
Bzw. ist ein dummy eben "geduldig" und "schluckt" alles.
Bzw. wenn du bei einem dummy set on/off verwendest, "passiert" auch was...

Ein Reading ist "nur" ein Wert "in/an" einem Device.
Das Setzen eines Reqdings löst am Device nix aus (abgesehen von u.U. userReadings)...

D.h.:

set Device on -> Device wird "eingeschaltet" und "state Reading" wird zu "on" (meist)

setreading Device state on -> Reading state geht auf "on" das Device "tut" aber "nichts"...

Und mit setreading kannst du "eigene" Werte in/an einem Device "speichern" und wieder "abfragen" OHNE das Device selbst zu beeinflussen (sofern du dir auch einen neuen Readingnamen "ausdenkst")...

Wie geschrieben: bei einem dummy "egal" aber bei (allen) anderen Devices halt nicht...

EDIT: mittels ReadingsVal bzw. ReadingsNum (wenn du nur numerische "Anteile" willst) kannst du eben Werte von Readings "abfragen" ("Gegenstück" zu setreading). Oder eben "neu" sog. "setMagic" was du in deinem DOIF hast...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Beta-User

Nur für den Fall, dass ein Zusammenhang mit https://forum.fhem.de/index.php/topic,123913.0.html bestehen sollte: Verzichte auf das ganze "Drumrum" und arbeite mit einem userReadings-Eintrag, der an dem GPIO-Dingens (so es denn sowas wirklich sein muss: https://forum.fhem.de/index.php/topic,123194.0/topicseen.html) direkt zählt (monotonic).

Falls du nach Lektüre von dem 2. Link eine Alternative suchen solltest: Arducounter.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

MadMax-FHEM

Zitat von: Beta-User am 05 November 2021, 09:13:30
Nur für den Fall, dass ein Zusammenhang mit https://forum.fhem.de/index.php/topic,123913.0.html bestehen sollte: Verzichte auf das ganze "Drumrum" und arbeite mit einem userReadings-Eintrag, der an dem GPIO-Dingens (so es denn sowas wirklich sein muss: https://forum.fhem.de/index.php/topic,123194.0/topicseen.html) direkt zählt (monotonic).

Falls du nach Lektüre von dem 2. Link eine Alternative suchen solltest: Arducounter.

Da bin ich auch grad (erst) "drüber gestolpert"...

Evtl. ja (bzw. schreibt er das nicht sogar?) erst mal mit einen dummy testen... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Beta-User

...vermutlich überliest der TE jetzt wegen deines Post lieber meinen, weil er ihm zu kompliziert ist...
Aber noch was: das setreading funktioniert auch direkt am at, wenn man unbedingt eines braucht: Grundsätzliche weitere Botschaft: Weg mit dem dummy-Geschubse >:( , das ist fast immer unnötig.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

MadMax-FHEM

Zitat von: Beta-User am 05 November 2021, 09:25:24
...vermutlich überliest der TE jetzt wegen deines Post lieber meinen, weil er ihm zu kompliziert ist...
Aber noch was: das setreading funktioniert auch direkt am at, wenn man unbedingt eines braucht: Grundsätzliche weitere Botschaft: Weg mit dem dummy-Geschubse >:( , das ist fast immer unnötig.

Sorry, von welchem Beitrag sprichst du jetzt?

Die Erläuterung?
Ich finde es schadet nicht bzgl. set und setreading Bescheid zu wissen...

Und klar geht set/setreading auch im at aber die Frage war ja eher: warum geht die schöne/einfache "setMagic"-Variante aus einem DOIF (was offenbar im Einsatz ist) beim at nicht 1:1...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Damian

Zitat von: MadMax-FHEM am 05 November 2021, 09:51:23
warum geht die schöne/einfache "setMagic"-Variante aus einem DOIF (was offenbar im Einsatz ist) beim at nicht 1:1...

weil, DOIF einen eigenen Parser mitbringt und der Parser für setmagic in set/setreading beim DOIF nicht zum Zuge kommt.

Die Syntax aus DOIF wurde zum späteren Zeitpunkt als setmagic nicht zu 100% nachgebaut.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

betateilchen

Unabhängig davon, wie und wo man den Zähler realisiert, würde mich das Einsatzszenario des Fragestellers interessieren.

Vermutlich läßt sich seine Aufgabenstellung auch einfacher lösen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

MadMax-FHEM

Zitat von: betateilchen am 05 November 2021, 10:55:00
Unabhängig davon, wie und wo man den Zähler realisiert, würde mich das Einsatzszenario des Fragestellers interessieren.

Vermutlich läßt sich seine Aufgabenstellung auch einfacher lösen.

Vermutlich das hier: https://forum.fhem.de/index.php/topic,123913.msg1184745.html#msg1184745

Also erst mal testen bevor er es dann richtig verknüpft...

EDIT: klar bessere Variante einfach mal das GPIO-Ding zum Laufen bringen und dann sehen was es da an "Zähl-Readings" gibt und dann einfach das mit dem Gascalculator "verknüpfen"...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Beta-User

Zitat von: MadMax-FHEM am 05 November 2021, 11:04:46
EDIT: klar bessere Variante einfach mal das GPIO-Ding zum Laufen bringen und dann sehen was es da an "Zähl-Readings" gibt und dann einfach das mit dem Gascalculator "verknüpfen"...
Wenn schon, denn schon: Die klar bessere Variante ist, Pi-GPIO zu meiden und einen Microcrontroller dazwischen zu schalten.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

MadMax-FHEM

Zitat von: Beta-User am 05 November 2021, 11:07:10
Wenn schon, denn schon: Die klar bessere Variante ist, Pi-GPIO zu meiden und einen Microcrontroller dazwischen zu schalten.

Tja, es geht halt immer besser ;)

Würde ich auch machen :)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)