Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. IR Lesekopf/NodeMCU per MQTT einbinden [gelöst ...]

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    IR Lesekopf/NodeMCU per MQTT einbinden [gelöst ...]

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      TT-Tom @kurt_88 last edited by

      @kurt_88 ich glaube du musst Bezug und Verbrauch tauschen

      K 1 Reply Last reply Reply Quote 0
      • K
        kurt_88 @TT-Tom last edited by

        @tt-tom
        Irgendwie stehe ich mal wieder auf den Schlauch, siehe Screenshot.

        Screenshot_20230126_204559_neu_08.png

        Viele Grüße

        T 1 Reply Last reply Reply Quote 0
        • T
          TT-Tom @kurt_88 last edited by

          @kurt_88

          Was hast du denn geändert?

          K 1 Reply Last reply Reply Quote 0
          • K
            kurt_88 @TT-Tom last edited by

            @tt-tom

            Bin jetzt schon etwas weiter, den Verbrauch habe ich auf die Einspeisung umgebogen, das hatte geklappt, dann habe ich den Datenpunkt geändert und wollte den Wert mitnehmen, aber das Klappt nicht. Siehe Screenshots.

            Screenshot_20230126_204559_neu_09.png

            Screenshot_20230126_204559_neu_10.png

            Viele Grüße

            T 1 Reply Last reply Reply Quote 0
            • T
              TT-Tom @kurt_88 last edited by

              @kurt_88

              du hast immer noch die alten Scripte am laufen, bitte stoppen.

              zeige mal bitte den unteren Teil vom Blockly (aktualisiere Bausteine)

              K 1 Reply Last reply Reply Quote 1
              • K
                kurt_88 @TT-Tom last edited by kurt_88

                @tt-tom

                Danke, dass war es. Im unteren Teil des Script stand noch ein alter Eintrag. Jetzt klappt es. Ich hätte nicht gedacht, dass das so komlpiziert ist, um den Stromzähler im IoBroker zu integrieren.

                Screenshot_20230126_204559_neu_11.png

                Danke nochmal an alle die geholfen haben und viele Grüße

                T 1 Reply Last reply Reply Quote 0
                • T
                  TT-Tom @kurt_88 last edited by

                  @kurt_88

                  Perfekt wenn es jetzt läuft. 👍
                  Setzt das Thema auf gelöst und weiter viel Spaß

                  W 1 Reply Last reply Reply Quote 1
                  • W
                    Wilfried_2 @TT-Tom last edited by

                    @tt-tom
                    Hallo Tom,
                    meine Name ist Wilfried und ich lese seit einigen Tage Deinen Beitrag zum Thema
                    IR-Lesekopf etc. in dem Du dem Kurt so nett geholfen hast. Da ich fast das identische Problem mit der Auswertung der MQTT-Daten habe war ich froh einen so hilfreichen Beitrag gefunden zu haben. Ich habe mir auch gleich „frecherweise“ die tollen Blockly-Scripte gekapert. Ich habe mir diese auf meine Bedürfnisse angepasst, aber irgend etwas will noch nicht klappen. Es ist sicherlich kein großer Fehler aber ich sehe ihn einfach nicht.
                    Solltest du also Lust und Laune habe auch mir auf die Sprünge zu helfen, dann wäre ich Dir sehr dankbar.

                    Gruß Wilfried

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

                      @wilfried_2 sagte in IR Lesekopf/NodeMCU per MQTT einbinden [gelöst ...]:

                      aber irgend etwas will noch nicht klappen.

                      und was?

                      https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

                      W 1 Reply Last reply Reply Quote 0
                      • W
                        Wilfried_2 @Homoran last edited by

                        @homoran
                        Hallo, ich erhalte in den erzeugten Datenpunkten keine Werte sondern soetwas {"asc":true}.

                        8b75a1ac-5a0a-4323-a8e3-4caf4c33f013-grafik.png

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

                          @wilfried_2 schneid mal nur das Blockly aus.
                          dann kann ich es auch erkennen und man sieht nicht das ganze drumherum

                          Außerdem wäre ein Output des debugs in code-tags hilfreich

                          wenn ich das richtig entziffern kann, hast dub3 Blöcke außerhalb des Triggerbausteins. Die müssen da rein.

                          W 1 Reply Last reply Reply Quote 0
                          • W
                            Wilfried_2 @Homoran last edited by

                            @homoran ```
                            Das bekomme ich via Tasmota von meinem Zähler "ISKRA MT175"

                            20:32:50.123 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:50","MT175":{"P":392.00}}
                            20:32:51.958 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:51","MT175":{"P":393.00}}
                            20:32:53.783 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:53","MT175":{"P":393.00}}
                            20:32:55.610 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:55","MT175":{"P":393.00}}
                            20:32:57.443 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:57","MT175":{"P":393.00}}
                            20:32:59.256 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:32:59","MT175":{"P":393.00}}
                            20:33:01.033 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:01","MT175":{"P":397.00}}
                            20:33:01.967 MQT: %Topic%/%Stromzaehler%/STATE = {"Time":"2023-02-04T20:33:01","Uptime":"0T04:00:21","UptimeSec":14421,"Heap":20,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":25,"MqttCount":2,"Wifi":{"AP":1,"SSId":"01Speed22","BSSId":"C8:99:B2:5D:1C:5E","Channel":1,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":1,"Downtime":"0T00:00:05"}}
                            20:33:01.975 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:01","MT175":{"E_in":7636.9,"P":397.00,"Server_ID":"090149534b000484fb20"}}
                            20:33:02.820 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:02","MT175":{"P":399.00}}
                            20:33:04.620 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:04","MT175":{"P":399.00}}
                            20:33:06.426 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:06","MT175":{"P":403.00}}
                            20:33:08.201 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:08","MT175":{"P":403.00}}
                            20:33:10.007 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:10","MT175":{"P":403.00}}
                            20:33:11.751 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:11","MT175":{"P":404.00}}
                            20:33:13.560 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:13","MT175":{"P":404.00}}
                            20:33:15.356 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:15","MT175":{"P":401.00}}
                            20:33:17.148 MQT: %Topic%/%Stromzaehler%/SENSOR = {"Time":"2023-02-04T20:33:17","MT175":{"P":399.00}}
                            

                            In mqtt.0 sieht das so aus

                            {
                              "Time": "2023-02-04T19:11:06",
                              "MT175": {
                                "P": 477
                              }
                            }
                            

                            Da fehlt meines erachtens schon mal der ges. Zählerstand. Ich habe herausgefunden, dass Zählerstand nur einmal pro Min. gesendet wird (Telemetry Period: 60).

                            Das Blockly habe ich geändert und jetzt wird schonmal der "Aktuell"-Wert angezeigt. Der Gesamtverbrauch aber nicht.

                            62cf7ef8-d153-4096-a03b-0e5659a1b19c-grafik.png


                            <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                            <variable id="o^VE=q/EJxRCU@p=Nq({">Verbrauch</variable>
                            <variable id="yK^u+S#}N~|IeJsi~VAh">aktuell</variable>
                            </variables>
                            <block type="create" id="swB_9{Mg2QcF?v|UMaP#" x="-512" y="-62">
                            <field name="NAME">0_userdata.0.Stromzähler.Verbrauch</field>
                            <value name="VALUE">
                            <block type="math_number" id="Z+;(EE9+ht]r5cCHBr1"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="zn9[(J+$[cPEt,=~Ahf">
                            <field name="TEXT">{"name": "Stromzähler.Verbrauch","type": "number","write": false}</field>
                            </block>
                            </value>
                            <next>
                            <block type="create" id="q9KBLu?K}gL2bnrM^kE">
                            <field name="NAME">0_userdata.0.Stromzähler.Aktuell</field>
                            <value name="VALUE">
                            <block type="math_number" id="ujd+dCs:F$C6dY^TE-Y#">
                            <field name="NUM">0</field>
                            </block>
                            </value>
                            <value name="COMMON">
                            <block type="text" id="i4dWZV|-U8
                            %Q?EA(iJt">
                            <field name="TEXT">{"name": "Stromzähler.Aktuell","type": "number","write": false}</field>
                            </block>
                            </value>
                            <next>
                            <block type="on_ext" id="p~c_9Fq1{DWv5J%;1?1H">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <value name="OID0">
                            <shadow type="field_oid" id="?g1f{w5n!;pGTzeI_1Fs">
                            <field name="oid">default</field>
                            </shadow>
                            <block type="field_oid" id="z=GDvQkiX8NSAqoo#H=w">
                            <field name="oid">mqtt.0.%Topic%.%Stromzaehler%.SENSOR</field>
                            </block>
                            </value>
                            <statement name="STATEMENT">
                            <block type="variables_set" id="h|nP.?B6J~AHedSv8W,">
                            <field name="VAR" id="o^VE=q/EJxRCU@p=Nq({">Verbrauch</field>
                            <value name="VALUE">
                            <block type="get_attr" id="z:S4j%{$(p.V2z~;jxIk">
                            <value name="PATH">
                            <shadow type="text" id="3q5lsf*K
                            :RzQ50%;Gtr">
                            <field name="TEXT">MT175.E_in</field>
                            </shadow>
                            </value>
                            <value name="OBJECT">
                            <block type="on_source" id="MpJ$Vt{.;lSjqx%E^ds$">
                            <field name="ATTR">state.val</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <next>
                            <block type="variables_set" id="LkJtt}83K:V=*Q*oZln"> <field name="VAR" id="yK^u+S#}N~|IeJsi~VAh">aktuell</field> <value name="VALUE"> <block type="get_attr" id="*ovm[7(U%[}E=x^YeUgS"> <value name="PATH"> <shadow type="text" id="ao+m:*3H=8Pj(%2N$d-O"> <field name="TEXT">MT175.P</field> </shadow> </value> <value name="OBJECT"> <block type="on_source" id="v8$PYhv_^cHXK%EqZ]/E"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="debug" id="(vG/K[#x+!Yx-14uihw">
                            <field name="Severity">log</field>
                            <value name="TEXT">
                            <shadow type="text" id="MAp?W)hbI1Ne[[Ac;F7#">
                            <field name="TEXT">test</field>
                            </shadow>
                            <block type="text_join" id="q1~t(B|Y()[K{E(5XU%c">
                            <mutation items="4"></mutation>
                            <value name="ADD0">
                            <block type="text" id="m=;?FK(d/O~Gn5NJv$J1">
                            <field name="TEXT">Verbrauch: </field>
                            </block>
                            </value>
                            <value name="ADD1">
                            <block type="variables_get" id="*LYJsz5::!Lj,C}RecMB">
                            <field name="VAR" id="o^VE=q/EJxRCU@p=Nq({">Verbrauch</field>
                            </block>
                            </value>
                            <value name="ADD2">
                            <block type="text" id="h2W^qqx{8[wl3|/JO|OX">
                            <field name="TEXT">aktuell:</field>
                            </block>
                            </value>
                            <value name="ADD3">
                            <block type="variables_get" id="B0Vh]vU2LxerJvTd])f#">
                            <field name="VAR" id="yK^u+S#}N~|IeJsi~VAh">aktuell</field>
                            </block>
                            </value>
                            </block>
                            </value>
                            <next>
                            <block type="update" id="vjeAJCkDo4LC=cG}Pp|1">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.Stromzähler.Verbrauch</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="ZO@m6Igkuar$n2kv!)4I">
                            <field name="VAR" id="o^VE=q/EJxRCU@p=Nq({">Verbrauch</field>
                            </block>
                            </value>
                            <next>
                            <block type="update" id="J{{TRb8Hbkwqn{GzXpS9">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.Stromzähler.Aktuell</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                            <block type="variables_get" id="7Xn;#P#@kY?Qep9!SRrN">
                            <field name="VAR" id="yK^u+S#}N~|IeJsi~VAh">aktuell</field>
                            </block>
                            </value>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </statement>
                            </block>
                            </next>
                            </block>
                            </next>
                            </block>
                            </xml>

                            Das Script -Log gibt das aus :

                            19:48:05.022	info	javascript.0 (1032) script.js.meine_scripte.Zaehler2: Verbrauch: aktuell:383
                            19:48:05.023	info	javascript.0 (1032) script.js.meine_scripte.Zaehler2: setForeignState(id=0_userdata.0.Stromzähler.Verbrauch, state={"val":{"ack":true},"ack":true,"ts":1675536485023,"q":0,"from":"system.adapter.javascript.0","lc":1675536485023,"c":"script.js.meine_scripte.Zaehler2"})
                            19:48:05.024	info	javascript.0 (1032) script.js.meine_scripte.Zaehler2: setForeignState(id=0_userdata.0.Stromzähler.Aktuell, state={"val":383,"ack":true,"ts":1675536485024,"q":0,"from":"system.adapter.javascript.0","lc":1675536483160,"c":"script.js.meine_scripte.Zaehler2"})
                            
                            

                            Wieso aber der Verbrauch aber in mqtt.o nicht erscheint kann ich mir nicht erklären

                            Homoran T 2 Replies Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators @Wilfried_2 last edited by

                              @wilfried_2 sagte in IR Lesekopf/NodeMCU per MQTT einbinden [gelöst ...]:

                              Da fehlt meines erachtens schon mal der ges. Zählerstand. Ich habe herausgefunden, dass Zählerstand nur einmal pro Min. gesendet wird (Telemetry Period: 60).

                              dann kann das Blockly auch nur E_in ausbdem JSON auslesen, wenn es auch drin ist.

                              im Protokoll siehst du dassxes nur um 20:33:01 dabei ist

                              1 Reply Last reply Reply Quote 0
                              • T
                                TT-Tom @Wilfried_2 last edited by

                                @wilfried_2

                                Werte bekommst du ja schon.

                                Was mir aufgefallen ist, dass dein MQTT in Tasmota komische Einstellungen hat für den Full Topic.
                                Hast du dein Zähler per Pin freigeschaltet? Sind mir zu wenig Daten.

                                Zeige bitte mal die MQTT Einstellung von Tasmota und das Script in Tasmota zum auslesen des Zähler. Des Weiteren die Ordner vom MQTT.0, sind vermutlich wegen dem komischen Full Topic ach verteilt.

                                W 1 Reply Last reply Reply Quote 0
                                • W
                                  Wilfried_2 last edited by

                                  @tt-tom
                                  Hallo Tom,
                                  Ja der Zähler ist per PIN freigeschaltet. Aber die Werte für L1,L2,L3 werden nicht freigegeben. Ich habe die entsprechenden Zeilen im Script gelöcht.

                                  3e7d669c-2ac8-48cb-ab01-07138fc0705b-grafik.png

                                  738b023d-6bc9-473e-90a2-3ce65d01a34d-grafik.png

                                  Screenshot 2023-02-04 at 22-55-28 Stromzähler - Edit Script.png

                                  a603cf12-f2bf-4e3c-adc2-12ee361cd018-grafik.png

                                  T 1 Reply Last reply Reply Quote 0
                                  • W
                                    Wilfried_2 @TT-Tom last edited by

                                    @tt-tom

                                    hier noch die Datenpunkte:

                                    c02c406e-50ad-41aa-820e-bc6dae76fe07-grafik.png

                                    1 Reply Last reply Reply Quote 0
                                    • T
                                      TT-Tom @Wilfried_2 last edited by

                                      @wilfried_2 sagte in IR Lesekopf/NodeMCU per MQTT einbinden [gelöst ...]:

                                      @tt-tom
                                      Hallo Tom,
                                      Ja der Zähler ist per PIN freigeschaltet. Aber die Werte für L1,L2,L3 werden nicht freigegeben. Ich habe die entsprechenden Zeilen im Script gelöcht.

                                      Um mehr Daten zu bekommen, musst du eventuell noch die Info auf „on“ setzen. Hast du eine Beschreibung zur Hand vom Zähler, dann suche mal nach erweiterter Datensatz oder so.

                                      3e7d669c-2ac8-48cb-ab01-07138fc0705b-grafik.png

                                      Damit das sauber aussieht schreibe bei Topic: Stromzähler und bei Full Topic: %topic%/%prefix%/ rein.

                                      Danach musst du im Script den Datenpunkt nochmal anpassen.

                                      Kannst du mal in Tasmota in der Konsole „Sensor53 d1“ starten und die Ausgabe posten, ich möchte mal die Daten sehen die der Zähler ausspuckt.

                                      W 2 Replies Last reply Reply Quote 0
                                      • W
                                        Wilfried_2 @TT-Tom last edited by

                                        @tt-tom
                                        Moin Tom,
                                        Das ist was der Zähler ausgibt.

                                        09:55:36.670 : 77 07 81 81 c7 82 05 ff 01 01 01 01 83 02 da 3d 3d 6b c3 b5 f5 a2 b9 de 94 5a c4 8e b6 de c4 b0 ea 7c 73 74 ff a1 2a 52 
                                        09:55:36.673 : 77 01 0b 09 01 49 53 4b 00 04 84 fb 20 07 01 00 62 0a ff ff 72 62 01 65 04 c0 ce a6 7a 
                                        09:55:36.719 : 77 07 81 81 c7 82 03 ff 01 01 01 01 04 49 53 4b 01 
                                        09:55:36.722 : 77 07 01 00 00 00 09 ff 01 01 01 01 0b 09 01 49 53 4b 00 04 84 fb 20 01 
                                        09:55:36.769 : 77 07 01 00 01 08 00 ff 65 00 01 01 82 01 62 1e 52 ff 59 00 00 00 00 04 8d ba a6 01 
                                        09:55:36.771 : 77 07 01 00 01 08 01 ff 01 01 62 1e 52 ff 59 00 00 00 00 04 8d ba a6 01 
                                        09:55:36.819 : 77 07 01 00 01 08 02 ff 01 01 62 1e 52 ff 59 00 00 00 00 00 00 00 00 01 
                                        09:55:36.821 : 77 07 01 00 02 08 00 ff 01 01 62 1e 52 ff 59 00 00 00 00 00 00 00 00 01 
                                        09:55:36.869 : 77 07 01 00 02 08 01 ff 01 01 62 1e 52 ff 59 00 00 00 00 00 00 00 00 01 
                                        09:55:36.872 : 77 07 01 00 02 08 02 ff 01 01 62 1e 52 ff 59 00 00 00 00 00 00 00 00 01 
                                        09:55:36.919 : 77 07 01 00 10 07 00 ff 01 01 62 1b 52 00 55 00 00 00 a7 01 
                                        
                                        T 1 Reply Last reply Reply Quote 0
                                        • T
                                          TT-Tom @Wilfried_2 last edited by

                                          @wilfried_2

                                          Hallo hier mal ein Link, damit kannst du sehen was die Ausgabe bedeutet in Klartext. gleichzeitig bekommst du auch ein Vorschlag für das Script in Tasmota.

                                          SML Decoder

                                          hast du dein Topic angepasst?

                                          W 2 Replies Last reply Reply Quote 0
                                          • W
                                            Wilfried_2 @TT-Tom last edited by

                                            @tt-tom
                                            Was ich auch nicht so richtig verstehe ist, dass die Gesamtleistung nur einmal entsprechend des eingestellten Zeitintervalls ausgegeben wird die momentale Leistung alle paar Sekunden.
                                            Mein Zähler speichert auch Werte für 1Tag, 7Tage, u.s.w. die ich auch am Zähler über ein blaue mechn. Taste abrufen kann aber übertragen werden diese Daten offensichtlicht nicht.
                                            cf28c5e8-c392-4e8e-abaf-a29e7e8bf9d2-grafik.png

                                            In der Bedienungsanleitung finde ich auch keinen Hinweis dafür ob oder wie man diese Funktion einschalten kann.

                                            Gruß Wilfried

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            501
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            79
                                            4076
                                            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