Hi,
verzweifel gerade etwas an meinem 1wire Gaszähler. Zählen tut er, nur bekomme ich den counter nicht mittels userReading umgerechnet.
aus der config:
define OWAN OWServer 192.168.2.1:4304
define ug_f_count_1 OWDevice 1D.2E0D10000000 300
attr ug_f_count_1 group Zaehler
attr ug_f_count_1 model DS2423
attr ug_f_count_1 polls counters.A,counters.B
attr ug_f_count_1 room ug_f
attr ug_f_count_1 userReadings volume.B differential { ReadingsVal("ug_f_count_1","counters.B",undef) / 10;; }, energy.B differential { ReadingsVal("ug_f_count_1","counters.B",undef) * 1.113;; }
"counters.B" zählt fleissig hoch. Aber im Gegensatz zu anderen userReadings (auf Homematic TH Sensoren) bekomme ich nicht die berechneten "volume.B" und "energy.B".
Funktionieren tun die Perl-brocken - zumindest, wenn ich sie händisch ausprobiere:
fhem> { ReadingsVal("ug_f_count_1","counters.B",undef) / 10;; }
11.6
fhem> { ReadingsVal("ug_f_count_1","counters.B",undef) * 1.113;; }
129.108
fhem> list ug_f_count_1
Internals:
DEF 1D.2E0D10000000 300
IODev OWAN
NAME ug_f_count_1
NR 631
STATE counters.A: 82 counters.B: 116
TYPE OWDevice
Readings:
2014-01-11 20:01:38 counters.A 82
2014-01-11 20:01:38 counters.B 116
2014-01-11 20:01:38 state counters.A: 82 counters.B: 116
Fhem:
address 1D.2E0D10000000
alerting 0
interfaces counter
interval 300
rand 16
...
Attributes:
group Zaehler
model DS2423
polls counters.A,counters.B
room ug_f
userReadings volume.B differential { ReadingsVal("ug_f_count_1","counters.B",undef) / 10; }, energy.B diff ... (abgeschnitten, terminal zu klein)
Trotz allem googeln und fhem.pl lesen blick ich einfach nicht, was ich da falsch mache. Sieht für mich genauso aus, wie ichs in anderen Beispielen und der commandref gefunden habe - und an anderen stellen tut's ja auch.
danke
Rainer
so. Nach viel viel probieren hab' ichs doch noch gefunden...
Meine Namen für die userReadings scheinen die Ursache gewesen zu sein.
Nach dem Entfernen des Punkts aus den Namen funktionierts.
update: und OWServer/OWDevice *scheinen* nach einem rereadcfg ihren Dienst einzustellen :(
Zitatupdate: und OWServer/OWDevice *scheinen* nach einem rereadcfg ihren Dienst einzustellen :(
Das Phänomen gibt es schon eine ganze Weile. War nicht von Anfang an so. Im Moment helfe ich mir mit "shutdown restart".
Gruß
Frank
ich hatte das eigentlich wieder repariert und auch feedback bekommen das es geht.
ist eure version aktuell?
ansonsten ist rereadcfg nicht optimal und es ist besser ein device per telnet oder in der detail Ansicht zu bearbeiten und dann zu speichern. aber das ist eine andere diskussion.
gruss
andre
Hi,
version ist:
# $Id: 11_OWDevice.pm 4458 2013-12-25 12:33:00Z borisneubert $
# $Id: 10_OWServer.pm 4458 2013-12-25 12:33:00Z borisneubert $
Update hat gerade auch nix neueres gefunden.
reread nutze ich vor allem um die config umzusortieren und/oder zu kommentieren. Glaube auch probleme mit perl-code in notifies gehabt zu haben, den ich per telnet reingeschoben habe. Nehm' ich jetzt halt shutdown restart und hoffe, daß mir keine "on-till irgendwas" timer verloren gehen ;)
Interessieren tut mich eine weitere Ursachenforschung aber schon - und sei's nur um mehr fhem interna zu verstehen.
BTW: nonblocking habe ich erst diese nacht eingeschaltet - hatte noch keine chance zu testen ob das n unterschied macht.
Rainer
ja. du hast dir neueste version.
ich kann das problem auch reproduzieren. ich weiß nur noch nicht wie ich es beheben kann. ich überlege mir etwas.
wenn du notifys im web frontend editierst sollte es keine probleme geben.
ein on-till oder allgemein ein einmaliges at würde beim rereadcfg genau so verloren gehen wie beim shutdown restart.
auch das funktioniert wenn man per telnet oder web (um)konfiguriert.
gruss
andre
ich haben hier http://forum.fhem.de/index.php/topic,16945.msg127449.html#msg127449 (http://forum.fhem.de/index.php/topic,16945.msg127449.html#msg127449) eine version gepostet bei der rereadcfg wieder funktioniert.
gruss
andre