[vz-users] vzlogger liest keine SML-Daten
Sebastian Helms
vz-users at shelms.de
Tue Jan 27 00:47:26 CET 2015
Moin!
Nachdem heute die Leseköpfe angekommen sind, habe ich die gleich ausprobiert.
Nach Einrichtung über udev mit Symlinks unt Einstellung auf 9600 8N1 konnte ich
Rohdaten aus den beiden Iskra MT681 auslesen. Der eine Zähler liefert ca. alle 2
Sekunden, der andere alle 3-4. Soweit okay.
Eine ausgelesene Nachricht habe ich mal versucht zu interpretieren; mit Hilfe
der hier früher verlinkten PDF bin ich zum Ergebnis im Anhang gekommen.
Alle Inhalte habe ich nicht verstanden, aber die Nachricht scheint plausibel und
liefert (zumindest) erkennbare Zählerwerte.
Wenn ich jetzt (als root!) mit vzlogger die Daten lesen will, scheint vzlogger
die Geräte ansprechen zu können, er liest jedoch keine Nachrichten, obwohl ich
die Rohdaten problemlos auslesen kann (cat, od, xxd usw).
vzlogger.conf:
{
"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
"local": {
"enabled": false, // should we start the local HTTPd for serving live readings?
"port": 8080, // the TCP port for the local HTTPd
"index": true, // should we provide a index listing of available channels if no UUID was requested?
"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": [ // Hauszaehler
{
"enabled": true, // disabled meters will be ignored (default)
"protocol": "sml", // see 'vzlogger -h' for list of available protocols
"device": "/dev/usb-ir-lesekopf0",
"channels": [{
"uuid": "172f44a0-a2ea-11e4-b6fc-8717f097d281",
"middleware": "http://localhost/middleware.php",
"identifier": "power"
}, {
"uuid": "3195ca20-a2ea-11e4-93db-1d29033bb3d3",
"middleware": "http://localhost/middleware.php",
"identifier": "counter"
}]
},
// Heizungszaehler
{
"enabled": true, // disabled meters will be ignored (default)
"protocol": "sml", // see 'vzlogger -h' for list of available protocols
"device": "/dev/usb-ir-lesekopf1",
"channels": [{
"uuid": "3f584b20-a2ea-11e4-b24c-8b4f13f12417",
"middleware": "http://localhost/middleware.php",
"identifier": "power"
}, {
"uuid": "37dc5dc0-a2ea-11e4-b940-ef44af1297fb",
"middleware": "http://localhost/middleware.php",
"identifier": "counter"
}]
}
]
}
vzlogger.log:
[Jan 26 12:25:40][mtr0] Meter connection established
[Jan 26 12:25:40][mtr1] Meter connection established
[Jan 26 12:26:38] Closing connections to terminate
aus unerfindlichem Grund unergiebig - kann man den LogLevel zu hoch setzen?
Hat da jemand eine Idee, wieso vzlogger hier keine Daten erkennt? Muss ich die
Channels ggf. anders konfigurieren (identifier?)?
Gruß
Sebastian
-------------- next part --------------
1b 1b 1b 1b - SMLTP: SML-Header
01 01 01 01 - SMLTP: Beginn einer SML-Nachricht, v1
76 - SML-Message
05 - size: 5 (?)
00 bc 2a d1 - transactionID - Startwert
62 00 - groupNo, TL 62 = unsigned8, Wert = 0
62 00 - abortOnError, TL 62 = unsigned8, Wert = 0
72 63 01 01 - choice, TL 63 = unsigned16, Wert = 257 -> ?
76 - SML-Message (Format nicht passend? Interpretation?)
01 - size: 1 (??)
01 05 00 3e b8 ef 0b 09 01 49 53 4b 00 03 cf 21 00 01 01 63 1b a2 00
76 - SML-Message
05 - size: 5 (?)
00 bc 2a d2 - transactionID - Folgewert zu (ganz!) oben
62 00 - groupNo, TL 62 = unsigned8, Wert = 0
62 00 - abortOnError, TL 62 = unsigned8, Wert = 0
72 63 07 01 - choice: TL 63 = unsigned16, Wert = 1793 -> SML_GetList_Response
77 01 - SML_GetList_Res, 01 = clientId not set
0b 09 01 49 53 4b 00 03 cf 21 00 07 01 00 62 0a ff ff
72 - actSensorTime?
62 01 - TL 62 = unsigned8, Wert = 1 -> actSensorTimer
65 00 52 45 37 - TL 65 = unsigned32, Wert = 5391671 (sec seit epoch - unplausibel)
7a - valList?
77 07 - valListEntry
81 81 c7 82 03 ff - OBIS 129-129:199.130.3*255 = Herstelleridentifikation
01 - status = not set
01 - valTime = not set
01 - unit = not set
01 - scaler = not set
04 49 53 4b - value: TL 04 = octet_string[4], Wert = "ISK" -> Iskra
01 - value signature = not set
77 07 - valListEntry
01 00 00 00 09 ff - OBIS 1-0:0.0.9*255 = ? (ServerID?)
01 - status = not set
01 - valTime = not set
01 - unit = not set
01 - scaler = not set
0b 09 01 49 53 4b 00 03 cf 21 00 - value: TL 0b = octet_string[11], Wert = "..ISK....."
01 - value signature = not set
77 07 - valListEntry
01 00 01 08 00 ff - OBIS 1-0:1.8.0*255 = Wirk-Energie Total Bezug
65 00 00 01 82 - status: TL 65 = unsigned32, Wert = 386?
01 - valTime = not set
62 1e - unit: TL 62 = unsigned8, Wert = 30
52 ff - scaler: TL 52 = integer8, Wert = -1
59 00 00 00 00 00 30 f6 1a - value: TL 59 = integer64, Wert = 3208730 Wh
01 - value signature = not set
77 07 - valListEntry
01 00 01 08 01 ff - OBIS 1-0:1.8.1.255 = Wirk-Energie Tarif 1 Bezug
01 - status = not set
01 - valTime = not set
62 1e - unit: TL 62 = unsigned8, Wert = 30
52 ff - scaler: TL 52 = integer8, Wert = -1
59 00 00 00 00 00 30 f6 1a - value: TL 59 = integer64, Wert = 3208730 Wh
01 - value signature = not set
77 07 - valListEntry
01 00 01 08 02 ff - OBIS 1-0:1.8.2*255 = Wirk-Energie Tarif 2 Bezug
01 - status = not set
01 - valTime = not set
62 1e - unit: TL 62 = unsigned8, Wert = 30
52 ff - scaler: TL 52 = integer8, Wert = -1
59 00 00 00 00 00 00 00 00 - value: TL 59 = integer64, Wert = 0 Wh
01 - value signature = not set
77 07 - valListEntry
01 00 10 07 00 ff - OBIS 1-0:16.7.0*255 (?)
01 - status = not set
01 - valTime = not set
62 1b - unit: TL 62 = unsigned8, Wert = 29
52 00 - scaler: TL 52 = integer8, Wert = 0
55 00 00 00 a8 - value: TL 55 = integer32, Wert = 168
01 - value signature = not set
77 07 - valListEntry
01 00 24 07 00 ff - OBIS 1-0:36.7.0*255
01 - status = not set
01 - valTime = not set
62 1b - unit: TL 62 = unsigned8, Wert = 29
52 00 - scaler: TL 52 = integer8, Wert = 0
55 00 00 00 27 - value: TL 55 = integer32, Wert = 39
01 - value signature = not set
77 07 - valListEntry
01 00 38 07 00 ff - OBIS 1-0:56.7.0*255
01 - status = not set
01 - valTime = not set
62 1b - unit: TL 62 = unsigned8, Wert = 29
52 00 - scaler: TL 52 = integer8, Wert = 0
55 00 00 00 02 - value: TL 55 = integer32, Wert = 2
01 - value signature = not set
77 07 - valListEntry
01 00 4c 07 00 ff - OBIS 1-0:76.7.0*255
01 - status = not set
01 - valTime = not set
62 1b - unit: TL 62 = unsigned8, Wert = 29
52 00 - scaler: TL 52 = integer8, Wert = 0
55 00 00 00 7e - value: TL 55 = integer32, Wert = 126
01 - value signature = not set
77 07 - valListEntry
81 81 c7 82 05 ff - OBIS 129.129:199.130.05*255 = ??
01 - status = not set
01 - valTime = not set
01 - unit = not set
01 - scaler = not set
83 02 2c fd fc 65 03 aa 69 ca 22 9e e0 72 34 d8 50 d4 4a
c2 27 5c 18 98 c9 a3 22 32 25 43 d8 42 0c d5 08 97 db 59
f0 c4 e9 1d a7 7d 1d 2c a4 67 e5 d7 01 01 01 63 5e 69 00
76 - SML-Message
05 - size: 5
00 bc 2a d3 - transactionId - Folgewert zu oben
62 00 - groupId, TL 62 = unsigned8, Wert = 0
62 00 - abortOnError, TL 62 = unsigned8, Wert = 0
72 63 02 01 - SMLMessageBody, TL 63 = unsigned16, Wert = 33
71 01 63 1a f9 00 ??
1b 1b 1b 1b - SMLTP: SML-Header
1a 00 21 bc - SMLTP: Ende der Nachricht: 0 Padding-Bytes, 21bc = Prüfsumme
More information about the volkszaehler-users
mailing list