Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. SML-Stromzähler (Volkszähler) Datenübermittlung mittels ESP8266

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    SML-Stromzähler (Volkszähler) Datenübermittlung mittels ESP8266

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      @Ingo1977:

      Über einen FTDI Adapter.. `
      Cool, klappt das???

      @Ingo1977:

      Hab ich nun gemacht. `
      Adapter installiert; Instanz erzeugt; konfiguriert?

      Gruß

      Rainer

      1 Reply Last reply Reply Quote 0
      • I
        Ingo1977 last edited by

        Scheint nichts anzukommen. Muss ich die USB Schnittstelle noch konfigurieren bzw. irgendwo eintragen?

        Oder soll ich direkt einen USB Stecker mit den 4 Kabeln des Volkszähler verbinden?

        VCC -> 3,3v

        GND -> GND

        RX -> ?

        TX -> ?

        1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators last edited by

          @Ingo1977:

          Oder soll ich direkt einen USB Stecker mit den 4 Kabeln des Volkszähler verbinden? `
          ich habe den "Volkszähler-USB-Lesekopf", daher kann ich dir diese Frage nicht beantworten.

          @Ingo1977:

          Muss ich die USB Schnittstelle noch konfigurieren bzw. irgendwo eintragen? `
          Ja natürlich.

          Unter "serielles Gerät".

          Die anderen zählerspezifischen Daten solltest du aus dem Volkszähler kennen.

          Gruß

          Rainer

          1 Reply Last reply Reply Quote 0
          • I
            Ingo1977 last edited by

            Wo genau unter serielles Gerät? Tut mir leid wenn ich blöd frage…

            Danke vorab.

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              In der Konfig der smartmeter instanz.
              144_konfig_smartmeter.jpg

              Ich denke du hast den bereits installiert

              @Homoran:

              Adapter installiert; Instanz erzeugt; konfiguriert? `

              Gruß

              rainer

              1 Reply Last reply Reply Quote 0
              • I
                Ingo1977 last edited by

                Unter Linux muss nach Anschluss via USB Interface nichts mehr konfiguriert werden?

                Smartmeter Adapter schaut so aus.
                5834_adapter.jpg

                1 Reply Last reply Reply Quote 0
                • Homoran
                  Homoran Global Moderator Administrators last edited by

                  Wenn es nicht an dem Konstrukt mit dem USB / FTDI liegt, dann frage ich mich ob 10 sekunden Intervall und 10 sekunden Wartezeit klappen.

                  ich habe den hier:

                  https://wiki.volkszaehler.org/hardware/controllers/ir-schreib-lesekopf-usb-ausgang
                  

                  Bitte mal instanz (nicht log) auf debug stellen; adapter neustarten und log posten

                  Gruß

                  rainer

                  1 Reply Last reply Reply Quote 0
                  • I
                    Ingo1977 last edited by

                    Log…

                    smartmeter.0
                    2018-07-23 18:25:43.071
                    debug
                    SERIALPORT CLOSE
                    smartmeter.0
                    2018-07-23 18:25:43.066
                    debug
                    Transport Reset!! Restart = true
                    smartmeter.0
                    2018-07-23 18:25:43.066
                    debug
                    Error: No or too long answer from Serial Device after last request.
                    smartmeter.0
                    2018-07-23 18:25:43.065
                    warn
                    No or too long answer from Serial Device after last request.
                    smartmeter.0
                    2018-07-23 18:25:43.065
                    debug
                    Error: No or too long answer from Serial Device after last request.
                    smartmeter.0
                    2018-07-23 18:25:43.065
                    debug
                    MESSAGE TIMEOUT TRIGGERED
                    smartmeter.0
                    2018-07-23 18:25:23.062
                    debug
                    SET MESSAGE TIMEOUT TIMER: 20000
                    smartmeter.0
                    2018-07-23 18:25:23.060
                    debug
                    SERIALPORT OPEN
                    smartmeter.0
                    2018-07-23 18:25:23.048
                    debug
                    CREATE SERIALPORT: 9600 8 1 none
                    smartmeter.0
                    2018-07-23 18:25:13.047
                    debug
                    SCHEDULE NEXT RUN IN 10s
                    

                    geändert: Code in Code-Tags; Homoran (Admin)

                    1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators last edited by

                      Jetzt bin ich mit dem Wissen am Ende wie man die USB-Ports überprüft.

                      Da kommt jedenfalls nix an.

                      Gruß

                      Rainer

                      1 Reply Last reply Reply Quote 0
                      • I
                        Ingo1977 last edited by

                        Ok, angenommen der USB Adapter funktioniert soweit, reicht dann der Smartmeter Adapter um valide Daten ioBroker zubekommen oder muss trotzdem das ganze Setup mit der VZLogger Installation etc. durchgeführt werden? Danke.

                        1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators last edited by

                          Wenn du mir jetzt noch sagst was valide Daten für dich bedeutet?

                          eine "echte" Validierung im Sinne von Iso xxx wirst du wohl nicht meinen.

                          Bei mir sehen die Objects so aus:
                          144_objects_smartmeter.jpg
                          Diese hängen natürlich von dem verbauten Zähler ab.

                          @Ingo1977:

                          muss trotzdem das ganze Setup mit der VZLogger Installation etc. durchgeführt werden? `
                          Nein! ich habe nur den Lesekopf installiert, den Adapter installiert, die Instanz erstellt und konfiguriert -> voila!

                          BTW welchen Kopf hast du denn?

                          Vielleicht kann man den an den GPIO serialport hängen

                          Gruß

                          Rainer

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

                            Hi,

                            also wenn Du mit Hardware "spielst" dann schau erst mal das Du ohne den Adapter mit "Linux-Seriell-Bordmitteln" Daten bekommst. Wenn das klappt weisst Du wie Du den Adapter konfigurieren musst.

                            Der Adapter liesst die Daten aus und (ich weiss ja nicht was du mit VZ noch so tust) stellt Sie in ioBroker als Daten zur Verfügung. Dann kannst DU dort mit ioBroker-Mitteln historisieren und so. Also ich nutze kein VZLogger, machst alles iobroker.

                            Falls VZ parallel läuft kann es gut sein das deswegen nichts geht. Serielln ist eher "exklusive nutzung" … also nicht zwei Programme gleichzeitig auf einen Port.

                            1 Reply Last reply Reply Quote 0
                            • I
                              Ingo1977 last edited by

                              Hallo Rainer,

                              ich habe den IR Lesekopf von Volkszähler, allerdings endet das Kabel in 4 Phasen (VCC, RX, TX, GND).

                              Wenn du mir sagst wie ich von dort aus direkt die Daten in ioBroker bekomme, versuche ich es.

                              Alle bisherigen Versuche sind kläglich gescheitert - leider!

                              Also wie geht das? "Vielleicht kann man den an den GPIO serialport hängen" ??

                              Danke

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

                                Ich = Software 😉 Sorry

                                Deswegen: du musst es irgendwie an dein Linux System bekommen das du damit mit kommandozeile und so Daten lesen kannst.

                                Wenn das geht kommt der Adapter.

                                Ein Schritt nach dem anderen.

                                Vllt frag die vz Leute die den lesekopf gebaut haben wir du es an den Raspi oder so bekommst.

                                Gesendet vom Handy …

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

                                  Irgendwie fürchte ich hier wird ein wenig aneinander vorbei geredet 😉
                                  @Ingo1977:

                                  Hallo Rainer,

                                  ich habe den IR Lesekopf von Volkszähler, allerdings endet das Kabel in 4 Phasen (VCC, RX, TX, GND).

                                  Wenn du mir sagst wie ich von dort aus direkt die Daten in ioBroker bekomme, versuche ich es.

                                  Alle bisherigen Versuche sind kläglich gescheitert - leider!

                                  Also wie geht das? "Vielleicht kann man den an den GPIO serialport hängen" ??

                                  Danke `

                                  Zuerstmal - welchen Lesekopf hast du denn? Den RS232 oder den TTL? Die haben beide Rx und Tx, erfordern aber schon mal unterschiedliche Ansteuerung. Obwohl es eigentlich m.E. auch egal ist welchen von beiden Du hast, ich unterstelle mal - bitte nicht übelnehmen, ist nicht böse gemeint - dass du aufgrund deiner Fragestellung hier mit dem Ansteuern und Auswerten dieser "Rohsignale" hoffnungslos überfordert sein wirst. Ebenso halte ich aufgrunddessen die lt. deinem ersten Posting beabsichtigte Übertragung per ESP8266 für sehr ambitioniert.

                                  Das soll nicht heißen dass das alles nicht geht, aber ich glaube das würden selbst die meisten Leute die sich mit sowas wirklich auskennen nicht so lösen weil es viel einfacher geht - nämlich mit dem Lesekopf mit USB-Anschluss. Den solltest du dir gönnen und dann noch einen Raspberry (oder anderen Einplatinencomputer) dazu an dem du den Lesekopf anschließt. Dann ist der Rest überschaubar und du bewegst dich auf einem Level wo dir hier auch von vielen geholfen werden kann.

                                  1 Reply Last reply Reply Quote 0
                                  • I
                                    Ingo1977 last edited by

                                    Ich habe die TTL Variante, allerdings endet das Kabel meines VZ mit 4 einzelnen Phasen.

                                    Kann ich die direkt an den Raspberry anschließen, evtl. an den seriellen Anschluss?

                                    Oder muss ich wirklich in den sauren Apfel beißen und mir einen anderen zulegen?

                                    Grüße Ingo

                                    PS: Kein Problem, du kennst dich besser aus als ich, bin noch Anfänger, von daher bin ich für jede Hilfe dankbar.

                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      gemu last edited by

                                      Habe eine solche Lösung in Tasmota bereits seit letzten Herbst eingebaut. Sie kann SML Binärdaten als auch ASCII OBIS Daten lesen.

                                      Theo Arends möchte sie aber nicht integrieren weil er meint dass es hauptsächlich für deutsche Zähler gemeint sei.

                                      Es ist aber eine unschlagbar preiswerte Lösung wenn man nicht seinen Iobroker in unmittelbarer Nähe des Zählerkastens hat. (in diesem Falle würde ich den Smartmeter Adapter mit USB Reader verwenden)

                                      Für alle die es nachbauen wollen gebe ich hier eine kurze Info.

                                      1. Zunächst muss man das Datenblatt seines Zählers herunterladen und nachschauen ob der Zähler von sich aus Daten über die Infrarotschnittstelle sendet. Hierzu gibt es auch auf https://wiki.volkszaehler.org/hardware jede Menge Infos. Zähler die erst auf Anforderung Daten senden sind bisher nicht unterstützt.

                                      2. Jetzt braucht man einen ESP8266 z.B. einen Sonoff Basic. Als "reader" benötigt man lediglich einen Fototransistor

                                      TEKT5400S (z.B. Ebay) und einen 1 KiloOhm Widerstand. Der Fototransistor wird über ein 2 adriges Kabel zwischen Masse und serial-in (RXD) verbunden, der Widerstand zwischen RXD und VCC (3.3 Volt). Den Fototransistor klebt man dann mit Gewebeband auf die Sendediode des Zählers.

                                      3. Als Firmware dient die Tasmota Version von meinem Github Repo. Dazu auf https://github.com/gemu2015/Sonoff-Tasmota gehen und den Branch auf SML-OBIS stellen. Dann das zip herunterladen und Entpacken. Dann in der Datei xsns_91_sml.ino einstellen ob der Zähler SML oder OBIS Daten liefert (wenn SML nichts editieren ansonsten #define USE_OBIS. Dann kompilieren und flashen. In der Einstellung der Geräteeigenschaften in Tasmota dann beim serial receive Pin auf "SML" stellen.

                                      Am besten in der Datei user_config.h seine Router Zugriffsdaten und MQTT Infos eingeben damit sich der ESP direkt verbindet.

                                      Im iobroker.sonoff Adapter werden dann 3 Objekte erzeugt => Total-In, Total-Out, Current-In/Out (im Falle eines Zweirichtungszählers wird also auch die (z.B. solare) Einspeisung angezeigt, Current-In/Out ist bei Einspeisung dann negativ)

                                      Im Anhang als Beispiel das Datenblattinfo von Hager und das Webinterface von meinem Zweirichtungszähler.

                                      5808_hager_ehz.png 5808_webinterface.png

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

                                        A) Die 4 „Phasen“ kannst Du bei TTL direkt am PI anschließen Fehlt nur das „wo“ und - die Software. Und mein Wissen.

                                        B) Alternativ Dein TTL-Signal nach Ethernet wandeln (Suchbegriffe „TTL Ethernet Converter“) und an einen virtuellen COM-Port auf dem ioBroker-Rechner senden. Dort mit dem vorhandenen smartmeter-Adapter (der ist für so was gedacht) den COM-Port als Input. Fertig.

                                        C) Oder ein TTL nach USB-Kabel für den PI (für Anschluss an den USB-Port, nicht GPIO) und dann wieder smartmeter-Adapter:

                                        Verwendung eines USB-Seriell-Adapters

                                        Will man Bluetooth behalten, hilft ein USB-seriell-Adapter. Dieses sieht meist aus wie ein Kabel mit einem USB-A-Stecker an einem Ende und einem 9-poligen DB9-Stecker auf der anderen Seite. In den seriellen Anschluss ist ein Hardware-Chipsatz eingebaut, der die notwendige USB-seriell-Umwandlung durchführt. Stecken Sie den Adaper am RasPi ein und wartet Sie einige Sekunden. Dann starten Sie in der Konsole das Kommando dmesg. Am Ende des Outputs sollte nun das Protokoll zum Adapter erscheinen, z. B.:

                                         ...
                                        [ 2329.049523] usb 1-1.4: new full-speed USB device number 7 using dwc_otg
                                        [ 2329.178464] usb 1-1.4: New USB device found, idVendor=0403, idProduct=6001
                                        [ 2329.178489] usb 1-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
                                        [ 2329.178502] usb 1-1.4: Product: USB Serial Converter
                                        [ 2329.178514] usb 1-1.4: Manufacturer: FTDI
                                        [ 2329.178526] usb 1-1.4: SerialNumber: FT9GC7Y9
                                        [ 2329.189325] ftdi_sio 1-1.4:1.0: FTDI USB Serial Device converter detected
                                        [ 2329.189470] usb 1-1.4: Detected FT232RL
                                        [ 2329.190563] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
                                        

                                        Bei diesem Beispiel handet es sich im Adapter um den bekannten Chip von Future Technology Devices International (FTDI). Wichtig für später sind die Hersteller- und Geräte-Id (idVendor=0403, idProduct=6001). Diese können Sie auch später noch mit dem Kommando lsusb ermitteln, z. B.:

                                           ...
                                        Bus 001 Device 008: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
                                        Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
                                        Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
                                        Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
                                           ...
                                        

                                        Wenn alles gut gegangen ist, ist Ihr Adapterkabel jetzt installiert und einsatzbereit, aber welches ist unter Linux der zugehörige serielle Port? Wie bei allen Geräten unter Linux, befindet sich die Gerätedatei unterhalb von /dev/. Da es sich um einen USB-basierten seriellen Port handelt, heißt er in der Regel /dev/ttyUSB0. Er kann aber, je nach Treiber, auch andere Namen haben, z. B. /dev/ttyACM0.

                                        Um den Adapter auf einen festen Namen "festzunageln", kann man eine udev-Regel verwenden. Dazu erstellen Sie an besten eine neue Datei im Verzeichnis /etc/udev/rules.de, die Sie beispielsweise seriell.rules nennen (wichtig ist nur die Endung ".rules"). Dort tragen Sie für den Adapter eine Zeile nach dem Muster

                                        SUBSYSTEM=="tty", ATTRS{idVendor}=="vvvv", ATTRS{idProduct}=="pppp", SYMLINK+="geraete_name" 
                                        

                                        ein. Für "vvvv" wird die Vendor-Id und für "pppp" die Product-Id eingesetzt. Als Gerätenamen wählen Sie irgend etwas Aussagekräftiges, z. B. "Seriell" oder auch "COM1". Sie können dann immer über das symbolische Link /dev/Seriell auf die Schnittstelle zugreifen. Hier noch einige Beispiele für gängige Produkte:

                                        SUBSYSTEM=="tty", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="FTDI"
                                        SUBSYSTEM=="tty", ATTRS{idVendor}=="19d2", ATTRS{idProduct}=="0031", SYMLINK+="ONDA"
                                        SUBSYSTEM=="tty", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="14ac", SYMLINK+="HUAWEI"
                                        SUBSYSTEM=="tty", ATTRS{idVendor}=="067b", ATTRS{idProduct}=="2303", SYMLINK+="PROLIFIC" 
                                        

                                        Nach einem Reboot steht das Symlink dann zur Verfügung. Um im laufenden Betrieb, etwa nach dem Erstellen der Rules-Datei, zu testen, ob es klappt, können Sie die Datei mittels

                                        sudo udevadm trigger
                                        

                                        einbinden.

                                        Wenn Sie wollen, dass alle User auf die Schnittstelle zugreifen können (nicht nur diejenigen, die zur Gruppe dialout gehören), hängen Sie noch ', MODE="0666"' an die Regel an.

                                        Wichtig ist hier wieder TTL-Pegel am Eingang des Wandlers. Wenn nicht, kannst du mit einem kleinen Zwischenkonverter auch das TTL-Signal in richtiges RS232 umwandeln. https://www.amazon.de/Max232-RS232-Konv … B011NOHC4S

                                        Freiluftverdrahtung 😄
                                        7446_e60ec599-eb50-49e7-b936-448323237a9f.jpeg

                                        1 Reply Last reply Reply Quote 0
                                        • I
                                          Ingo1977 last edited by

                                          Danke, eine super ausführliche Antwort, die mir weiterhelfen könnte.

                                          Wo bzw. wie am FTDI Adapter müssen meine 4 Pins vom VZ Kabel angeschlossen werden?

                                          Den FTDI Adapter habe ich schon auf 3,3v laufen…

                                          Mein FTDI Adapter hat aber nur 6 Anschlüsse.

                                          Und wie würde die Lösung ausschauen wenn ich die 4 Pins direkt am Raspberry (brauche kein Bluetooth) anschließen würde?

                                          Grüße.

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

                                            Was für einen FTDI-Adapter hast Du?

                                            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

                                            845
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            41
                                            24386
                                            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