Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. OWL Intuition mit Node-RED einlesen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    OWL Intuition mit Node-RED einlesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      Ritschi last edited by

      Hallo

      Ich habe den OWL Adapter auch in ccu.io eingebunden gehabt.

      Nun habe ich mich auch getraut auf ioBroker umzusteigen.

      Das Problem ist, dass ich bei diesem Thread als Hobbybastler nur Bahnhof verstehe.

      Gibt es für ioBroker nicht einen Adapter den man einfach zufügen kann?

      Gibt es irgendwo eine Schritt für Schritt Anleitung wie man solche Sachen in ioBroker macht?

      Danke & Gruss

      Ritschi

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

        Hallo Ritschi und Willkommen im Forum.

        Leider gibt es noch keinen OneWire-Adapter für ioBroker.

        Der node-red Adapter kann in vielen Fällen aber anstelle eines Adapters genutzt werden.

        So hat ruhr70 auch erst einen sehr komplexen Flow für die Fritzbox gebaut, bevor das in einem Adapter umgesetzt wurde.

        Leider habe ich keine OneWire-Hardware und kann ansonsten nichts dazu sagen.

        Gruß

        Rainer

        1 Reply Last reply Reply Quote 0
        • P
          pix last edited by

          Hallo Ritschi,

          der OWL-Stream kann mit dem UDP Node in Node-Red abgefangen werden.

          Du importierst http://forum.iobroker.org/posting.php?mode=reply&f=32&t=606&sid=080f0385faa7151c41c0078447252f12#pr4943 in Node Red. Die nötigen Objekte in ioBroker werden automatisch erzeugt.Unter Objekte/nodered/ findest du dann die Daten.

          @Rainer: OWL ist nicht gleich OneWire. Das ist http://theowl.com/index.php/energy-monitors/ac/network-owl/

          Gruß

          Pix

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

            @pix:

            @Rainer: OWL ist nicht gleich OneWire. Das ist OWL `

            Danke pix - hätte sogar ich wissen müssen.

            und einen OWFS-Adapter gibt es wohl, allerdings in der Version 0.0.2!

            Ist heut wohl nicht mein Tag

            Gruß

            Rainer

            1 Reply Last reply Reply Quote 0
            • R
              Ritschi last edited by

              Hi Pix

              Super, danke. wusste nicht, dass das oben ein Code für Flow ist.

              Habe nun importiert und die Daten werden auch angezeigt.
              620_bildschirmfoto_2015-08-02_um_15.08.09.png

              Nun müsste ich doch den Verbrauch P1-3 und Stromverbrauch aktuell und heute irgendwo sehen?

              Gruss

              Ritschi

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

                Hast du die Netzwerkdaten angepasst und rechts oben auf deploy geklickt?

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • R
                  Ritschi last edited by

                  Ja, auf deploy habe ich geklickt, aber die Netzwerkdaten nicht angepasst.

                  Was und wo muss denn alles angepasst werden?

                  Habe folgende Error im Log:

                  2 Aug 16:57:00 - [error] [function:Daten extrahieren] TypeError: Cannot read property '/r> of undefined
                  

                  Gruss

                  Ritschi

                  1 Reply Last reply Reply Quote 0
                  • P
                    pix last edited by

                    Hallo Ritschi,

                    @Ritschi:

                    Nun müsste ich doch den Verbrauch P1-3 und Stromverbrauch aktuell und heute irgendwo sehen? `

                    Die siehst du unter Objekte/node-red.0/owl/electricity

                    Es kann etwas dauern (max 5min), bis die Übertragung vom Network OWL startet. Den Zyklus kann man nicht beeinflussen, node-red bleibt passiv und fängt nur die Daten ab.

                    Falls nicht, check mal im Flow den blauen ioBroker Ausgabe Button. Der Punkt AutoCreate sollte auf create states if not exist stehen.

                    Zu Kontrolle der Ausgabe kannst du bei den grünen Debug-Nodes rechts das kleine Viereck anklicken und damit die Ausgabe im Debug-Fenster ein/ausschalten.

                    Probier mal aus.

                    Gruß

                    Pix

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

                      Hallo pix,

                      kannst du da etwas zu sagen?

                      @Ritschi:

                      aber die Netzwerkdaten nicht angepasst.

                      Was und wo muss denn alles angepasst werden? `

                      Gruß

                      Rainer

                      1 Reply Last reply Reply Quote 0
                      • P
                        pix last edited by

                        Hallo Rainer,

                        es muss nichts angepasst. Werden. Der Network OWL sendet im lokalen Netzwerk immer auf der gleichen Adresse.
                        @pix:

                        Zuerst wird der UDP Multicast auf IP 224.192.31.19 Port 22600 (immer gleich) eingelesen. `
                        Es braucht keinen Login o.ä., die Daten kommen, ob man will oder nicht. 😄

                        Gruß

                        Pix

                        1 Reply Last reply Reply Quote 0
                        • R
                          Ritschi last edited by

                          @pix:

                          Hallo Ritschi,

                          @Ritschi:

                          Nun müsste ich doch den Verbrauch P1-3 und Stromverbrauch aktuell und heute irgendwo sehen? `

                          Die siehst du unter Objekte/node-red.0/owl/electricity

                          Es kann etwas dauern (max 5min), bis die Übertragung vom Network OWL startet. Den Zyklus kann man nicht beeinflussen, node-red bleibt passiv und fängt nur die Daten ab.

                          Falls nicht, check mal im Flow den blauen ioBroker Ausgabe Button. Der Punkt AutoCreate sollte auf create states if not exist stehen.

                          Zu Kontrolle der Ausgabe kannst du bei den grünen Debug-Nodes rechts das kleine Viereck anklicken und damit die Ausgabe im Debug-Fenster ein/ausschalten.

                          Probier mal aus.

                          Gruß

                          Pix `

                          Hi Pix

                          Super Sache, das Problem lag daran dass anstelle "create states if non exist" folgendes angewählt war "Ignore messages for non existing states"

                          Als ich das geändert hatte, tauchte innerhalb von 5 Minunten der Ordner OWL mit dem Inhalt auf.

                          Herzlichen Dank allen Helfern!

                          Gruss

                          Ritschi
                          3428_ifttt_1.jpg
                          3428_ifttt_2.jpg
                          3428_ifttt_aus_iobroker.jpg

                          1 Reply Last reply Reply Quote 0
                          • R
                            Ritschi last edited by

                            So und nun schon die nächste Frage 😕

                            Gibt es eine Möglichkeit die Verbräuche in eine CCU2 Variable zu schreiben?

                            Zudem interessiert mich nur der Aktuelle Verbrauch aller Phasen und der Tagesverbrauch gesamt.

                            Gibt es da eine einfache Möglichkeit diese auch auszulesen?

                            Gruss

                            Ritschi

                            1 Reply Last reply Reply Quote 0
                            • R
                              Ritschi last edited by

                              Keine Ideen??

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

                                Hast du hm-rega installiert?

                                Dann kannst du einfach mit node ioBroker/output in so eine Variable schreiben.

                                1 Reply Last reply Reply Quote 0
                                • R
                                  Ritschi last edited by

                                  Ja, habe ich installiert.

                                  Kannst du mir ein Beispiel geben wie ich einen Kanal in eine HM Variable Schreiben kann?

                                  Ist es mit node auch möglich, die Kanäle 1 bis 3 aktuell und 1 bis 3 tag zusammen zu zählen, damit ich einen Gesamt-Stromverbrauch heute und aktuell in die HM Variablen schreiben kann?

                                  Gruss

                                  Ritschi

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

                                    @Ritschi:

                                    Ja, habe ich installiert.

                                    Kannst du mir ein Beispiel geben wie ich einen Kanal in eine HM Variable Schreiben kann? `

                                    Ich habe kein OWL, aber irgendwie so muss es gehen:

                                    [{"id":"d9e23d5e.261dc","type":"inject","name":"","topic":"","payload":"123","payloadType":"string","repeat":"","crontab":"","once":false,"x":398,"y":145,"z":"b19057e0.4e6fa8","wires":[["9bf53d20.640ac"]]},{"id":"9bf53d20.640ac","type":"ioBroker out","name":"Rolladen.Inaktive.Schlaffzimmer","topic":"hm-rega.0.12468","ack":"false","autoCreate":"false","x":621,"y":144,"z":"b19057e0.4e6fa8","wires":[]}]
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      pix last edited by

                                      Hallo Ritschi,

                                      ich habe mal den ganzen Flow erweitert. Der Node Daten extrahieren (OWL, orange in der Mitte) hat jetzt 12 Ausgänge. Ausgang 11 enthält die Summe alle Phasen aktuell, Ausgang 12 die Summe aller Phasen (Tageswerte).

                                      Nach Bluefox' Anleitung habe ich dir einen Ausgang zu Rega gebastelt. Ich hab ihn nicht getestet, da ich meine CCU nicht von node-red aus ansprechen will.
                                      261_bildschirmfoto_2015-08-06_um_00.24.34.jpg

                                      Also:
                                      <list type="decimal">4. die beiden Variablen in der Webui der CCU anlegen (falls nicht schon geschehen)

                                      1. Rega und am besten auch rpc in ioBroker Instanzen neu laden, damit die Datenpunkte in ioBroker Objekte erscheinen

                                      2. Diesen Flow in node-red über Clipboard einlesen (den alten löschen).

                                      >! ````
                                      [{"id":"aa6c7136.55939","type":"udp in","name":"Network OWL horchen","iface":"","port":"22600","ipv":"udp4","multicast":"true","group":"224.192.32.19","datatype":"utf8","x":104,"y":35,"z":"dd405887.22bfa8","wires":[["3fd15b2d.c02ea4"]]},{"id":"ff460116.00ba","type":"debug","name":"OWL Ausgabe (original XML)","active":false,"console":"false","complete":"payload","x":410,"y":33,"z":"dd405887.22bfa8","wires":[]},{"id":"3fd15b2d.c02ea4","type":"switch","name":"Prüfen","property":"payload","rules":[{"t":"nnull"}],"checkall":"true","outputs":1,"x":173,"y":118,"z":"dd405887.22bfa8","wires":[["ff460116.00ba","fdce747e.023188"]]},{"id":"f54f19ff.0ab0e8","type":"function","name":"Daten extrahieren (OWL)","func":"var topic_baum = 'node-red.0.owl.electricity.' + msg.payload.electricity.$.id;\n\nmsg1 = {};\nmsg1.payload = msg.payload.electricity.$.id; // device id\nmsg1.topic = topic_baum + '.id';\n\nmsg2 = {};\nmsg2.payload = msg.payload.electricity.signal[0].$.rssi;\nmsg2.topic = topic_baum + '.rssi';\n\nmsg3 = {};\nmsg3.payload = msg.payload.electricity.battery[0].$.level;\nmsg3.topic = topic_baum + '.battery';\n\nmsg4 = {};\nmsg4.payload = msg.payload.electricity.chan[0].curr[0]._;\nmsg4.topic = topic_baum + '.kanal1.aktuell';\n\nmsg5 = {};\nmsg5.payload = msg.payload.electricity.chan[0].day[0]._;\nmsg5.topic = topic_baum + '.kanal1.tag';\n\nmsg6 = {};\nmsg6.payload = msg.payload.electricity.chan[1].curr[0]._;\nmsg6.topic = topic_baum + '.kanal2.aktuell';\n\nmsg7 = {};\nmsg7.payload = msg.payload.electricity.chan[1].day[0]._;\nmsg7.topic = topic_baum + '.kanal2.tag';\n\nmsg8 = {};\nmsg8.payload = msg.payload.electricity.chan[2].curr[0]._;\nmsg8.topic = topic_baum + '.kanal3.aktuell';\n\nmsg9 = {};\nmsg9.payload = msg.payload.electricity.chan[2].day[0]._;\nmsg9.topic = topic_baum + '.kanal3.tag';\n\nmsg10 = {};\nmsg10.payload = msg.payload.electricity.signal[0].$.lqi;\nmsg10.topic = topic_baum + '.lqi';\n\n// Summe Aktuell CH1-3\nmsg11 = {};\nmsg11.payload = parseInt(msg4.payload,10) + parseInt(msg6.payload,10) + parseInt(msg8.payload,10);\n\n// Summe Tag CH1-3\nmsg12 = {};\nmsg12.payload = parseInt(msg5.payload,10) + parseInt(msg7.payload,10) + parseInt(msg9.payload,10);\n\nreturn [msg1,msg2,msg3,msg4,msg5,msg6,msg7,msg8,msg9,msg10,msg11,msg12];","outputs":"12","noerr":0,"x":523,"y":249,"z":"dd405887.22bfa8","wires":[["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],["22c22d1b.dd3dd2","7d2504bc.82dafc"],[],["236ebc5e.dc9144","a7b6cd.ff58493"],["236ebc5e.dc9144","15927b0f.ea6d85"]]},{"id":"22c22d1b.dd3dd2","type":"debug","name":"Kontrollausgabe nach Funktion","active":false,"console":"false","complete":"payload","x":901,"y":161,"z":"dd405887.22bfa8","wires":[]},{"id":"60cea4f6.9f315c","type":"debug","name":"Ausgabe nach XML Baustein","active":false,"console":"false","complete":"payload","x":542,"y":75,"z":"dd405887.22bfa8","wires":[]},{"id":"fdce747e.023188","type":"xml","name":"","attr":"$","chr":"_","x":322,"y":171,"z":"dd405887.22bfa8","wires":[["60cea4f6.9f315c","f54f19ff.0ab0e8"]]},{"id":"7d2504bc.82dafc","type":"ioBroker out","name":"ioBroker Ausgabe","topic":"","ack":"false","autoCreate":"true","x":860,"y":272,"z":"dd405887.22bfa8","wires":[]},{"id":"29b9f2d3.d6460e","type":"comment","name":"OWL Electricity","info":"10.05.2015\nvon pix\n\n\nDieser FLow ist für die Network OWL Electricity Geräte erstellt worden.\n\nEs lassen sich mehrere Network OWLs anschließen, da eine Baumstruktur über die ID aufgelöst wird.\n\nGeräte anderer Gewerke (Heizung, Wetter) müssen noch eingepflegt werden.","x":131,"y":185,"z":"dd405887.22bfa8","wires":[]},{"id":"236ebc5e.dc9144","type":"debug","name":"Ausgabe Summen (Aktuell & Tag)","active":true,"console":"false","complete":"payload","x":896,"y":485,"z":"dd405887.22bfa8","wires":[]},{"id":"a7b6cd.ff58493","type":"ioBroker out","name":"Name Summe Aktuell (topic anpassen)","topic":"hm-rega.0.12345678","ack":"false","autoCreate":"false","x":941,"y":392,"z":"dd405887.22bfa8","wires":[]},{"id":"15927b0f.ea6d85","type":"ioBroker out","name":"Name Summe Tag (topic anpassen)","topic":"hm-rega.0.12345678","ack":"false","autoCreate":"false","x":935,"y":438,"z":"dd405887.22bfa8","wires":[]}]
                                      ````Ich habe die Strings einfach mit parseInt in Zahlen gewandelt. Das ging erstmal am schnellsten. Wenn dir das zu ungenau ist, kann man das noch ändern.
                                      
                                      1. Den Flow editieren (siehe oben): Die Datenpunkte deiner CCU-Variablen findest du unter Objekte im Admin.
                                        261_bildschirmfoto_2015-08-06_um_00.26.42.jpg Du musst die beiden blauen Nodes in Node-Red unten rechts noch anpassen. Dazu musst du die Rega Adressen der CCU Variablen für Summe aktuell und Summe Tag dort unter Topic eintragen.
                                        261_bildschirmfoto_2015-08-06_um_00.25.11.jpg

                                      2. Deploy drücken und warten, bis das Network OWL das nächste mal sendet.
                                        Wird schon klappen! :lol:

                                      Gruß,

                                      Pix

                                      1 Reply Last reply Reply Quote 0
                                      • R
                                        Ritschi last edited by

                                        Hallo Pix

                                        Herzlichen Dank, es funktioniert!!
                                        620_variable.jpg

                                        Was mich allerdings ein bisschen irritiert:
                                        > Nach Bluefox' Anleitung habe ich dir einen Ausgang zu Rega gebastelt. Ich hab ihn nicht getestet, da ich meine CCU nicht von node-red aus ansprechen will.
                                        Gibt es da Gründe die dagegen sprechen betr. Sicherheit o.ä.?

                                        Gruss

                                        Ritschi

                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          pix last edited by

                                          Nee, keine Angst. Meine ccu1 ist nicht die stabilste. Ich lasse lieber iobroker die Arbeit machen 😄

                                          Gesendet von meinem iPhone mit Tapatalk

                                          1 Reply Last reply Reply Quote 0
                                          • R
                                            rookie last edited by

                                            Hallo zusammen,

                                            vielen Dank bin aufgrund dieses Post nun auch auf von CCU.IO uf ioBroker umgestiegen.

                                            Habe den Flow von Pix (BeitragVerfasst: 10.05.2015, 14:32) , also ohne den Ausgang auf die CCU noch erweitert, damit mir die Tagessummen zu Monatswerten zusammenaddiert werden.

                                            ! [{"id":"d7bdbc70.1b11d","type":"function","name":"Daten extrahieren","func":"var topic_baum = 'node-red.0.owl.electricity.' + msg.payload.electricity.$.id ;\n\nmsg1 = {};\nmsg1.payload = msg.payload.electricity.$.id; // device id\nmsg1.topic = topic_baum + '.id';\n\nmsg2 = {};\nmsg2.payload = msg.payload.electricity.signal[0].$.rssi;\nmsg2.topic = topic_baum + '.rssi';\n\nmsg3 = {};\nmsg3.payload = msg.payload.electricity.battery[0].$.level;\nmsg3.topic = topic_baum + '.battery';\n\nmsg4 = {};\nmsg4.payload = msg.payload.electricity.chan[0].curr[0].;\nmsg4.topic = topic_baum + '.kanal1.aktuell';\n\nmsg5 = {};\nmsg5.payload = msg.payload.electricity.chan[0].day[0].;\nmsg5.topic = topic_baum + '.kanal1.tag';\n\nmsg6 = {};\nmsg6.payload = msg.payload.electricity.chan[1].curr[0].;\nmsg6.topic = topic_baum + '.kanal2.aktuell';\n\nmsg7 = {};\nmsg7.payload = msg.payload.electricity.chan[1].day[0].;\nmsg7.topic = topic_baum + '.kanal2.tag';\n\nmsg8 = {};\nmsg8.payload = msg.payload.electricity.chan[2].curr[0].;\nmsg8.topic = topic_baum + '.kanal3.aktuell';\n\nmsg9 = {};\nmsg9.payload = msg.payload.electricity.chan[2].day[0].;\nmsg9.topic = topic_baum + '.kanal3.tag';\n\nmsg10 = {};\nmsg10.payload = msg.payload.electricity.signal[0].$.lqi;\nmsg10.topic = topic_baum + '.lqi';\n\n// monatswerte setzen/zurücksetzen\nvar now = new Date(); \nvar tag = now.getDate();\nvar hour = now.getHours();\nvar minute = now.getMinutes()\nvar oldmonat1 = Number(context.global.oldMonat1);\nvar oldmonat2 = Number(context.global.oldMonat2);\nvar oldmonat3 = Number(context.global.oldMonat3);\nvar aktday1 = Number(msg.payload.electricity.chan[0].day[0].);\nvar aktday2 = Number(msg.payload.electricity.chan[1].day[0].);\nvar aktday3 = Number(msg.payload.electricity.chan[2].day[0]._);\n\nmsg11 = {};\nmsg12 = {};\nmsg13 = {};\n\nif (tag == 1 && hour == 1 && minute == 1){\n msg11.payload = '0.00';\n msg12.payload = '0.00';\n msg13.payload = '0.00';\n }else if (hour == 23 && minute == 59){\n msg11.payload = oldmonat1 + aktday1;\n msg12.payload = oldmonat2 + aktday2;\n msg13.payload = oldmonat3 + aktday3;\n }else {\n }\n \n msg11.topic = topic_baum + '.kanal1.monat';\n msg12.topic = topic_baum + '.kanal2.monat';\n msg13.topic = topic_baum + '.kanal3.monat';\n\nreturn [msg1,msg2,msg3,msg4,msg5,msg6,msg7,msg8,msg9,msg10,msg11,msg12,msg13];","outputs":"13","noerr":0,"x":547,"y":278,"z":"2319150e.123c3e","wires":[["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"],["bb14dbce.36d4d8","ee4ea974.9609d8"],["bb14dbce.36d4d8","ee4ea974.9609d8"],["bb14dbce.36d4d8","ee4ea974.9609d8"],["ee4ea974.9609d8","bb14dbce.36d4d8"]]}]

                                            Ist vielleicht nicht ideal umgesetzt, aber freue mich über Verbesserungsvorschläge.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            966
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            6
                                            30
                                            7323
                                            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