Digimeto GS303 - D0 Schnittstelle auslesen - timeout [gelöst]

  • Ich habe zwei Digimeto GS303 (Bezugs- und Erzeugungszähler).


    Bedienungsanleitung:


    Heute habe ich mir erst einmal für einen die Freischalt-PIN per Telefon besorgt (den zweiten konnten sie in ihrer Datenbank nicht finden und sind auf der Suche..).


    Dazu habe ich folgende Hardware:

    • Raspberry Pi Zero WH
    • Ethernet / USB HUB HAT für Raspberry Pi Zero, 1x RJ45, 3x USB
    • SanDisk Extreme micro SDHC A1 UHS-I U3 Speicherkarte + Adapter 32GB
    • 2x IR-USB-Lesekopf mit cp2102 ftdi von Hichi hier aus dem Forum

    Konfiguration:

    Digimeto ist auf D0 eingestellt, SML geht aber auch (noch nicht getestet).


    Bei dem generellen Guide kam ich bei minicom bzw. stty nicht weiter, daher habe ich dann die Schritte

    von vzlogger mit unbekanntem eHz abgearbeitet.


    Leider bekomme ich keine Ausgabe, weder für pull, noch für push mode, sowohl für

    /dev/lesekopf0 als auch /dev/lesekopf0.


    Bei push mode erscheint gar keine <<, bei pull mode lediglich:

    Code
    ##### 98.495674000s (     0 ms) opened
    ##### 98.512027000s (    17 ms) read
    ##### 98.512113000s (     0 ms) TCIOFLUSH and cfsetiospeed
    <<<<< 98.512320000s (     0 ms)
    2f 3f 21 0d 0a                                    /?!
    
    ##### 13.647120000s ( 15135 ms) timeout!
    ##### 13.650475000s (     3 ms) closed

    .. wobei die Zeile 2f 3f 21 0d 0a m.E. die Pull Anfrage vom vzlogger ist, keine Antwort vom Digimeto.


    Laut Handbuch sollte die Schnittstelle den Standard-Konfigs entsprechen:

    bzw. im GS303 Handbuch steht noch etwas, dass die D0-Schnittstellen-Abfrage die PIN benötigt:

    .. aber wie übermittle ich die PIN in der vzlogger.conf?


    Gibt es noch weitere Tipps, wie ich die Suche fortführen kann?

    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!

  • Helmut1011

    Hat den Titel des Themas von „Digimeto D0 Schnittstelle auslesen - timeout“ zu „Digimeto GS303 - D0 Schnittstelle auslesen - timeout“ geändert.
  • Ok, nun auch mit SML Schnittstelle getestet.


    • Einstellung am Digimeto von D0 auf SML gewechselt
    • vzlogger.conf:
    • sudo vzlogger -c /home/pi/vzlogger.conf
    • cat /home/pi/vzlogger.txt:
    Code
    ##### 92.177367000s (     0 ms) opened
    ##### 92.193998000s (    16 ms) read
    ##### 57.724042000s ( 65531 ms) timeout!
    ##### 57.727581000s (     3 ms) closed
    
    ##### 22.852024000s (     0 ms) opened
    ##### 22.867693000s (    15 ms) read
    ##### 83.325660000s ( 60458 ms) timeout!
    ##### 83.329174000s (     4 ms) closed


    Merkwürdig, weil ja SML ziemlich eindeutige Sprache ist und explizit im Handbuch erwähnt wird, dass Daten unverschlüsselt übertragen werden.


    Nun kann ich nur noch vermuten, dass es am Lesekopf liegt bzw. an den USB-Anschlüssen. Beide sind ordentlich aufgelistet und erkannt:

    Code
    ls -la /dev/lese*
    > lrwxrwxrwx 1 root root 7 Mar 17 18:38 /dev/lesekopf0 -> ttyUSB0
    > lrwxrwxrwx 1 root root 7 Mar 17 18:38 /dev/lesekopf1 -> ttyUSB1
    ls -l /dev/serial/{by-path,by-id}/*
    > lrwxrwxrwx 1 root root 13 Mar 17 18:16 /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0074-if00-port0 -> ../../ttyUSB0
    > lrwxrwxrwx 1 root root 13 Mar 17 18:16 /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0075-if00-port0 -> ../../ttyUSB1
    > lrwxrwxrwx 1 root root 13 Mar 17 18:16 /dev/serial/by-path/platform-20980000.usb-usb-0:1.1:1.0-port0 -> ../../ttyUSB0
    > lrwxrwxrwx 1 root root 13 Mar 17 18:16 /dev/serial/by-path/platform-20980000.usb-usb-0:1.2:1.0-port0 -> ../../ttyUSB1


    Jetzt hat die Infrarot-Ausgabe vom Digimeto drei Leuchten, der IR-Lesekopf aber nur zwei. Spielt es eine Rolle, welche der drei ich auslese? Ich habe ihn einfach horizontal angebracht (die obene Leuchte ist daher nicht genutzt).


    Bei..

    Code
    sudo cat /dev/lesekopf1
    sudo cat /dev/lesekopf0

    .. kommt jeweils auch gar keine Ausgabe.


    Ich habe mit einer Digitalkamera getestet, und von den drei Leuchten blinkt die untere Rechte:

    Code
        *
    
    *      [*]

    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!

  • Alles klar, hat sich erledigt: Der IR-Lesekopf zeigte auf die zwei falschen Leuchten. Nun gibt er korrekt aus:


    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!

  • Helmut1011

    Hat den Titel des Themas von „Digimeto GS303 - D0 Schnittstelle auslesen - timeout“ zu „Digimeto GS303 - D0 Schnittstelle auslesen - timeout [gelöst]“ geändert.
  • Ein weiterer Punkt, den ich im Anschluss noch herausgefunden habe:


    Ich musste vzlogger von 0.70 auf 0.80 aktualisieren, damit Werte in den Log-Dateien erscheinen.

    Siehe hier für eine Beschreibung des Updates und hier für eine Beschreibung des Problems.


    libsml/vzlogger update ging problemlos, aber composer update lief nicht durch (ohnehin nur middleware/LAMP stack).

    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!

  • Also erst, Vorbereitung nach Anleitung:


    Code
    cd /home/pi/
    # ggf.Datensicherung
    cp -r volkszaehler.org vz.org.bak
    # Update
    cd volkszaehler.org
    git stash
    git pull
    git stash apply

    Dann bei:

    Code
    # Abhängigkeiten aktualisieren
    sudo composer update

    Dauerte es eine Stunde, bis der Prozess abbrach (Freeze oder Frozen/Abort.. genaue Meldung habe ich nicht mehr im Kopf).


    Werde das bei Gelegenheit nochmal neu testen. Da ich aber ohnehin per MQTT an Solaranzeige / influxdb pushen möchte, ist die Middleware doch gar nicht so wichtig, oder?

    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!

  • (Freeze oder Frozen/Abort.. genaue Meldung habe ich nicht mehr im Kopf)

    Das wäre der Teil gewesen der mich interessiert.


    Da ich aber ohnehin per MQTT an Solaranzeige / influxdb pushen möchte, ist die Middleware doch gar nicht so wichtig, oder?

    Ne, ist für deine Anwendung dann irrelevant.



    mfg JAU

    No Shift - No Service

  • Danke für die Antwort. Die Anlage ist an einer remote location, deswegen würde ich jetzt nur ungern über ssh/ipsec das update nochmal durchführen, falls etwas schiefgeht. Ich reicht das aber nach. Vielleicht war es nur ein einmalies Problem. In der Fehlermeldung kam "Process" und "kill" vor - als ob das System nach einer Stunde tiefschlaf entschieden hat, dass der Prozess genug Zeit hatte.

    Bitte melden, falls es jemand schafft per SSH auf den Huawei Smart Logger zu kommen!