Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Microcontroller
  5. IR-Lesekopf (Stromzähler, SML-Format) einbinden

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.7k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.1k

IR-Lesekopf (Stromzähler, SML-Format) einbinden

Geplant Angeheftet Gesperrt Verschoben Microcontroller
26 Beiträge 7 Kommentatoren 2.2k Aufrufe 5 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • T topsurfer

    @codierknecht

    So eine total unabhängige ESP-Lösung hätte was ...

    hab gerade dein Thread hier gesehen und versucht ...

    Hab ESP mit einem fertig Image von hier ( https://ottelo.jimdofree.com/stromzähler-auslesen-tasmota (v14.2.0)) geflasht,
    Typ "Generic (0)" ausgewählt, Script eingefügt und enabled.
    RX auf GPIO, TX auf GPIO1 angeschlossen, Baud 9600, ...

    Aber ein sensor53 d1 bringt nur:

    19:58:29.487 CMD: sensor53 d1
    19:58:29.493 MQT: energy/tasmota_AA0722/RESULT = {"Time":"2025-02-04T19:58:29","SML":{"CMD":"dump: 1"}}
    

    Da müßten ja dann Daten durchlaufen, oder?

    Hättest du ein anderes Image welches ich testen könnte?

    Der Lesekopf funktioniert, an einem Raspi angeschlossen und Monitoring der Console zeigt durchlaufende Daten ...

    Die Weboberfläche zeigt:
    2025-02-04_200158.png

    MartinPM Online
    MartinPM Online
    MartinP
    schrieb am zuletzt editiert von
    #6

    @topsurfer Mein serieller Lesekopf hat mich durch die Beschriftung der Lötpads für die serielle Verbindung irritiert. Auf dem mit RX beschrifteten Pad sendet der Lesekopf. Auf dem TX Pad wird empfangen.

    Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
    Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
    Linux pve 6.8.12-16-pve
    6 GByte RAM für den Container
    Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
    Remote-Access über Wireguard der Fritzbox

    1 Antwort Letzte Antwort
    0
    • T topsurfer

      Hallo,
      ich habe an unserem Stromzähler einen IR-Lesekopf montiert,
      aktuell kann ich diesen über einen Raspi 3 "auslesen", ich erhalte über das Monitoren der Schnittstelle (minicom) die Daten im "Rohformat":

      24 2c 20 2c 20 ae ac 50 d0 57 d0 48 28 88 4a 75 05 34 74 1b 9d 1d 05 01 89 29 fd ff 72 62 01 65 01 d4 5c 8a 74 77 07
      01 00 60 32 01 01 01 72 62 01 62 00 62 00 52 00 04 44 5a 47 01 77 07 01 00 60 01 00 ff 01 72 62 01 62 00 62 00 52 00
      0b 0a 01 44 5a 47 00 03 b7 63 27 01 77 07 01 00 01 08 00 ff 64 1c 60 04 72 62 01 62 00 62 1e 52 03 63 09 5f 01 77 07
      01 00 02 08 00 ff 01 72 62 01 62 00 62 1e 52 03 63 15 2f 01 01 01 63 2a f3 00 76 05 e0 14 7d 05 62 00 62 00 72 63 02
      01 71 01 63 72 dc 00 00 00 00 1b 1b 1b 1b 1a 03 f7 c0 1b 1b 1b 1b 01 01 01 01 76 05 e1 14 7d 05 62 00 62 00 72 63 01
      

      Der Raspi ist über ein 2m Kabel mit dem IR-Lesekopf im Zählerschrank verbunden,
      mein Server mit dem iobroker ist 1 Stockwerk höher! Ich kann also den Lesekopf nicht direkt mit dem iob-System verbinden.

      Wie kann ich diese Daten trotzdem zu meinem iobroker "bekommen", so dass iobroker dann die Stromwerte verarbeitet?

      Meine Überlegung wäre, dass ich aus diesen Daten MQTT Pakete mache und der auf dem iob-Server installierte MQTT-Broker die Daten entgegen nimmt.
      Alternativ wäre auch eine ESP32 Lösung denkbar (preiswert, kein Raspi/Linux, keine SD/Festplatte), der dann MQTT Pakete mit den Stromwerten versendet. Gibt es hier Lösungsansätze?

      BananaJoeB Online
      BananaJoeB Online
      BananaJoe
      Most Active
      schrieb am zuletzt editiert von
      #7

      @topsurfer also wenn du auf den gängigen Handelsartikeln nach ir lesekopf tasmota wirst du diverse fertige finden ...
      Wenn du die Teile schon hast, viel Erfolg und Spaß

      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

      1 Antwort Letzte Antwort
      0
      • T Offline
        T Offline
        topsurfer
        schrieb am zuletzt editiert von topsurfer
        #8

        Danke Codierknecht,
        hab dein Image installiert (hab Wemo D1 Mini, 8266), gleiches verhalten.

        RX/TX hab ich schon getauscht (mache beschriften halt was erwartet wird, andere was anliegt).

        Nutze ja GPIO1 und 3, in Tasmota müssen die ja nicht als rx/tx definiert werden, nur "Generic" und Script (incl. enable)... Oder übersehe ich was?

        Hab einen DWS7612.2 (ZweiWege), nutze das Scripzt "DZG DWS76 (SML) - (Succesfully tested with DWS7612.1T)"

        Evtl. teste ich morgen mal einen aneren ESP, nicht dsa RX/TX defekt sind

        CodierknechtC 1 Antwort Letzte Antwort
        0
        • T topsurfer

          Danke Codierknecht,
          hab dein Image installiert (hab Wemo D1 Mini, 8266), gleiches verhalten.

          RX/TX hab ich schon getauscht (mache beschriften halt was erwartet wird, andere was anliegt).

          Nutze ja GPIO1 und 3, in Tasmota müssen die ja nicht als rx/tx definiert werden, nur "Generic" und Script (incl. enable)... Oder übersehe ich was?

          Hab einen DWS7612.2 (ZweiWege), nutze das Scripzt "DZG DWS76 (SML) - (Succesfully tested with DWS7612.1T)"

          Evtl. teste ich morgen mal einen aneren ESP, nicht dsa RX/TX defekt sind

          CodierknechtC Offline
          CodierknechtC Offline
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von
          #9

          @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

          in Tasmota müssen die ja nicht als rx/tx definiert werden

          Aber in den Parametern des SML-Scripts:
          https://tasmota.github.io/docs/Smart-Meter-Interface/#meter-definition
          Du kannst prinzipiell beliebige GPIO's benutzen. Muss dann halt im Script konfiguriert werden.

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          1 Antwort Letzte Antwort
          0
          • T Offline
            T Offline
            topsurfer
            schrieb am zuletzt editiert von topsurfer
            #10

            @codierknecht said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

            Aber in den Parametern des SML-Scripts:

            Ja, prinzipiell kann man dort Anpassungen vornehmen.

            Aber wenn ich "standard" lasse, GPI0 3, Baud 9600, SML, ... muss ja dort nichts angepasst werden.

            +1,3,s,16,9600,DWS7612

            CodierknechtC 1 Antwort Letzte Antwort
            0
            • T topsurfer

              @codierknecht said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

              Aber in den Parametern des SML-Scripts:

              Ja, prinzipiell kann man dort Anpassungen vornehmen.

              Aber wenn ich "standard" lasse, GPI0 3, Baud 9600, SML, ... muss ja dort nichts angepasst werden.

              +1,3,s,16,9600,DWS7612

              CodierknechtC Offline
              CodierknechtC Offline
              Codierknecht
              Developer Most Active
              schrieb am zuletzt editiert von
              #11

              @topsurfer

              muss ja dort nichts angepasst werden

              Eigentlich nicht.

              Ich nutze GPIO 1. Hinter dem s steht bei mir allerdings eine 0

              >D
              >B
              =>sensor53 r 
              >M 1
              +1,1,s,0,9600,eHZM
              

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              1 Antwort Letzte Antwort
              0
              • T Offline
                T Offline
                topsurfer
                schrieb am zuletzt editiert von topsurfer
                #12

                So, sehe Daten!

                Hab "spaßeshalber" mal deinen GPIO-Wert "1" bei mir eingetragen, und schon ging es!
                2025-02-05_101538.png
                +1,1,s,0,9600,DWS7612

                Wobei der beschriftete RX vom Lesekopf bei mir klar an GPIO3/RX vom ESp geht (und immer noch) ! (TX analog auf GPIO1).
                Evtl. ist tatsächlich am Lesekopf das RX und TX "getauscht", wobei ich ja vorher auch schon RX/TX getauscht hatte ...

                Was ich jetzt sehe, dass ich nur den Gesamtverbrauch sehe; Pin für Freischaltung des Zählers ist jetzt beantragt.

                Verständnisfrage:
                Man kann ja über den zweiten Wert im Script den RX-Pin (GPIO) mitgeben, aber wie und wo wird der genutzte TX mitgeteilt? Oder ist der letztlich gar nicht notwendig?

                CodierknechtC HomoranH 2 Antworten Letzte Antwort
                0
                • T topsurfer

                  So, sehe Daten!

                  Hab "spaßeshalber" mal deinen GPIO-Wert "1" bei mir eingetragen, und schon ging es!
                  2025-02-05_101538.png
                  +1,1,s,0,9600,DWS7612

                  Wobei der beschriftete RX vom Lesekopf bei mir klar an GPIO3/RX vom ESp geht (und immer noch) ! (TX analog auf GPIO1).
                  Evtl. ist tatsächlich am Lesekopf das RX und TX "getauscht", wobei ich ja vorher auch schon RX/TX getauscht hatte ...

                  Was ich jetzt sehe, dass ich nur den Gesamtverbrauch sehe; Pin für Freischaltung des Zählers ist jetzt beantragt.

                  Verständnisfrage:
                  Man kann ja über den zweiten Wert im Script den RX-Pin (GPIO) mitgeben, aber wie und wo wird der genutzte TX mitgeteilt? Oder ist der letztlich gar nicht notwendig?

                  CodierknechtC Offline
                  CodierknechtC Offline
                  Codierknecht
                  Developer Most Active
                  schrieb am zuletzt editiert von
                  #13

                  @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                  Oder ist der letztlich gar nicht notwendig?

                  Ich brauche da nix. Hauptsache es funzt :grin:

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  1 Antwort Letzte Antwort
                  0
                  • T topsurfer

                    So, sehe Daten!

                    Hab "spaßeshalber" mal deinen GPIO-Wert "1" bei mir eingetragen, und schon ging es!
                    2025-02-05_101538.png
                    +1,1,s,0,9600,DWS7612

                    Wobei der beschriftete RX vom Lesekopf bei mir klar an GPIO3/RX vom ESp geht (und immer noch) ! (TX analog auf GPIO1).
                    Evtl. ist tatsächlich am Lesekopf das RX und TX "getauscht", wobei ich ja vorher auch schon RX/TX getauscht hatte ...

                    Was ich jetzt sehe, dass ich nur den Gesamtverbrauch sehe; Pin für Freischaltung des Zählers ist jetzt beantragt.

                    Verständnisfrage:
                    Man kann ja über den zweiten Wert im Script den RX-Pin (GPIO) mitgeben, aber wie und wo wird der genutzte TX mitgeteilt? Oder ist der letztlich gar nicht notwendig?

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von Homoran
                    #14

                    @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                    Wobei der beschriftete RX vom Lesekopf bei mir klar an GPIO3/RX geht

                    was der Kopf empfängt muss der Gegenüber senden.
                    RX an Rx ist Blödsinn

                    edit:
                    bitte nichts nachträglich ändern!
                    schon gar nicht ohne Kennzeichnung!

                    Die nachfolgenden Posts ergeben sonst (teilweise) keinen Sinn mehr!

                    kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    MartinPM 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                      Wobei der beschriftete RX vom Lesekopf bei mir klar an GPIO3/RX geht

                      was der Kopf empfängt muss der Gegenüber senden.
                      RX an Rx ist Blödsinn

                      edit:
                      bitte nichts nachträglich ändern!
                      schon gar nicht ohne Kennzeichnung!

                      Die nachfolgenden Posts ergeben sonst (teilweise) keinen Sinn mehr!

                      MartinPM Online
                      MartinPM Online
                      MartinP
                      schrieb am zuletzt editiert von
                      #15

                      @homoran sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                      was der Kopf empfängt muss der Gegenüber senden.
                      RX an Rx ist Blödsinn

                      Der Meinung war ich auch, bis ich den TTL-Seriellen Lesekopf bekommen habe...

                      Dessen Sendeanschluss war mit "RX" beschriftet, musste also an den mit "RX" beschrifteten Pin des ESP-Moduls ...

                      Auch im dem Schaltplan für den "Volkszähler" ist das so.

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

                      Vielleicht ist das die Erklärung: Die obere Hälfte EMPFÄNGT das Signal vom Zähler, und RXD bedeutet "vom Zähler empfangene Daten"
                      volkszähler

                      Intel(R) Celeron(R) CPU N3000 @ 1.04GHz 8G RAM 480G SSD
                      Virtualization : unprivileged lxc container (debian 12 on Proxmox 8.4.14)
                      Linux pve 6.8.12-16-pve
                      6 GByte RAM für den Container
                      Fritzbox 6591 FW 8.03 (Vodafone Leih-Box)
                      Remote-Access über Wireguard der Fritzbox

                      T 1 Antwort Letzte Antwort
                      0
                      • MartinPM MartinP

                        @homoran sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                        was der Kopf empfängt muss der Gegenüber senden.
                        RX an Rx ist Blödsinn

                        Der Meinung war ich auch, bis ich den TTL-Seriellen Lesekopf bekommen habe...

                        Dessen Sendeanschluss war mit "RX" beschriftet, musste also an den mit "RX" beschrifteten Pin des ESP-Moduls ...

                        Auch im dem Schaltplan für den "Volkszähler" ist das so.

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

                        Vielleicht ist das die Erklärung: Die obere Hälfte EMPFÄNGT das Signal vom Zähler, und RXD bedeutet "vom Zähler empfangene Daten"
                        volkszähler

                        T Offline
                        T Offline
                        topsurfer
                        schrieb am zuletzt editiert von topsurfer
                        #16

                        So,
                        habe heute den Pin für den Stromzähler erhalten, sehe auch mehr Daten als zuvor in der Tasmota GUI, aber nicht im iob bzw. nicht über MQTT.
                        Warum ist das so? Wie kan ich diese 3 Werte über MQTT in iob "reinbekommen" ?

                        Das Script sieht aktuell so aus, und liefert ja auch Daten an den ESP mit dem Stromzähöer

                        >D
                        >B
                        =>sensor53 r
                        >M 1
                        +1,1,s,0,9600,DWS7612
                        1,77070100010800ff@1000,Energie,kWh,energy,4
                        1,77070100020800ff@1000,Energie geliefert,kWh,energy,0
                        1,77070100100700ff@1,Leistung,W,power,2
                        #  
                        

                        Tasmota Web-Gui zeigt auch korrekte Daten:
                        2025-02-11_181355.png

                        Aber im Object in iob (und über MQTT-Excplrer) sieht das so aus, es fehlt der oberer "Energie" Wert:

                        {
                          "Time": "2025-02-11T18:17:07",
                          "DWS7612": {
                            "energy": 5448,
                            "power": -3.91
                          }
                        }
                        
                        HomoranH CodierknechtC 2 Antworten Letzte Antwort
                        0
                        • T topsurfer

                          So,
                          habe heute den Pin für den Stromzähler erhalten, sehe auch mehr Daten als zuvor in der Tasmota GUI, aber nicht im iob bzw. nicht über MQTT.
                          Warum ist das so? Wie kan ich diese 3 Werte über MQTT in iob "reinbekommen" ?

                          Das Script sieht aktuell so aus, und liefert ja auch Daten an den ESP mit dem Stromzähöer

                          >D
                          >B
                          =>sensor53 r
                          >M 1
                          +1,1,s,0,9600,DWS7612
                          1,77070100010800ff@1000,Energie,kWh,energy,4
                          1,77070100020800ff@1000,Energie geliefert,kWh,energy,0
                          1,77070100100700ff@1,Leistung,W,power,2
                          #  
                          

                          Tasmota Web-Gui zeigt auch korrekte Daten:
                          2025-02-11_181355.png

                          Aber im Object in iob (und über MQTT-Excplrer) sieht das so aus, es fehlt der oberer "Energie" Wert:

                          {
                            "Time": "2025-02-11T18:17:07",
                            "DWS7612": {
                              "energy": 5448,
                              "power": -3.91
                            }
                          }
                          
                          HomoranH Nicht stören
                          HomoranH Nicht stören
                          Homoran
                          Global Moderator Administrators
                          schrieb am zuletzt editiert von
                          #17

                          @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                          Warum ist das so?

                          ich hab das mal hierhin verschoben, scheint ja um Tasmota zu gehen

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          T 1 Antwort Letzte Antwort
                          0
                          • HomoranH Homoran

                            @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                            Warum ist das so?

                            ich hab das mal hierhin verschoben, scheint ja um Tasmota zu gehen

                            T Offline
                            T Offline
                            topsurfer
                            schrieb am zuletzt editiert von
                            #18

                            OK,
                            hab es gelöst, im Script war zweimal das Keyword (?) "energy" genutzt,
                            in anderen Scripts hab eich das keyword "en_out" gsehen und damit ersetzt, jetzt komemn per MQTT alle drei Werte an.

                            So sieht es nun bei mir aus, für einen DWS7612.2, evtl. kann es ja jemand gebrauchen:

                            >D
                            >B
                            =>sensor53 r
                            =>sensor53 l2
                            >M 1
                            +1,1,s,0,9600,DWS7612
                            1,77070100010800ff@1000,Energie eingespeist,kWh,en_out,1
                            1,77070100020800ff@1000,Energie geliefert,kWh,energy,1
                            1,77070100100700ff@1,Leistung aktuell,W,power,0
                            # 
                            
                            1 Antwort Letzte Antwort
                            0
                            • T topsurfer

                              So,
                              habe heute den Pin für den Stromzähler erhalten, sehe auch mehr Daten als zuvor in der Tasmota GUI, aber nicht im iob bzw. nicht über MQTT.
                              Warum ist das so? Wie kan ich diese 3 Werte über MQTT in iob "reinbekommen" ?

                              Das Script sieht aktuell so aus, und liefert ja auch Daten an den ESP mit dem Stromzähöer

                              >D
                              >B
                              =>sensor53 r
                              >M 1
                              +1,1,s,0,9600,DWS7612
                              1,77070100010800ff@1000,Energie,kWh,energy,4
                              1,77070100020800ff@1000,Energie geliefert,kWh,energy,0
                              1,77070100100700ff@1,Leistung,W,power,2
                              #  
                              

                              Tasmota Web-Gui zeigt auch korrekte Daten:
                              2025-02-11_181355.png

                              Aber im Object in iob (und über MQTT-Excplrer) sieht das so aus, es fehlt der oberer "Energie" Wert:

                              {
                                "Time": "2025-02-11T18:17:07",
                                "DWS7612": {
                                  "energy": 5448,
                                  "power": -3.91
                                }
                              }
                              
                              CodierknechtC Offline
                              CodierknechtC Offline
                              Codierknecht
                              Developer Most Active
                              schrieb am zuletzt editiert von Codierknecht
                              #19

                              @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                              Wie kan ich diese 3 Werte über MQTT in iob "reinbekommen" ?

                              Wie bei allem was mit Tasmota läuft: Über den Sonoff-Adapter.
                              Der dröselt das JSON für Dich auseinander.

                              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                              HmIP|ZigBee|Tasmota|Unifi
                              Zabbix Certified Specialist
                              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                              T 1 Antwort Letzte Antwort
                              0
                              • CodierknechtC Codierknecht

                                @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                Wie kan ich diese 3 Werte über MQTT in iob "reinbekommen" ?

                                Wie bei allem was mit Tasmota läuft: Über den Sonoff-Adapter.
                                Der dröselt das JSON für Dich auseinander.

                                T Offline
                                T Offline
                                topsurfer
                                schrieb am zuletzt editiert von
                                #20

                                Dachte es würde laufen ...
                                in der Tasmota Web-Gui werden die Daten (speziell sichtbar am "Aktuellen Verbrauch: x W") im Sekunden Rhythmus aktualisiert, super.

                                Aber im MQTT Explorer und in iob sehe ich nur selten aktuallisierungen, evtl. minütlich.

                                Gibt es noch einen Parameter, wie oft er MQTT rausschicken soll?
                                Oder ist dieses Intervall normal?

                                W 1 Antwort Letzte Antwort
                                0
                                • T topsurfer

                                  Dachte es würde laufen ...
                                  in der Tasmota Web-Gui werden die Daten (speziell sichtbar am "Aktuellen Verbrauch: x W") im Sekunden Rhythmus aktualisiert, super.

                                  Aber im MQTT Explorer und in iob sehe ich nur selten aktuallisierungen, evtl. minütlich.

                                  Gibt es noch einen Parameter, wie oft er MQTT rausschicken soll?
                                  Oder ist dieses Intervall normal?

                                  W Offline
                                  W Offline
                                  warp735
                                  schrieb am zuletzt editiert von warp735
                                  #21

                                  @topsurfer
                                  Kannst einstellen am Gerät. Glaub Standard steht da 300s mqtt Intervall

                                  configuration > configuration logging > telemetry period

                                  T 1 Antwort Letzte Antwort
                                  0
                                  • W warp735

                                    @topsurfer
                                    Kannst einstellen am Gerät. Glaub Standard steht da 300s mqtt Intervall

                                    configuration > configuration logging > telemetry period

                                    T Offline
                                    T Offline
                                    topsurfer
                                    schrieb am zuletzt editiert von
                                    #22

                                    @warp735 said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                    c

                                    Oh danke, stimmt, da war was ...

                                    Hab auch was verwechselt, ich hatte in meiner alten Installation (noch unter OpenHab) einen S0 Strom-Zähler genutzt.
                                    (Zeit zwischen zwei Impuslen wurde bei höherem akt. Verbrauch geringer, diese Impulse über GPIO eines Raspberry überwacht, aus der Zeit zwischen 2 Impulsen den realen Momentan-Verbrauch ermittelt (in Echtzeit also).

                                    Jetzt geht es ja über MQTT ... kleinstes Intervall was in "Telemetry period" akzeptiert wird ist "10" (Sekunden), gibts da einen "Trick", den auf 2s zu setzen?

                                    BananaJoeB 1 Antwort Letzte Antwort
                                    0
                                    • T topsurfer

                                      @warp735 said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                      c

                                      Oh danke, stimmt, da war was ...

                                      Hab auch was verwechselt, ich hatte in meiner alten Installation (noch unter OpenHab) einen S0 Strom-Zähler genutzt.
                                      (Zeit zwischen zwei Impuslen wurde bei höherem akt. Verbrauch geringer, diese Impulse über GPIO eines Raspberry überwacht, aus der Zeit zwischen 2 Impulsen den realen Momentan-Verbrauch ermittelt (in Echtzeit also).

                                      Jetzt geht es ja über MQTT ... kleinstes Intervall was in "Telemetry period" akzeptiert wird ist "10" (Sekunden), gibts da einen "Trick", den auf 2s zu setzen?

                                      BananaJoeB Online
                                      BananaJoeB Online
                                      BananaJoe
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #23

                                      @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                      Jetzt geht es ja über MQTT ... kleinstes Intervall was in "Telemetry period" akzeptiert wird ist "10" (Sekunden), gibts da einen "Trick", den auf 2s zu setzen?

                                      EasyMeterHichi.gif

                                      Ja, wenn du direkt an einen MQTT-Broker sendest. Du musst das SML-Skript bearbeiten, hier als Beispiel anhand meines Skriptes.
                                      Mein Skript:

                                      >D
                                      >B
                                      =>sensor53 r
                                      >M 1
                                      +1,3,s,0,9600,SML
                                      1,77070100010801ff@1000,Verbrauch_Tarif_1,kWh,Verbrauch_T1,7
                                      1,77070100010802ff@1000,Verbrauch_Tarif_2,kWh,Verbrauch_T2,7
                                      1,77070100010800ff@1000,Verbrauch_Summe,kWh,Verbrauch_Summe,7
                                      1,77070100020800ff@1000,Einspeisung_Summe,kWh,Einspeisung_Summe,7
                                      1,=h-- 
                                      1,77070100240700ff@1,Leistung_L1,W,Watt_L1,2
                                      1,77070100380700ff@1,Leistung_L2,W,Watt_L2,2
                                      1,770701004c0700ff@1,Leistung_L3,W,Watt_L3,2
                                      1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,2
                                      1,=h-- 
                                      1,77070100200700ff@1,Spannung_L1,V,Volt_L1,1
                                      1,77070100340700ff@1,Spannung_L2,V,Volt_L2,1
                                      1,77070100480700ff@1,Spannung_L3,V,Volt_L3,1
                                      #
                                      >S
                                      =>Publish Soyosource/SOYO_1ce2fb/L1L2L3 %sml[8]%
                                      

                                      Den Wert aus Zeile 14 möchte ich nun bei jeder Änderungen gesendet haben:

                                      1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,2
                                      

                                      Nun heißt es zählen. Zeile 14 ist der 8. Wert der ermittelt wurde, in den Zeilen 6 bis 9 und 11 bis 13 werden 7 Werte ermittelt, Zeile 14 ist der 8.

                                      Unten unter das

                                      >S
                                      

                                      habe ich dafür die Zeile

                                      =>Publish Soyosource/SOYO_1ce2fb/L1L2L3 %sml[8]%
                                      

                                      diese sendet den 8. Wert bei jeder Änderung an das Topic Soyosource/SOYO_1ce2fb/L1L2L3

                                      Wie man das in Zusammenhang mit dem Sonoff-Adapter gehen würde weis ich nicht, ich lasse das an meinen MQTT-Adpater senden (mit Mosquitto dazwischen) und - um @Codierknecht zu referenzieren - drösel das JSON selbst auseinander (für den Rest)

                                      Wie du siehst geht das sogar noch schneller als auf der Weboberfläche.
                                      Nein, langsamer geht nicht, einen Tod musst du sterben. Entweder jede Änderungen oder alle 10 Sekunden und höher.

                                      ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                                      T 1 Antwort Letzte Antwort
                                      0
                                      • BananaJoeB BananaJoe

                                        @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                        Jetzt geht es ja über MQTT ... kleinstes Intervall was in "Telemetry period" akzeptiert wird ist "10" (Sekunden), gibts da einen "Trick", den auf 2s zu setzen?

                                        EasyMeterHichi.gif

                                        Ja, wenn du direkt an einen MQTT-Broker sendest. Du musst das SML-Skript bearbeiten, hier als Beispiel anhand meines Skriptes.
                                        Mein Skript:

                                        >D
                                        >B
                                        =>sensor53 r
                                        >M 1
                                        +1,3,s,0,9600,SML
                                        1,77070100010801ff@1000,Verbrauch_Tarif_1,kWh,Verbrauch_T1,7
                                        1,77070100010802ff@1000,Verbrauch_Tarif_2,kWh,Verbrauch_T2,7
                                        1,77070100010800ff@1000,Verbrauch_Summe,kWh,Verbrauch_Summe,7
                                        1,77070100020800ff@1000,Einspeisung_Summe,kWh,Einspeisung_Summe,7
                                        1,=h-- 
                                        1,77070100240700ff@1,Leistung_L1,W,Watt_L1,2
                                        1,77070100380700ff@1,Leistung_L2,W,Watt_L2,2
                                        1,770701004c0700ff@1,Leistung_L3,W,Watt_L3,2
                                        1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,2
                                        1,=h-- 
                                        1,77070100200700ff@1,Spannung_L1,V,Volt_L1,1
                                        1,77070100340700ff@1,Spannung_L2,V,Volt_L2,1
                                        1,77070100480700ff@1,Spannung_L3,V,Volt_L3,1
                                        #
                                        >S
                                        =>Publish Soyosource/SOYO_1ce2fb/L1L2L3 %sml[8]%
                                        

                                        Den Wert aus Zeile 14 möchte ich nun bei jeder Änderungen gesendet haben:

                                        1,77070100100700ff@1,Leistung_Summe,W,Watt_Summe,2
                                        

                                        Nun heißt es zählen. Zeile 14 ist der 8. Wert der ermittelt wurde, in den Zeilen 6 bis 9 und 11 bis 13 werden 7 Werte ermittelt, Zeile 14 ist der 8.

                                        Unten unter das

                                        >S
                                        

                                        habe ich dafür die Zeile

                                        =>Publish Soyosource/SOYO_1ce2fb/L1L2L3 %sml[8]%
                                        

                                        diese sendet den 8. Wert bei jeder Änderung an das Topic Soyosource/SOYO_1ce2fb/L1L2L3

                                        Wie man das in Zusammenhang mit dem Sonoff-Adapter gehen würde weis ich nicht, ich lasse das an meinen MQTT-Adpater senden (mit Mosquitto dazwischen) und - um @Codierknecht zu referenzieren - drösel das JSON selbst auseinander (für den Rest)

                                        Wie du siehst geht das sogar noch schneller als auf der Weboberfläche.
                                        Nein, langsamer geht nicht, einen Tod musst du sterben. Entweder jede Änderungen oder alle 10 Sekunden und höher.

                                        T Offline
                                        T Offline
                                        topsurfer
                                        schrieb am zuletzt editiert von topsurfer
                                        #24

                                        @bananajoe said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                        Ja, wenn du direkt an einen MQTT-Broker sendest. Du musst das SML-Skript bearbeiten, hier als Beispiel anhand meines Skriptes.

                                        Super, das klappt, danke dir!
                                        Hatte erst ein kleines "s" genutzt, das hat nicht funktioniert.

                                        Kann ich beim Publish direkt mitgeben, das er nur ganzzahlig senden soll, also ohne Nachkommastellen?
                                        In der Web-Gui geht das ja mit dem letzten Parameter (...,0) (= Null Nachkommastellen)

                                        Update: Oder wie lautet im Alias die Konvertierungsformel ? (runden oder umwandeln in Ganzzahlig sollte damit doch möglich sein
                                        val ...

                                        BananaJoeB CodierknechtC 2 Antworten Letzte Antwort
                                        0
                                        • T topsurfer

                                          @bananajoe said in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                          Ja, wenn du direkt an einen MQTT-Broker sendest. Du musst das SML-Skript bearbeiten, hier als Beispiel anhand meines Skriptes.

                                          Super, das klappt, danke dir!
                                          Hatte erst ein kleines "s" genutzt, das hat nicht funktioniert.

                                          Kann ich beim Publish direkt mitgeben, das er nur ganzzahlig senden soll, also ohne Nachkommastellen?
                                          In der Web-Gui geht das ja mit dem letzten Parameter (...,0) (= Null Nachkommastellen)

                                          Update: Oder wie lautet im Alias die Konvertierungsformel ? (runden oder umwandeln in Ganzzahlig sollte damit doch möglich sein
                                          val ...

                                          BananaJoeB Online
                                          BananaJoeB Online
                                          BananaJoe
                                          Most Active
                                          schrieb am zuletzt editiert von
                                          #25

                                          @topsurfer sagte in IR-Lesekopf (Stromzähler, SML-Format) einbinden:

                                          Kann ich beim Publish direkt mitgeben, das er nur ganzzahlig senden soll, also ohne Nachkommastellen?
                                          In der Web-Gui geht das ja mit dem letzten Parameter (...,0) (= Null Nachkommastellen)

                                          Da bin ich raus, statt Alias verwende ich ein kleines Skript was noch mal auf Plausibilität prüft und das ganze dann in einen eigenen Datenpunkt schreibt. (Letztendlich macht Alias das gleiche)

                                          ioBroker@Ubuntu 24.04 LTS (VMware) für: >260 Geräte, 5 Switche, 7 AP, 9 IP-Cam, 1 NAS 42TB, 1 ESXi 15TB, 4 Proxmox 1TB, 1 Hyper-V 48TB, 14 x Echo, 5x FireTV, 5 x Tablett/Handy VIS || >=160 Tasmota/Shelly || >=95 ZigBee || PV 8.1kW / Akku 14kWh || 2x USV 750W kaskadiert || Creality CR-10 SE 3D-Drucker

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          948

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe