Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Möglichkeit mit raspberry Ein- u. Ausgänge schalten ?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Möglichkeit mit raspberry Ein- u. Ausgänge schalten ?

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

      Hallo,

      tolles Projekt der iobroker. Habe mir auch mal Openhub angesehen, dcoh die Bedienung beim iobroker gefällt mir deutlich besser.

      Bin noch ganz am Anfang, habe aber den iobroker auf einem raspberry am laufen.

      Ein paar Fragen an die Experten:

      • würde ich gerne zum Testen einfach ein paar Ein und Ausgänge über den raspberry schalten bzw. abfragen.

      Geht das irgendwie? einen Adapter habe ich leider dafür nicht gefunden.

      • Oder gibt es einfache andere Hardware mit der man das machen kann.

      • Ich habe noch alte Heizungsregler von ELV Typ: FHT80B-2 kann ich die auch noch über iobroker ansteuern

      Als Idee wäre vielleicht zukünftig noch ein Adapter für die Fritzbox ganz interesant.

      Dank schon mal im voraus

      schrader

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

        Es könnte über node-red gehen.

        Da sind raspi nodes dabei.

        Gruß

        Rainer

        Gesendet von meinem LIFETAB_S785X mit Tapatalk

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

          Hallo schrader

          willkommen im Forum.

          wie Homoran bereits geschrieben hat ist es mit Node-RED möglich.

          Ich selber bin noch nicht so weit, dass ich an den GPIOs etwas angeschlossen habe.

          315_node-red_gpio.png

          Für die Einarbeitung in Node-RED gibt es hier auch ein paar Beispiele.

          Gruß

          derAuge

          1 Reply Last reply Reply Quote 0
          • M
            mimquadrat last edited by

            ich habe genau zu diesem Problem eine Odyssee hinter mir!

            Steffen konnte mir dann helfen (die Götter verneigen sich vor ihm!).

            auf dem Raspi liegt ein python script dass ich mit einem java script

            ! createState('startPythonhoch');
            ! on({id: "javascript.0.startPythonhoch"}, function (obj) {
            ! var python = require('child_process').spawn('python', ["/opt/hoch.py"]);
            ! python.on('close', function(code){
            ! if (code !== 0) {
            ! log('Error: ' + code);
            ! } else {
            ! log('OK');
            ! }
            ! });
            ! });
            gestartet werden kann! funktioniert einwandfrei!

            Einfache Sachen würde ich mit Node-Red machen

            1 Reply Last reply Reply Quote 0
            • S
              schrader last edited by

              ` > ich habe genau zu diesem Problem eine Odyssee hinter mir!

              Steffen konnte mir dann helfen (die Götter verneigen sich vor ihm!).

              auf dem Raspi liegt ein python script dass ich mit einem java script `

              Hallo mimquadrat,

              bin leider nicht so deer Experte, kannst Du mir noch ein paar Infos dazu geben wie Du das gennau damit gelößt hast.

              Gruß

              schrader

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

                @mimquadrat:

                ich habe genau zu diesem Problem eine Odyssee hinter mir!

                Steffen konnte mir dann helfen (die Götter verneigen sich vor ihm!).

                auf dem Raspi liegt ein python script dass ich mit einem java script

                ! createState('startPythonhoch');
                ! on({id: "javascript.0.startPythonhoch"}, function (obj) {
                ! var python = require('child_process').spawn('python', ["/opt/hoch.py"]);
                ! python.on('close', function(code){
                ! if (code !== 0) {
                ! log('Error: ' + code);
                ! } else {
                ! log('OK');
                ! }
                ! });
                ! });
                gestartet werden kann! funktioniert einwandfrei!

                Einfache Sachen würde ich mit Node-Red machen `
                Aber warum python?? Man kann doch direkt aus JS schalten.

                In der letzen Version von iobroker.javascirpt das NPM-Modul "pi-gpio" einzuschalten und dann mit dem Skript:

                var gpio = require("pi-gpio");
                
                gpio.open(16, "output", function(err) {     // Open pin 16 for output 
                    gpio.write(16, 1, function() {          // Set pin 16 high (1) 
                        gpio.close(16);                     // Close pin 16 
                    });
                });
                
                

                GPIO Schalten.

                1 Reply Last reply Reply Quote 0
                • M
                  mimquadrat last edited by

                  bluefox hat natürlich recht, für einfaches an und ausschalten ist java gut.

                  Aber für komplexere Sachen (zB einen Schrittmotor steuern) brauche ich Vorlagen aus Tutorials (youtube zb).

                  Diese Tutorials sind meistens in python. Also meine depperl-Vorgehensweise in kurz.

                  1. Ein Python script raussuchen (aus nem Tutorial zB)

                  2. Über SSH dieses Skript testen

                  sollte dann funktionieren

                  jetzt müssen wir das python script über java ausführbar machen

                  3. Den java adapter in iobroker installieren

                  4. ein neues script anlegen mit dem Inhalt von mir oben (der Ort an dem das python script liegen muss is da auch drin)

                  5. Ein neuer Datenpunkt wird jetzt angelegt

                  6. Jetzt den java adapter neu starten und das script zB über iobroker.vis und einem button starten

                  wenn du nicht klar kommen solltest PN. Wenn dir ioBroker gefällt spenden.

                  1 Reply Last reply Reply Quote 0
                  • S
                    schrader last edited by

                    Dank an alle, werde mir das mal alles etwas genauer ansehen.
                    ` > Es könnte über node-red gehen.

                    Da sind raspi nodes dabei. `
                    Das scheint mir für einen Anfänger noch das Einfachste zu sein.

                    Weiß jemand, ob man bei den Nodes auch noch die IP Adresse mit angeben kann, dann bestünde ja die Möglichkeit verschiedene raspberry in einem Netz zu adressieren.

                    ` > 1. Ein Python script raussuchen (aus nem Tutorial zB)

                    2. Über SSH dieses Skript testen

                    sollte dann funktionieren

                    jetzt müssen wir das python script über java ausführbar machen

                    3. Den java adapter in iobroker installieren

                    4. ein neues script anlegen mit dem Inhalt von mir oben (der Ort an dem das python script liegen muss is da auch drin)

                    5. Ein neuer Datenpunkt wird jetzt angelegt

                    6. Jetzt den java adapter neu starten und das script zB über iobroker.vis und einem button starten

                    wenn du nicht klar kommen solltest PN. Wenn dir ioBroker gefällt spenden. `
                    Da muss ich glaube gut ausgeschlafen haben. Habe mal nach dem python script gesucht, aber auf die schnelle nichts gefunden

                    ` > In der letzen Version von iobroker.javascirpt das NPM-Modul "pi-gpio" einzuschalten und dann mit dem Skript:

                    Code: Alles auswählen

                    var gpio = require("pi-gpio");

                    gpio.open(16, "output", function(err) { // Open pin 16 for output

                    gpio.write(16, 1, function() { // Set pin 16 high (1)

                    gpio.close(16); // Close pin 16

                    });

                    }); `

                    Wie kann ich denn das NPM-Modul "pi-gpio" einschalten?

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

                      Hier 48_javascript.jpg

                      1 Reply Last reply Reply Quote 0
                      • S
                        schrader last edited by

                        Danke

                        schrader

                        1 Reply Last reply Reply Quote 0
                        • K
                          krissi last edited by

                          Hi, ist zwar schon etwas älter aber bist Du oder jemand Anderes da schon weiter? :?:

                          > Weiß jemand, ob man bei den Nodes auch noch die IP Adresse mit angeben kann, dann bestünde ja die Möglichkeit verschiedene raspberry in einem Netz zu adressieren.

                          Die Raspi Nodes für node-red kann ich auch irgendwie nicht finden. Kann auch sein das ich im Moment mal wieder den Wald vor lauter Bäumen nicht sehe. :shock:

                          Danke und Gruß

                          1 Reply Last reply Reply Quote 0
                          • K
                            krissi last edited by

                            Keiner eine Idee oder Lösung?

                            Konkret habe ich an einem Raspi im Netz einen Funksender angeschlossen mit dem ich Funksteckdosen schalte. Läuft im Moment ganz ok über http. wenn man das über iobroker anders lösen kann wäre das klasse. vielleicht mit node-red auf dem pi und das dann irgendwie fernsteuern. Ich habe da absolut keinen Ansatz. Vielleicht hat das ja jemand schon so am laufen.

                            Gruß

                            1 Reply Last reply Reply Quote 0
                            • N
                              nobody last edited by

                              Hallo krissi,

                              wie im Verlauf zu sehen gibt es eine ganze Reihe von Möglichkeiten, die gpio des Raspberry anzusprechen:

                              • Über Node-Red mit diversen spezifischen Nodes für einfaches Lesen und Schalten der pins, speziellen Nodes für Temperatur, usw. Da gibt es ziemlich viele verschiedene

                              • Über das exec-Kommando zum Ausführen eines Kommandos wie z.B. das WiringPi gpio

                              • Über einen entsprechenden node.js Node aus dem JavaScript-Adapter heraus

                                usw.

                              Viele Wege führen nach Rom. Welche der Alternativen man verwenden möchte liegt im Wesentlichen an seinem Background und wie man seine restliche Steuerung umsetzen möchte.

                              In node-red sind die Nodes für einfaches Schalten bereits dabei und diese sollen ganz unten links im Bereich Raspberry_Pi angezeigt werden. Falls nicht, kann diese aber nachinstallieren, indem man den Namen des RPM-Pakets in den Adaptereinstellungen für Node-Red in ioBroker einträgt.

                              Diese wären z.B.

                              • Normale gpio-Funktionen: http://flows.nodered.org/node/node-red-contrib-gpio

                              • Temperaturen mit 1-Wire Sensoren http://flows.nodered.org/node/node-red-contrib-1wire

                              • Temperaturen über DHT11/22 http://flows.nodered.org/node/node-red- … dht-sensor

                              Beim Schalten von Steckdosen kommt es darauf an, was das für Steckdosen sind wie diese angebunden sind. Ich gehe mal davon aus, dass es sich um die ganz normalen Baumarkt-Steckdosen handelt, die mittels 433 MHz geschaltet werden.

                              Wenn da ein Schaltmodul existiert, welches mittels HTTP/S erreichbar ist, kann man hier auch wieder über alle oben genannten Wege einen HTTP GET/PUT-Request an die entsprechende Adresse schicken. In Node-Red geht das mittels http request-Node.

                              Wenn du die Steckdosen direkt vom Pi aus schalten möchtest, brauchst du ein entsprechendes 433MHz Sendemodul, welches mit den gpio-Pins verbunden wird. Dieses kann dann über die Kommandoschnittstelle z.b.

                              • über das send-Programm von rcswitch angesprochen werden

                              • mit den entsprechenden node.js-Node aus Javascript heraus https://github.com/marvinroger/node-rcswitch

                              • mit Node-Red mit dem rcswitch2-Node https://github.com/nobodyMO/node-red-contrib-rcswitch2

                              Das ansprechen der Hardware geht beim Pi jedoch immer nur lokal. D.h. wenn du mehrere Pi haben willst, die jeweils schalten können, muss auf jedem der Pi eine Anwendung laufen, die die Kommandos lokal aufruft und das Ergebnis zurückliefert. Auch hier gibt es wieder tausende Lösungsmöglichkeiten, die von den sonstigen Anforderungen, den persönlichen Vorlieben und den Sicherheitsanforderungen abhängen. Spontan einfallen tun mir hier:

                              • Multi-Host-Installation von ioBroker

                              • Webservice-Lösung mit Apache und PHP

                              • Einfacher Webservice direkt mit node.js

                              • Webservice über node-red

                              • Remote-Shell mittels SSH

                              Lg

                              Markus

                              1 Reply Last reply Reply Quote 0
                              • K
                                krissi last edited by

                                Hi Markus

                                Danke erst einmal für deine ausführliche Antwort! 🙂

                                Noch mal zum besseren Verständnis:

                                Meine Baumarktfunksteckdosen funktionieren per http und WiringPi schon. Ich kann die mit der Fernbedienung oder mit vis schalten (Programm auf der lxccu / Banana). Ich hab nur manchmal Aussetzer. Dann starte ich den daemon auf dem Pi neu und dann geht es wieder. Warum auch immer! Die Aussetzer sind natürlich immer dann wenn meine Frau das Licht schalten möchte!!! 😉

                                Jetzt hatte ich den Gedanken das ich auf dem Pi Node-Red installiere und das dann irgendwie einfacher und stabiler steuern kann. Wäre also dein Vorschlag "Node-Red mit dem rcswitch2-Node" das was ich auf dem Pi möchte. Die Frage ist dann nur wie ich das dann von der ccu aus ansprechen muss. Ich mach mich da mal am WE ran. 🙂

                                Gruß,

                                Andre

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

                                Support us

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

                                943
                                Online

                                31.9k
                                Users

                                80.2k
                                Topics

                                1.3m
                                Posts

                                7
                                14
                                7910
                                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