[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