Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter "smartmeter"

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter "smartmeter"

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Matthias I last edited by

      Vielen Dank für die Hilfe!

      • RasPi läuft als Slave

      • Smartmeter-Adapter ist auf Slave installiert (2 Instanzen für jeden Zähler eine)

      • Pins für Zähler sind angefragt (da warte ich auf Antwort des Netzbetreibers)

      • 2x IR-USB-Leseköpfe (Weidmann Elektronik) wurden installiert und via USB an RasPi angeschlossen

      Was ist jetzt der nächste Schritt um die IR-USB-Leseköpfe zu verwenden?

      Welche Eingaben muss ich bei meinen beiden Instanzen des Smartmeter-Adapters für meine Zähler EMH eHZ-IW8E2A5L0EQ2P einstellen, damit die Daten richtig ausgelesen werden?

      (In der Anleitung zum Zähler habe ich nur herausfinden können, wie ich den Pin eingebe, aber keine Angaben über Protokolle, Datenübertragung, Baudrate, etc.)

      1 Reply Last reply Reply Quote 0
      • wendy2702
        wendy2702 last edited by

        Hi,

        du solltest bei zwei leseköpfen mal das lesen: viewtopic.php?f=20&t=13546&hilit=ttyusb

        Und mal auf der Volkszähler Webseite schauen ob da die Daten für deinen Zähler zu finden sind.

        Gruß

        1 Reply Last reply Reply Quote 0
        • M
          Matthias I last edited by

          Hi,

          danke für den Link, habe alles durchgelesen und folgendes gemacht:

          • Mit /sbin/udevadm info –query=all --name=/dev/ttyUSB0 bzw. /sbin/udevadm info --query=all --name=/dev/ttyUSB1 die ID_SERIAL_SHORT der beiden Geräte ausgelesen.

          • Mit dem Editor eine Datei "70-Lesekopf.rules" auf meinem Windowsrechner mit folgendem Inhalt angelegt:

          SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AH06GH5Y", SYMLINK+="lesestrom"
          SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AH06GH5Z", SYMLINK+="lesevoltaik"
          
          

          und darin NUR jeweils bei "ATTRS{Serial}="Meine ID_SERIAL_SHORT" und bei SYMLINK+="Mein Zählername" geändert.

          Muss ATTRS{product}=="FT232R USB UART" beibehalten werden?

          In der Ausgabe steht ID_MODEL=FT230X_Basic_UART. Oder müsste daher ATTRS{product}=="FT232R USB UART" zu ATTRS{product}=="FT230X_Basic_UART" abgeändert werden?

          Im Verzeichnis /etc/udev/rules.d ist eine Datei "99-com.rules" enthalten. Habe ich das richtig verstanden, dass diese <u>nicht ersetzt</u> sondern eine neue Datei mit dem Dateinamen "70-lesekopf.rules" angelegt werden muss?

          Entschuldigt meine Unwissenheit 😉

          Den Zähler habe ich im Wiki von Volkszähler gefunden und werde jetzt versuchen die Adaptereinstellung vorzunehmen.

          Gruß

          Matthias

          1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 last edited by

            @Matthias I:

            Muss ATTRS{product}=="FT232R USB UART" beibehalten werden?

            In der Ausgabe steht ID_MODEL=FT230X_Basic_UART. Oder müsste daher ATTRS{product}=="FT232R USB UART" zu ATTRS{product}=="FT230X_Basic_UART" abgeändert werden? `

            Denke das musst du passend ändern.

            @Matthias I:

            Im Verzeichnis /etc/udev/rules.d ist eine Datei "99-com.rules" enthalten. Habe ich das richtig verstanden, dass diese <u>nicht ersetzt</u> sondern eine neue Datei mit dem Dateinamen "70-lesekopf.rules" angelegt werden muss? `

            Zusätzlich.

            1 Reply Last reply Reply Quote 0
            • M
              Matthias I last edited by

              Hallo Wendy,

              vielen Dank. Wie kann ich die Datei über Shell erstellen und wie fülle ich sie mit dem Inhalt?

              Gruß

              Matthias

              1 Reply Last reply Reply Quote 0
              • wendy2702
                wendy2702 last edited by

                Eine leere Datei erstellen geht mit

                touch xxxx
                ````im entsprechenden directory wobei xxxx der Name ist.
                
                Editieren dann mit VI oder Nano Editor.
                
                So sieht mein File z.B. aus wobei der Modbus Adapter das eintragen des Device Namens leider noch nicht unterstützt.
                
                

                SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="A5xxxxG", SYMLINK+="lesemodbus3"
                SUBSYSTEM=="tty", ATTRS{product}=="CP2104 USB to UART Bridge Controller", ATTRS{serial}=="0xxxxF", SYMLINK+="lesekopf"

                
                Kannst auch einen Linux fähigen Texteditor für WIN nehmen z.B. Notepad++, das auf dem PC machen und dann auf den PI kopieren.
                1 Reply Last reply Reply Quote 0
                • M
                  Matthias I last edited by

                  Habe die Datei mit den beiden Zeilen angelegt und mit "sudo reboot" neu gestartet.

                  Leider bekomme ich bei "ls -l /dev/Z*" die Ausgabe: "Zugriff nicht möglich. Datei oder Verzeichnis nicht gefunden"

                  Gruß

                  Matthias

                  1 Reply Last reply Reply Quote 0
                  • a200
                    a200 last edited by

                    sorry für den Doppelpost, aber ich glaube, dass ich hier richtig(er) bin

                    ich nutze den Smartmeter-Adapter. Ein typischer Datenpunkt ist: smartmeter.0.1-0:1_8_1_255.value

                    wenn ich jetzt im HTML den Wert mit {smartmeter.0.1-0:1_8_1_255.value} ausgeben will, wird immer ein 0 angezeigt. Meine Vermutung ist, dass es an den Doppelpunkten in DP-Namen liegt.

                    Gibt es eine Möglichkeit dieses Problem elegant zu lösen?

                    Danke,

                    a200.

                    1 Reply Last reply Reply Quote 0
                    • wendy2702
                      wendy2702 last edited by

                      @Matthias I:

                      Habe die Datei mit den beiden Zeilen angelegt und mit "sudo reboot" neu gestartet.

                      Leider bekomme ich bei "ls -l /dev/Z*" die Ausgabe: "Zugriff nicht möglich. Datei oder Verzeichnis nicht gefunden"

                      Gruß

                      Matthias `

                      Was willst du denn damit überprüfen bzw. was erwartest du?

                      Ein Device mit dem Kürzel "Z" gibt es doch sicher nicht bei dir, oder?

                      1 Reply Last reply Reply Quote 0
                      • M
                        Matthias I last edited by

                        Ich habe mich an der von dir verlinkten Anleitung entlanggehangelt:

                        ` > Re: [Frage] smartmeter / mbus - mehrere Gerätenamen ttyUSB klar benennen

                        Diesen Beitrag melden

                        Zitat

                        Beitrag

                        von bahnuhr » 16.04.2018, 20:54

                        Rückinfo von mir:

                        Habe folgendes in eine neue Datei "70-lesekopf.rules" geschrieben:

                        SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AH06GH5Y", SYMLINK+="lesestrom"

                        SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="AH06GH5Z", SYMLINK+="lesevoltaik"

                        SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="A907T3PS", SYMLINK+="lesewasser"

                        Danach sudo reboot.

                        mit ls -l /dev/lese*

                        kann man prüfen ob es geklappt hat.

                        Es werden dann alle 3 aufgelistet mit ihrem USB Port

                        Dann in smartmeter0 eingetragen: anstatt /dev/ttyUSB0 nun /dev/lesevoltaik

                        und in smartmeter1 eingetragen: anstatt /dev/ttyUSB0 nun /dev/lesestrom

                        Nur im Adapter mbus weiß ich noch nicht wie ich …lesewasser dort hin bekomme.

                        @@@Ingo

                        Wie bekomme ich nun /dev/lesewasser aufgelistet in der Auswahl um eben genau dies zuzuweisen.

                        mfg

                        Dieter `

                        Ziel ist es doch, da ich ja mehr als eine Instanz verwende, eine eindeutig Zuordnung herzustellen, damit immer die Richtige Instanz auf den richtigen USB-Port zugreift.

                        Meine Zähler heißen (vom Anbieter im Zählerschrankso beschriftet und von mir daher übernommen) Z1 und Z1a.

                        Dieter schreibt (s.o.) nach dem Schreiben der Datei "70-lesekopf.rules" soll ein reboot ausgeführt werden und anschließend mit ls -l /dev/Z* geprüft werden, ob alles geklappt hat. Da sollten eigentlich die beiden Zählernamen Z1 und Z1a aufgelistet werden. Ich bekomme aber die Ausgabe: "Zugriff nicht möglich. Datei oder Verzeichnis nicht gefunden"

                        Somit denke ich kann dann auch der Smartmeter-Adapter nicht funktionieren, denn dort sollte ich ja dann anstatt /dev/ttyUSB0 nun /dev/Z1 bzw. anstatt /dev/ttyUSB1 nun /dev/Z1a in den Instanzen angeben.

                        Ich hoffe ich habe mich verständlich ausgedrückt und würde mich freuen, wenn du mir bei der Lösung dieses Problems helfen könntest 🙂

                        Gruß

                        Matthias

                        1 Reply Last reply Reply Quote 0
                        • wendy2702
                          wendy2702 last edited by

                          @a200:

                          sorry für den Doppelpost, aber ich glaube, dass ich hier richtig(er) bin

                          ich nutze den Smartmeter-Adapter. Ein typischer Datenpunkt ist: smartmeter.0.1-0:1_8_1_255.value

                          wenn ich jetzt im HTML den Wert mit {smartmeter.0.1-0:1_8_1_255.value} ausgeben will, wird immer ein 0 angezeigt. Meine Vermutung ist, dass es an den Doppelpunkten in DP-Namen liegt.

                          Gibt es eine Möglichkeit dieses Problem elegant zu lösen?

                          Danke,

                          a200. `

                          Sicher das dein Zähler den Wert liefert?

                          Meiner macht es z.B. nicht:

                          999_1.8.1.jpg

                          1 Reply Last reply Reply Quote 0
                          • wendy2702
                            wendy2702 last edited by

                            @Matthias:

                            was kommt bei````
                            ls -la /etc/udev/rules.d/
                            cat /etc/udev/rules.d/

                            1 Reply Last reply Reply Quote 0
                            • M
                              Matthias I last edited by

                              Hallo Wendy,

                              > ls -la /etc/udev/rules.d/
                              liefert:

                              root@raspberrypi:/home/pi# ls -la /etc/udev/rules.d/
                              insgesamt 16
                              drwxr-xr-x 2 root root 4096 Jan 11 12:42 .
                              drwxr-xr-x 4 root root 4096 Nov 13 13:58 ..
                              -rw-r--r-- 1 root root  189 Jan 11 12:42 70-lesekopf.rules
                              -rw-r--r-- 1 root root 1028 Nov 27  2017 99-com.rules
                              root@raspberrypi:/home/pi# 
                              
                              

                              und

                              cat /etc/udev/rules.d/70-lesekopf.rules

                              liefert:

                              root@raspberrypi:/home/pi# cat /etc/udev/rules.d/70-lesekopf.rules
                              SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="DN03UITR", SYMLINK+="Z1"
                              SUBSYSTEM=="tty", ATTRS{product}=="FT232R USB UART", ATTRS{serial}=="DN03UR3O", SYMLINK+="Z1a"
                              
                              

                              Gruß

                              Matthias

                              1 Reply Last reply Reply Quote 0
                              • bahnuhr
                                bahnuhr Forum Testing Most Active last edited by

                                Hallo,

                                melde mich jetzt auch mal.

                                Was kommt bei:

                                ls -l /dev/Z*

                                Bitte mal posten.

                                mfg

                                Dieter

                                1 Reply Last reply Reply Quote 0
                                • wendy2702
                                  wendy2702 last edited by

                                  Hast du nicht geschrieben das deine Leseköpfe so erkannt werden:

                                  > In der Ausgabe steht ID_MODEL=FT230X_Basic_UART. Oder müsste daher ATTRS{product}=="FT232R USB UART" zu ATTRS{product}=="FT230X_Basic_UART" abgeändert werden?

                                  Dann den Eintrag im File mal bitte so ändern:

                                  SUBSYSTEM=="tty", ATTRS{product}=="FT230X_Basic_UART", ATTRS{serial}=="DN03UITR", SYMLINK+="Z1"
                                  SUBSYSTEM=="tty", ATTRS{product}=="FT230X_Basic_UART", ATTRS{serial}=="DN03UR3O", SYMLINK+="Z1a"
                                  

                                  und das file umbennen:

                                  mv 70-lesekopf.rules 99-lesekopf.rules
                                  

                                  dann mal Reboot und testen.

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    Matthias I last edited by

                                    @Dieter:

                                    ich erhalte folgende Ausgabe:

                                    root@raspberrypi:/home/pi# ls -l /dev/Z*
                                    ls: Zugriff auf '/dev/Z*' nicht möglich: Datei oder Verzeichnis nich
                                    
                                    

                                    @Wendy:

                                    Ja, das habe ich geschrieben. Habe es in meiner Verzweiflung aber einfach auch mal mit FT232R USB UART probiert.

                                    Werde es wieder ändern und die Datei umbenennen und das Ergebnis dann posten.

                                    Gruß

                                    Matthias

                                    1 Reply Last reply Reply Quote 0
                                    • bahnuhr
                                      bahnuhr Forum Testing Most Active last edited by

                                      wendy hat recht.

                                      Du musst das dev so ändern wie es eben bei dir heißt.

                                      Und der von mir genannte Befehl kann ja auch nichts anzeigen, wenn der Name nicht stimmt.

                                      mfg

                                      1 Reply Last reply Reply Quote 0
                                      • bahnuhr
                                        bahnuhr Forum Testing Most Active last edited by

                                        Stimmt denn deine serial?

                                        Hast du diese geprüft.

                                        mfg

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Matthias I last edited by

                                          Hier das Ergebnis nach dem Reboot:

                                          root@raspberrypi:/home/pi# ls -l /dev/Z*
                                          ls: Zugriff auf '/dev/Z*' nicht möglich: Datei oder Verzeichnis nicht gefunden
                                          root@raspberrypi:/home/pi# ls -la /etc/udev/rules.d/
                                          insgesamt 16
                                          drwxr-xr-x 2 root root 4096 Jan 11 19:35 .
                                          drwxr-xr-x 4 root root 4096 Nov 13 13:58 ..
                                          -rw-r--r-- 1 root root 1028 Nov 27  2017 99-com.rules
                                          -rw-r--r-- 1 root root  192 Jan 11 19:34 99-lesekopf.rules
                                          root@raspberrypi:/home/pi# cd /etc/udev/rules.d
                                          root@raspberrypi:/etc/udev/rules.d# dir
                                          99-com.rules  99-lesekopf.rules
                                          

                                          Hier auch mal die gesmate Ausgabe nach /sbin/udevadm info –query=all --name=/dev/ttyUSB0

                                          root@raspberrypi:/etc/udev/rules.d# /sbin/udevadm info --query=all --name=/dev/ttyUSB0
                                          P: /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
                                          N: ttyUSB0
                                          S: serial/by-id/usb-FTDI_FT230X_Basic_UART_DN03UR3O-if00-port0
                                          S: serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0
                                          E: DEVLINKS=/dev/serial/by-path/platform-3f980000.usb-usb-0:1.2:1.0-port0 /dev/serial/by-id/usb-FTDI_FT230X_Basic_UART_DN03UR3O-if00-port0
                                          E: DEVNAME=/dev/ttyUSB0
                                          E: DEVPATH=/devices/platform/soc/3f980000.usb/usb1/1-1/1-1.2/1-1.2:1.0/ttyUSB0/tty/ttyUSB0
                                          E: ID_BUS=usb
                                          E: ID_MODEL=FT230X_Basic_UART
                                          E: ID_MODEL_ENC=FT230X\x20Basic\x20UART
                                          E: ID_MODEL_FROM_DATABASE=Bridge(I2C/SPI/UART/FIFO)
                                          E: ID_MODEL_ID=6015
                                          E: ID_PATH=platform-3f980000.usb-usb-0:1.2:1.0
                                          E: ID_PATH_TAG=platform-3f980000_usb-usb-0_1_2_1_0
                                          E: ID_REVISION=1000
                                          E: ID_SERIAL=FTDI_FT230X_Basic_UART_DN03UR3O
                                          E: ID_SERIAL_SHORT=DN03UR3O
                                          E: ID_TYPE=generic
                                          E: ID_USB_DRIVER=ftdi_sio
                                          E: ID_USB_INTERFACES=:ffffff:
                                          E: ID_USB_INTERFACE_NUM=00
                                          E: ID_VENDOR=FTDI
                                          E: ID_VENDOR_ENC=FTDI
                                          E: ID_VENDOR_FROM_DATABASE=Future Technology Devices International, Ltd
                                          E: ID_VENDOR_ID=0403
                                          E: MAJOR=188
                                          E: MINOR=0
                                          E: SUBSYSTEM=tty
                                          E: TAGS=:systemd:
                                          E: USEC_INITIALIZED=2992902
                                          
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • bahnuhr
                                            bahnuhr Forum Testing Most Active last edited by

                                            Also,

                                            FT230X_Basic_UART

                                            müsste richtig sein.

                                            Und dein Befehl müsste auch richtig sein:

                                            SUBSYSTEM=="tty", ATTRS{product}=="FT230X_Basic_UART", ATTRS{serial}=="DN03UR3O", SYMLINK+="Z1a"

                                            Hast du dies lt. Wiki auch gemacht?

                                            den udev-Dienst dann mit
                                            sudo udevadm trigger
                                            die neue Regel anwenden lassen.
                                            

                                            mfg

                                            Dieter

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            762
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            279
                                            3620
                                            1972225
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo