[vz-users] vzlogger: Wie alte Zählerstände unterdrücken
Matthias Behr
mbehr at mcbehr.de
Thu Dec 25 16:59:47 CET 2014
Hi,
kannst du nochmal einen Log von der Conf mit Baudratenumstellung erstellen und schicken?
Das Komische ist, dass das Timeout gar nicht zuschlagen dürfte:
[Dec 24 18:59:52][d0] DEBUG OBIS_CODE byte 0 hex= 30
[Dec 24 18:59:52][d0] DEBUG OBIS_CODE byte 4 hex= 34
[Dec 24 18:59:52][d0] DEBUG OBIS_CODE byte ( hex= 28
[Dec 24 18:59:52][d0] nothing received for more than 10 seconds
[Dec 24 18:59:52][d0] read timed out!, context: 7, bytes read: 50, last byte 0x0
[Dec 24 18:59:52][mtr0] Got 0 new readings from meter:
[Dec 24 18:59:52][chn0] ==> number of tuples: 0
Insgesamt sind noch keine 10s verlaufen und bei jedem DEBUG OBIS_CODE müsste die Zeitmessung zurückgesetzt werden, so dass es gar kein Timeout geben dürfte. Da läuft irgendwas schief.
Nachtrag: habe beim Schreiben der Mail das Problem grad gefunden. Das „bytes read: 50“ zeigt darauf, dass es einen simplen Speicherüberschreiber gibt. Sowohl obis_code als auch value sind nur für 33/17 Zeichen ausgelegt. Da „last byte 0x0“ scheinen keine vernünftigen Daten mehr vom Meter zu kommen.
Dafür bauche ich nachher mal ein paar Checks ein. Schicke dir dann mal einen Branch mit den Änderungen. Dann bräuchte ich neuen Log, um zu sehen, was danach für Daten vom Meter kommen.
Das Delay vor Baudratenumschaltung ist an der richtigen Stelle. Ich würde das tcflush direkt davor auch nutzen/aktivieren. Und es scheint auch nicht direkt das Problem zu sein, da der Meter ja erstmal korrekte Daten schickt.
Gruß
Matthias
> Am 25.12.2014 um 14:57 schrieb Elias <saile at gmx.de>:
>
> Hi Matthias,
>
> danke für deine Antwort!
>> Ist ackseq wirklich auskommentiert?
>
> Du hast recht, ich habe die letzte config angehängt, nicht die mit der Baudratenumstellung weil das ja nicht wirklich funktioniert hat.
>
>> Kannst du mir mal einen kompletten Log mit vollem Debug schicken?
>
> Hier sind nun log und config mit und ohne Baudratenumstellung:
> vzlogger.conf ohne Baudratenumstellung: http://pastebin.com/ibQtgpkM
> vzlogger log ohne Baudratenumsteuung: http://pastebin.com/j3zYUNqM
>
> vzlogger.conf mit Baudratenumstellung: http://pastebin.com/024bwyMT
> vzlogger log mit Baudratenumstellung: http://pastebin.com/2296FTHQ
>
> Die Zeile für den usleep in er Obis.cpp ist bei dem Test drin gewesen (4s), da sonst bei dem Zähler keine Baudratenumstellung stattfindet.
>
>> Vor dem Umschalten der Baudrate sollte daher tatsächlich ein Delay liegen.
> Meinst du dass das Delay schon an der richtigen Stelle ist?
>
> Schöne Weihnachtsgrüße,
> Elias
>
>
>
>> Am 24.12.2014 um 10:03 schrieb Matthias Behr <mbehr at mcbehr.de>:
>>
>> Danke.
>>
>> Das Problem mit der Baudraten Umschaltung könnte an den USB ->Seriell Wandlern liegen. Bei denen „überholt“ sich evtl. das Schreiben von Daten mit dem Setzen der Baudrate. Vor dem Umschalten der Baudrate sollte daher tatsächlich ein Delay liegen.
>>
>> Ist ackseq wirklich auskommentiert?
>>
>> Die 255-255:… Obis Codes liegen daran, dass es sich um einen alten EDIS Logger handeln. Hier werden leider Codes vom Logger wie „0.0.1“ in „255-255:0.0.1*255 übersetzt (und nicht 1-1:0.0.1*255 was vermutlich passender wäre) . Zu dem Problem diskutieren wir unter „questionable wildcard logic…“ eine neue/andere Lösung.
>>
>> Kannst du mir mal einen kompletten Log mit vollem Debug schicken?
>>
>>
>>> Am 24.12.2014 um 01:49 schrieb Elias <saile at gmx.de>:
>>>
>>> Hallo Matthias,
>>>
>>> nachfolgend die verwendete Config.
>>>
>>> Lieben Gruß,
>>> Elias
>>>
>>>
>>> /**
>>> * vzlogger configuration
>>> *
>>> * use proper encoded JSON with javascript comments
>>> *
>>> * take a look at the wiki for detailed information:
>>> * http://wiki.volkszaehler.org/software/controller/vzlogger#configuration
>>> */
>>>
>>> {
>>> "retry" : 30, /* how long to sleep between failed requests, in seconds */
>>> "daemon": false, /* run periodically */
>>> "verbosity" : 15, /* between 0 and 15 */
>>> "log" : "/var/log/vzlogger.log",/* path to logfile, optional */
>>>
>>> "meters" : [{
>>> "enabled" : true, /* disabled meters will be ignored */
>>> "protocol" : "d0", /* see 'vzlogger -h' for list of available protocols */
>>> "device" : "/dev/ttyUSB0",
>>> "parity" : "7E1",
>>> "baudrate" : 300,
>>> "pullseq" : "2f3f210d0a",
>>> // "ackseq": "063034310d0a", /* Antwortsequenz auf Zaehlerantwort, 063030300d0a = 300bd, 063034310d0a = 4800, 063035300d0a = 9600bd */
>>> // "baudrate_read": 4800, /* Baudratenumschaltung auf gewuenschte Baudrate, abhaengig von Zaehlerantwort */
>>> // "interval": 20,
>>> // "host" : "meinzaehler.dyndns.info:7331",
>>> "channels": [{
>>> "uuid" : "a4927850-8a26-11e4-a99e-2fea847d1e2c",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.8.0*FF" /* Wirkarbeit gesamt use 'vzlogger -v20' to see all available identifiers/OBIS ids */
>>> },{
>>> "uuid" : "b14a53e0-8a21-11e4-9cb0-8b49f372fe31",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.2.1*FF" /* Leistung Tarif 1, use 'vzlogger -v20' to see all available identifiers/OBIS ids */
>>> },{
>>> "uuid" : "234c1b00-8a22-11e4-8021-67656f826e63",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.2.2*FF" /* Leistung Tarif 2 */
>>> },{
>>> "uuid" : "719ff9a0-8a22-11e4-a686-0590ba635f43",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.6.1*FF" /* Max WirkLeistung Tarif 1 */
>>> },{
>>> "uuid" : "d0611220-8a29-11e4-a572-db29af695be8",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.6.2*FF" /* Max WirkLeistung Tarif 2 */
>>> },{
>>> "uuid" : "32227a10-8a23-11e4-bf53-83c7fba287de",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.8.1*FF" /* Wirkarbeit Zählerstand Tarif 1 */
>>> }
>>> ,{
>>> "uuid" : "3621eda0-8a29-11e4-944a-c94372a09df8",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.8.2*FF" /* Wirkarbeit Zählerstand Tarif 2 */
>>> }
>>> ,{
>>> "uuid" : "569efad0-8a29-11e4-8c84-e5d99cc10666",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.8.3*FF" /* Wirkarbeit Zählerstand Tarif 3 */
>>> }
>>> ,{
>>> "uuid" : "70fce340-8a29-11e4-a0e3-7dd853e054b3",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.8.4*FF" /* Wirkarbeit Zählerstand Tarif 4 */
>>> },{
>>> "uuid" : "669d0620-8a2c-11e4-9faf-6d6e7cdf434c",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.4.1*FF" /* aktueller Leistungsmittelwert tarif1 */
>>> },{
>>> "uuid" : "a2937b10-8a2c-11e4-b6bc-9751ce336215",
>>> "middleware" : "http://localhost/middleware.php",
>>> "identifier" : "255-255:1.4.2*FF" /* aktueller Leistungsmittelwert tarif2 */
>>> }
>>> ]},
>>> ]}
>>>
>>>
>>>
>>>> Am 23.12.2014 um 22:26 schrieb Matthias Behr <mbehr at mcbehr.de>:
>>>>
>>>> Hallo,
>>>>
>>>> kannst du mal deine Config schicken?
>>>>
>>>> Ich würde erstmal den Bug fixen wollen, dass das STX (0x02) fehlerhaft als Obis Code geparsed wird.
>>>> Dann mache ich mal paar Vorschläge für eine Veränderung vom Wildcard Handling.
>>>>
>>>> Gruß
>>>> Matthias
>>>>
>>>
>>>
>>>
>>
>> Gruß
>>
>> Matthias Behr
>>
>
>
>
Gruß
Matthias Behr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20141225/329ee097/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5256 bytes
Desc: not available
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20141225/329ee097/attachment-0001.bin>
More information about the volkszaehler-users
mailing list