Landis + Gyr E450 über VZ Logger auslesen

  • Ich hab FrameDescription.pdf erweitert - steht nun alles drin.

    Soooo... habs jetz midn Arduino mal hingekriegt. Werds mal aufräumen und dann hier im Forum sharen.

    Was mir aba Kopfschmerzen bereitete war, dass mein HDLC Header keine 13 Byte sondern nur 12 Byte sind.

    Hast du dafür eine Erklärung?

    Das einzige was mir einfällt ist, dass ich weniger Bytes krieg. Ich hab genau 110 Bytes inklusive des erste 7E und letzten 7E.

  • Erklärung nein, ich kenne die Norm nicht genau, hab alles nur reverse-engineered.

    Laut Norm passt das sicher, ist ja alles flexibel, was genau übertragen wird.

    Ich nehme an, dass sie im Zuge des Rollouts da etwas umgestellt haben.

    Du hast die 3 Phasenwinkel nicht mit dabei, nehm ich an?
    Das wären 9 Bytes, die fehlen bei dir und 1 Byte fehlt im Header (poste den mal).


    kommst du eher aus den südlicheren Gefilden (JE)?

  • Hallo!

    die 3 Phasenwinkel sind nicht mit dabei:

    auch die 110 Byte:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,


    7EA06CCF03134C63E6E700DB084C475A677228C3FF55300000D9FD7C5C84CD0889754353ACBCACA7FB153E3F701F0CF016104EDDF15CC51210FD80D73F70B3F03E7BEA9A0A9A7A25A83D9737D84975EA509A5E2281AF0637187ED4AC543B303634E6C24798E38150157568ACEE7E


    (OW)

  • Yepp, so schaun meine Daten auch aus (ohne 3 Phasenwinkel). Im Header fehlt das FF aus der PDF.

    (OW)

  • Ist ja witzig (auch OW) - und trotzdem unterschiedliches Verhalten.


    ich habe mir das angeschaut: ich habe 2 Destination-Adressbytes im Header (rot markiert):

    7E A0 76 CE FF 03 13 3C 02 E6 E7 00 DB 08

    und ihr habt nur ein Adressbyte:

    7E A0 6C CF 03 13 4C 63 E6 E7 00 DB 08


    Lt. "Green Book" kann eine Adresse aus 1, 2 oder 4 Adressbytes bestehen.

    Ist beim Adressbyte das least significant bit = 0, dann folgt noch 1 byte (oder 3).


    CE FF ,oder bei euch: CF

    Das erste Byte (0xCE = 1100.1110) gibt an, da kommt noch was, erst beim

    nächsten ist dann Schluss (0xFF = 1111.1111)


    03 ist die Source-Adresse, 13 ist das "control field" dann kommen 2 CRC bytes,

    gerechnet über den Header A0 76 CE FF 03 13

    Ich werde meine Software anpassen und das Dokument (FrameDescription.pdf) erweitern.

    Am Ende möchte ich Empfang und Entschlüsselung im ESP8266 unterbringen (bin noch

    am Evaluieren, welche AES-GCM Implementierung ich nehmen werde)


    Momentan tüftle ich auch noch am Wasserzähler (Multical21), aber das wäre dann ein

    anderes Forum :-)

  • bin noch am Evaluieren, welche AES-GCM Implementierung ich nehmen werde

    https://github.com/rweather/ar…e/master/libraries/Crypto

    Wenn du VisualStudioCode mit PlatformIO verwendest kannst die Library direkt mit PlatformIO laden. Einfach nach Crypto suchen!


    Alles was du da tun must ist:

    Code
    1. GCM<AESSmall128> gcmDec;
    2. gcmDec.setKey(key, sizeof(key));
    3. gcmDec.setIV(iv, sizeof(iv));
    4. gcmDec.addAuthData(adata, sizeof(adata));
    5. gcmDec.decrypt(plain, cipherText, sizeof(cipherText));
    6. bool ok = gcmDec.checkTag(tag, sizeof(tag));