[vz-users] TD-3511 mit vzlogger

Michael Wulz michael.wulz at gmail.com
Tue Jun 11 20:42:09 CEST 2013


Hallo,

Nein leider, in der C++ fehlt für d0 noch viel!

Mein Vzlogger bricht beim Parsen immer ab.

In der C Version gabs da mal einen Patch. Dieser ist aber nicht in der C++ drin.

Gruss
M

Von meinem iPhone gesendet

Am 11.06.2013 um 20:29 schrieb Anton <antonkaser at gmx.at>:

> Vielen Dank. Leider muss ich jetzt los. Das Austauschen der MeterD0.cpp
> werde ich kommende Woche versuchen.
> Hat diesen Zähler schon jemand erfolgreich am loggen?
>
>
> Am 2013-06-11 20:18, schrieb Karsten:
>> Laut dem Wiki Eintrag auf volkszaehler.org für den Td-3511 läuft es über das d0 Protokoll
>> (soweit ich das beurteilen kann).
>> Für das D0 Protokoll ist ein entsprechender Eintrag für die 300 Baud im Hauptzweig
>> Der C++ Version des Vzloggers vorhanden.
>> In der Version die Udo dir gepostet hat, fehlt für das D0 Protokoll der entsprechende
>> Eintrag in der Datei:
>> vzlogger / src / protocols / MeterD0.cpp
>>
>> Auch hier kannst du entweder die entsprechende Datei austauschen oder die Zeile
>> Für 300 Baud in den Case Block aufnehmen.
>>
>> Gruß Karsten
>>
>> -----Ursprüngliche Nachricht-----
>> Von: volkszaehler-users-bounces at lists.volkszaehler.org [mailto:volkszaehler-users-bounces at lists.volkszaehler.org] Im Auftrag von Anton
>> Gesendet: Dienstag, 11. Juni 2013 20:04
>> An: volkszaehler.org - users
>> Betreff: Re: [vz-users] TD-3511 mit vzlogger
>>
>> Das hilft schon mal weiter. Brauche ich für den Td-3511 nicht ohnehin d0 ?
>>
>> Am 2013-06-11 20:00, schrieb Karsten:
>>> Hallo Anton,
>>> ich weiß nicht, ob diese Information für dich Hilfreich ist, aber im
>>> aktuellen Hauptzweig der C++ Version des Vzloggers ist die Baudrate 300 im SML Protokoll nicht definiert:
>>> "vzlogger / src / protocols / MeterSML.cpp"
>>>
>>> ...
>>>    int baudrate = 9600; /* default to avoid compiler warning */
>>>        try {
>>>        baudrate = optlist.lookup_int(options, "baudrate");
>>>        /* find constant for termios structure */
>>>        switch (baudrate) {
>>>        case 1200: _baudrate = B1200; break;
>>>        case 1800: _baudrate = B1800; break;
>>>        case 2400: _baudrate = B2400; break;
>>>        case 4800: _baudrate = B4800; break;
>>>        case 9600: _baudrate = B9600; break;
>>>        case 19200: _baudrate = B19200; break;
>>>        case 38400: _baudrate = B38400; break;
>>>        case 57600: _baudrate = B57600; break;
>>>        case 115200: _baudrate = B115200; break;
>>>        case 230400: _baudrate = B230400; break;
>>>        default:
>>>        print(log_error, "Invalid baudrate: %i", name().c_str(), baudrate);
>>>    throw vz::VZException("Invalid baudrate");
>>>    }
>>> ...
>>> Du könntest die entsprechende Zeile aus dem d0 Protokoll übernehmen und schauen, ob es dann bei dir funktioniert.
>>> ...
>>>
>>> case 300: _baudrate = B300; break;
>>>
>>> case 1200: _baudrate = B1200; break;
>>> case 1800: _baudrate = B1800; break;
>>> ....
>>>
>>> Anschließend müsstest du den VZ nochmal neu bei Dir compilieren.
>>>
>>> Ich hoffe die Information bringt Dich weiter.
>>>
>>> Gruß
>>> Karsten
>>>
>>> p.S.: Falls du die Version (Branch) von Peter Evertz genommen hast die
>>> Udo oben empfohlen hast. Dort ist für das SML Protokoll auch noch keine Baudrate von 300 vorgesehen.
>>>
>>>
>>> -----Ursprüngliche Nachricht-----
>>> Von: volkszaehler-users-bounces at lists.volkszaehler.org
>>> [mailto:volkszaehler-users-bounces at lists.volkszaehler.org] Im Auftrag
>>> von Anton
>>> Gesendet: Dienstag, 11. Juni 2013 19:29
>>> An: volkszaehler.org - users
>>> Betreff: Re: [vz-users] TD-3511 mit vzlogger
>>>
>>> Am 2013-06-11 17:53, schrieb Udo1:
>>>> Am 10.06.2013 23:28, schrieb Anton:
>>>>> ich nahm das script aus der Volkzähler-Anleitung für den TD3511 und
>>>>> lasse auslesen:
>>>> Du solltest die vzlogger-Version von Peter Evertz nehmen:
>>>> http://volkszaehler.org/pipermail/volkszaehler-dev/2013-April/002671.
>>>> h
>>>> tml
>>>>
>>>> Die sendet auch die Anforderung.
>>>>
>>>> Gruß
>>>> Udo
>>> ich habe den vzlogger mit dem letzen Link aus dem Beitrag in /usr/local/bin/ geladen, die Rechte auf 755 gesetzt und die vzlogger.conf  mit parity und baudrate so geändert:
>>>
>>> {
>>> "retry" : 30,                   /* how long to sleep between failed
>>> requests, in seconds */
>>> "daemon": false,                /* run periodically */
>>> "foreground" : true,            /* dont run in background (prevents
>>> forking) */
>>>
>>> "verbosity" : 15,               /* between 0 and 15 */
>>> "log" : "/var/log/vzlogger.log",/* path to logfile, optional */
>>>
>>> "local" : {
>>>           "enabled" : false,      /* should we start the local HTTPd for
>>> serving live readings? */
>>>           "port" : 80,            /* the TCP port for the local HTTPd */
>>>           "index" : true,         /* should we provide a index listing of
>>> available channels? */
>>>           "timeout" : 30,         /* timeout for long polling comet
>>> requests, 0 disables comet, in seconds */
>>>           "buffer" : 600          /* how long to buffer readings for the
>>> local interface, in seconds */
>>> },
>>>
>>> "meters" : [{
>>>           "enabled" : true,       /* disabled meters will be ignored */
>>>           "protocol" : "sml",     /* use 'vzlogger -h' for list of
>>> available protocols */
>>>           "device" : "/dev/lesekopf0",
>>>           "parity" : "7E1",
>>>           "baudrate" : 300,
>>>
>>>           }
>>> ]}
>>>
>>>
>>> beim Aufruf von vzlogger kommt dann folgendes:
>>>
>>>
>>> [Jun 11 19:17:06][mtr0] Creating new meter with protocol sml.
>>> [Jun 11 19:17:06][sml]  Invalid baudrate: 300 [Jun 11 19:17:06][sml]
>>> Failed to parse the baudrate
>>> [Jun 11 19:17:06][]     parse configuration failed due to:
>>> [Jun 11 19:17:06]       Failed to parse configuration due to: Invalid
>>> baudrate
>>>
>>>
>>> Auch wenn ich als protokoll d0 eingebe wird die Baudrate nicht akzeptiert.
>>>
>>> oder soll ich mit "pullsequenz" das Ganze abarbeiten??
>>> - hat jemand die HEX-pullsequenz für den TD-3511 bei der Hand??
>>> (momentan habe ich wieder "händisch" das Auslesen der Daten
>>> initialisiert)
>


More information about the volkszaehler-users mailing list