Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. 433 Mhz "Baumarkt Steckdosen" schalten - Kleines Beispiel

    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

    433 Mhz "Baumarkt Steckdosen" schalten - Kleines Beispiel

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

      der normale Befehl geht mit sudo?

      ansonsten zum testen einfach mal..

      sudo su - root
      

      dann

      php /dein/pfad/zur/php/datei.php hauscode ausgang zustand
      

      kann an die Berechtigungen liegen, wem gehört die php Datei und welche rechte sind gesetzt.

      1 Reply Last reply Reply Quote 0
      • D
        Dr.iller last edited by

        @Denwo:

        der normale Befehl geht mit sudo?

        kann an die Berechtigungen liegen, wem gehört die php Datei und welche rechte sind gesetzt. `

        Ja der normale Befehl mit Sudo klappt: sudo ~/raspberry/./send 11111 3 1

        Der php Datei habe ich nun volle Rechte gegeben chmod 777

        shell_exec leider auch noch ohne Erfolg.

        Ist hier ein PHP Spezi anwesend ? 🙂

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

          Hallo Dr.iller,

          ich hatte das auch. Nun habe ich die Lösung gefunden:

          zuerst habe ich den Pfad in der php Datei angepasst:

          Zeile 29: exec('sudo /home/pi/raspberry-remote/./send ' . $hauscode . ' ' . $ausgang . ' ' . $zustand);

          Anpassen der Rechte

          sudo visudo
          
          

          Folgende Zeilen hinzufügen:

          # Funksteckdosen
          www-data ALL=NOPASSWD: /home/pi/rcswitch-pi/send
          
          

          Danach lief es bei mir.

          1 Reply Last reply Reply Quote 0
          • T
            torstenh last edited by

            Hallo zusammen,

            ….es stimmt, es ist alles eine Frage der Rechte. Wenn der normal Befehl mit "sudo" funtioniert. Ich habe im Script die "Echo" Ausgabe eingebaut damit man schauen kann ob der Befehl ausgeführt wurde.

            Wenn die Rechte stimmen, schau mal wem die Datei gehört und passe es auch noch an, dann sollte es gehen

            Grüße,

            Torsten

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

              @torstenh:

              Hallo zusammen,

              ….es stimmt, es ist alles eine Frage der Rechte. Wenn der normal Befehl mit "sudo" funtioniert. Ich habe im Script die "Echo" Ausgabe eingebaut damit man schauen kann ob der Befehl ausgeführt wurde.

              Wenn die Rechte stimmen, schau mal wem die Datei gehört und passe es auch noch an, dann sollte es gehen

              Grüße,

              Torsten `

              Hallo Torsten,

              die Echo Ausgabe kam bei mir trotzdem. Nur geschaltet hat an der Stelle nichts.

              1 Reply Last reply Reply Quote 0
              • C
                Chauffeur last edited by

                Habe jetzt auch mal versucht, alles nach Anleitung (Link erster Post) einzurichten.

                Jetzt habe ich schonmal das Problem, dass ich einen Pine64 nutze und keinen Raspi. Darauf lässt sich wiringPi leider nicht installieren.

                Allerdings gibt es eine wiringPi-Pine64, mit dieser klappt es.

                Dann folgt raspberry-remote, scheinbar setzt diese aber wiringPi voraus und erkennt wiringPi-Pine64 nicht. Folgendes bekomme ich zu sehen:

                ubuntu@Pine64ubuntu:~/raspberry-remote$ make send
                g++ -Wall -lwiringPi   -c -o RCSwitch.o RCSwitch.cpp
                In file included from RCSwitch.cpp:27:0:
                RCSwitch.h:31:26: fatal error: wiringPi.h: No such file or directory
                compilation terminated.
                <builtin>: recipe for target 'RCSwitch.o' failed
                make: *** [RCSwitch.o] Error 1</builtin> 
                

                Alternativ habe ich pilight versucht, aber auch dies lässt sich nicht richtig installieren (die config.json z.B. ist vorhanden, aber der service lässt sich nicht starten, da nicht vorhanden).

                Hat jemand schonmal einen 433-Sender auf dem Pine64 zum laufen gebracht?

                1 Reply Last reply Reply Quote 0
                • C
                  Clausi821 last edited by

                  ​

                  Hallo mein Name ist Tobias und ich bin neu hier.

                  Seit kurzen interessiert es mich meine Wohnung per Handy und co. steuern zu können.

                  Erst mal reicht es mir die Lampen über Funksteckdosen zu steuern.

                  Möchte aber demnächst auch Heizung, Fernseher und co steuern.

                  Ich möchte alles über den Browser mit Hilfe von vis steuern

                  und mit dem iPhone mit der Home App (auch per Siri).

                  In iobroker habe ich HomeKit, yahka, vis, Web und JavaScript installier.

                  Mittlerweile kann ich über ein JavaScript in vis meine Lampe steuern. (dank der Anleitung hier im Forum)

                  Im iPhone erscheint der Knopf, wenn ich das JavaScript in yahka einrichte (hier habe ich auch das Script Lichtschalter_Dummy hinterlegt), aber wenn ich auf den Knopf drücke geht, die Lampe nicht an.

                  Komischerweise geht es Per Siri aber super hier kann ich die Lampe an und aus machen.

                  Den Fehler denke ich gefunden zu haben. Im log steht der richtige Befehl innerhalb von 0,1 Sekunden

                  zwei Mal drin wenn ich im iPhone Licht an oder aus anklicke. Per Siri oder vis steht der Befehl nur einmal drin.

                  Kann mir jemand sagen, wie ich das behebe?

                  Liebe Grüße Tobias
                  2860_img_2236.jpg

                  1 Reply Last reply Reply Quote 0
                  • Dutchman
                    Dutchman Developer Most Active Administrators last edited by

                    Poste mal dein Script 😉

                    –-----------------------

                    Send from mobile device

                    1 Reply Last reply Reply Quote 0
                    • C
                      Clausi821 last edited by

                      @Dutchman:

                      Poste mal dein Script 😉

                      –-----------------------

                      Send from mobile device `

                      Hier das Script danke für die schnelle Reaktion.
                      2860_foto.jpg

                      1 Reply Last reply Reply Quote 0
                      • Dutchman
                        Dutchman Developer Most Active Administrators last edited by

                        @Clausi821:

                        @Dutchman:

                        Poste mal dein Script 😉

                        –-----------------------

                        Send from mobile device `

                        Hier das Script danke für die schnelle Reaktion. `

                        hmm…. eigentlich sollte das commando stimmen und nicht 2 mal geschossen werden muessen.

                        Bei 433 MHZ ist es leider so das nicht immer alle befehle ankommen.

                        Du koenntest jetzt noch mit einen delay dasselbe command 0.1 sekunden nochmal schicken

                        Benutze dazu de block timeout (nicht interval !), setze diesen unter den jetzigen exec und kopieren deinen exec block darein (fuer beide)

                        das ist die logik

                        • variable geanedert

                        • check

                        • execute

                        • 0,1 sec spaeter execute nochmal

                        ~Dutch

                        1 Reply Last reply Reply Quote 0
                        • C
                          Clausi821 last edited by

                          @Dutchman:

                          hmm…. eigentlich sollte das commando stimmen und nicht 2 mal geschossen werden muessen.

                          Bei 433 MHZ ist es leider so das nicht immer alle befehle ankommen.

                          Du koenntest jetzt noch mit einen delay dasselbe command 0.1 sekunden nochmal schicken

                          Benutze dazu de block timeout (nicht interval !), setze diesen unter den jetzigen exec und kopieren deinen exec block darein (fuer beide)

                          das ist die logik

                          • variable geanedert

                          • check

                          • execute

                          • 0,1 sec spaeter execute nochmal

                          ~Dutch `

                          Ok danke werde ich nachher mal Probieren da ich nicht zuhause im Wlan bin und somit die Apple Home app nicht geht.

                          Hab leide noch keine Funktionierende VPN Verbindung.

                          Komisch ist das es bei Vis mit dem Script super geht per Siri auch nur wenn ich in der app den Knopf selber drücke und nicht Siri den Befehlt auslöst kommt es zu dieser Doppelten Übertragung.

                          Ich werde heute Abend berichten.

                          1 Reply Last reply Reply Quote 0
                          • Dutchman
                            Dutchman Developer Most Active Administrators last edited by

                            @Clausi821:

                            @Dutchman:

                            hmm…. eigentlich sollte das commando stimmen und nicht 2 mal geschossen werden muessen.

                            Bei 433 MHZ ist es leider so das nicht immer alle befehle ankommen.

                            Du koenntest jetzt noch mit einen delay dasselbe command 0.1 sekunden nochmal schicken

                            Benutze dazu de block timeout (nicht interval !), setze diesen unter den jetzigen exec und kopieren deinen exec block darein (fuer beide)

                            das ist die logik

                            • variable geanedert

                            • check

                            • execute

                            • 0,1 sec spaeter execute nochmal

                            ~Dutch `

                            Ok danke werde ich nachher mal Probieren da ich nicht zuhause im Wlan bin und somit die Apple Home app nicht geht.

                            Hab leide noch keine Funktionierende VPN Verbindung.

                            Komisch ist das es bei Vis mit dem Script super geht per Siri auch nur wenn ich in der app den Knopf selber drücke und nicht Siri den Befehlt auslöst kommt es zu dieser Doppelten Übertragung.

                            Ich werde heute Abend berichten. `

                            warte mal ich had da so ne vermutung, hast du auch history installiert ?

                            Meine vermutung: deine variable ist ein boolean, yahka schikt eine 1 oder 0, der wert wird 2 mal geupdated (0 und falsch oder 1 under true)

                            dadurch aenderd sich die variable 2 mal mit als folge 2 befehle.

                            das koennstest du abfangen durch in deinem if noch UND = 0 oder UND = 1 hinzu zu fuegen.

                            Mit history log koenntest du sehen was die variable macht, mir ist aufgefallen das yahka manchmal 0/1 und manchmal true/false benutzt.

                            ~Dutch

                            1 Reply Last reply Reply Quote 0
                            • Dutchman
                              Dutchman Developer Most Active Administrators last edited by

                              @Clausi821:

                              @Dutchman:

                              hmm…. eigentlich sollte das commando stimmen und nicht 2 mal geschossen werden muessen.

                              Bei 433 MHZ ist es leider so das nicht immer alle befehle ankommen.

                              Du koenntest jetzt noch mit einen delay dasselbe command 0.1 sekunden nochmal schicken

                              Benutze dazu de block timeout (nicht interval !), setze diesen unter den jetzigen exec und kopieren deinen exec block darein (fuer beide)

                              das ist die logik

                              • variable geanedert

                              • check

                              • execute

                              • 0,1 sec spaeter execute nochmal

                              ~Dutch `

                              Ok danke werde ich nachher mal Probieren da ich nicht zuhause im Wlan bin und somit die Apple Home app nicht geht.

                              Hab leide noch keine Funktionierende VPN Verbindung.

                              Komisch ist das es bei Vis mit dem Script super geht per Siri auch nur wenn ich in der app den Knopf selber drücke und nicht Siri den Befehlt auslöst kommt es zu dieser Doppelten Übertragung.

                              Ich werde heute Abend berichten. `

                              warte mal ich had da so ne vermutung, hast du auch history installiert ?

                              Meine vermutung: deine variable ist ein boolean, yahka schikt eine 1 oder 0, der wert wird 2 mal geupdated (0 und falsch oder 1 under true)

                              dadurch aenderd sich die variable 2 mal mit als folge 2 befehle.

                              das koennstest du abfangen durch in deinem if noch UND = 0 oder UND = 1 hinzu zu fuegen.

                              Mit history log koenntest du sehen was die variable macht, mir ist aufgefallen das yahka manchmal 0/1 und manchmal true/false benutzt.

                              ~Dutch

                              PS: du kannst die diese komplette IF auch sparen und 2 trigger machen, setze dazu "wurde geanedert" auf ist true.

                              Dan hast du 2 trigger die auf true oder falsch reagieren und ist die abfrage ueberflussig

                              1 Reply Last reply Reply Quote 0
                              • C
                                Clausi821 last edited by

                                @Dutchman:

                                warte mal ich had da so ne vermutung, hast du auch history installiert ?

                                Meine vermutung: deine variable ist ein boolean, yahka schikt eine 1 oder 0, der wert wird 2 mal geupdated (0 und falsch oder 1 under true)

                                dadurch aenderd sich die variable 2 mal mit als folge 2 befehle. `

                                History habe ich bisher nicht installiert werde ich dann aber mal machen.

                                boolean? noch nie gehört

                                @Dutchman:

                                das koennstest du abfangen durch in deinem if noch UND = 0 oder UND = 1 hinzu zu fuegen.

                                Mit history log koenntest du sehen was die variable macht, mir ist aufgefallen das yahka manchmal 0/1 und manchmal true/false benutzt.

                                ~Dutch `

                                Was du grade beschreibst könnte das sein was mir passiert ist von 30-40 versuchen haben 2-3 geklappt gehabt wo

                                ich per app die Steckdose schalten konnte.

                                @Dutchman:

                                PS: du kannst die diese komplette IF auch sparen und 2 trigger machen, setze dazu "wurde geanedert" auf ist true.

                                Dan hast du 2 trigger die auf true oder falsch reagieren und ist die abfrage ueberflussig `

                                Hier bin ich leider wieder Raus. Das verstehe ich noch nicht. IF? Trigger?

                                Habe grade mal per Temviewer zuhause das Script oben von "wurde geändert" auf "ist wahr" geändert dann geht die Lampe über Vis zwar an aber nicht aus. Wie sich das beim iPhone verhält weiß ich nicht.

                                1 Reply Last reply Reply Quote 0
                                • Dutchman
                                  Dutchman Developer Most Active Administrators last edited by

                                  @Clausi821:

                                  boolean? noch nie gehört `

                                  sorry fachjargon…

                                  Boolean = immer TRUE oder FALSE kan keinen anderen wert im speicher haben

                                  Number = zahlen

                                  String = buchstaben zahlen etc

                                  Du sagst also deinem speicher bist ein boolean, darfst nur TRUE oder FALSE sein

                                  @Clausi821:

                                  Was du grade beschreibst könnte das sein was mir passiert ist von 30-40 versuchen haben 2-3 geklappt gehabt wo

                                  ich per app die Steckdose schalten konnte. `

                                  Mja das kan viel ursachen haben, wie stuerst du deine 433 MHZ ?

                                  Ich habe nach viel basteln und aerger nen RFXCOM gekauft der funst bei mir 99,99%, von 100 schal befehlen fehlen mal 4 das geht.

                                  @Clausi821:

                                  Hier bin ich leider wieder Raus. Das verstehe ich noch nicht. IF? Trigger?

                                  Habe grade mal per Temviewer zuhause das Script oben von "wurde geändert" auf "ist wahr" geändert dann geht die Lampe über Vis zwar an aber nicht aus. Wie sich das beim iPhone verhält weiß ich nicht. `

                                  sorry ich erklaehre es zu komplex….

                                  Du hast jetzt in deinem block diese IF, das kan raus wen du den trigger auf IST wahr setzt.

                                  Das er jetzt nicht ausschaltet stimmt, dus musst ja nochmal genau den selber block machen miet IST unwahr.

                                  also 2 blocker mit trigger, einer war der andere unwar. Die commando blocker da rein, keine IF abfrage mehr (unnoetig macht ja der trigger.

                                  ~Dutch

                                  1 Reply Last reply Reply Quote 0
                                  • C
                                    Clausi821 last edited by

                                    @Dutchman:

                                    sorry fachjargon…

                                    Boolean = immer TRUE oder FALSE kan keinen anderen wert im speicher haben

                                    Number = zahlen

                                    String = buchstaben zahlen etc

                                    Du sagst also deinem speicher bist ein boolean, darfst nur TRUE oder FALSE sein `

                                    Danke fürs erklären

                                    @Dutchman:

                                    Mja das kan viel ursachen haben, wie stuerst du deine 433 MHZ ?

                                    Ich habe nach viel basteln und aerger nen RFXCOM gekauft der funst bei mir 99,99%, von 100 schal befehlen fehlen mal 4 das geht. `

                                    Da bei mir alles noch in den Startlöchern ist Hängt der 433 MHz sender direkt am PI 3 (GPIO 17 glaube ich).

                                    Einen NodeMCU habe ich mir noch gekauft ob ich den wirklich brauche weiß ich noch nicht.

                                    @Dutchman:

                                    sorry ich erklaehre es zu komplex….

                                    Du hast jetzt in deinem block diese IF, das kan raus wen du den trigger auf IST wahr setzt.

                                    Das er jetzt nicht ausschaltet stimmt, dus musst ja nochmal genau den selber block machen miet IST unwahr.

                                    also 2 blocker mit trigger, einer war der andere unwar. Die commando blocker da rein, keine IF abfrage mehr (unnoetig macht ja der trigger.

                                    ~Dutch `

                                    Ich hab jetzt mal mehrer versuche Kurz gemacht werde dafür aber auch erst wieder heute Abend mehr Zeit haben.

                                    Bisher hat keiner meiner versuche eine zufriedenstellende Lösung gebracht.

                                    Ich lade mal meine Versuche hoch die vielleicht aber auch Unsinn sind. Wenn ich das Trigger wahr und unwahr mache muss ich es auf zwei scripts aufteilen?

                                    Commando Blocker war nochmal was?
                                    2860_3.jpg
                                    2860_1.jpg
                                    2860_2.jpg

                                    1 Reply Last reply Reply Quote 0
                                    • Dutchman
                                      Dutchman Developer Most Active Administrators last edited by

                                      @Clausi821:

                                      @Dutchman:

                                      sorry fachjargon…

                                      Boolean = immer TRUE oder FALSE kan keinen anderen wert im speicher haben

                                      Number = zahlen

                                      String = buchstaben zahlen etc

                                      Du sagst also deinem speicher bist ein boolean, darfst nur TRUE oder FALSE sein `

                                      Danke fürs erklären

                                      @Dutchman:

                                      Mja das kan viel ursachen haben, wie stuerst du deine 433 MHZ ?

                                      Ich habe nach viel basteln und aerger nen RFXCOM gekauft der funst bei mir 99,99%, von 100 schal befehlen fehlen mal 4 das geht. `

                                      Da bei mir alles noch in den Startlöchern ist Hängt der 433 MHz sender direkt am PI 3 (GPIO 17 glaube ich).

                                      Einen NodeMCU habe ich mir noch gekauft ob ich den wirklich brauche weiß ich noch nicht.

                                      @Dutchman:

                                      sorry ich erklaehre es zu komplex….

                                      Du hast jetzt in deinem block diese IF, das kan raus wen du den trigger auf IST wahr setzt.

                                      Das er jetzt nicht ausschaltet stimmt, dus musst ja nochmal genau den selber block machen miet IST unwahr.

                                      also 2 blocker mit trigger, einer war der andere unwar. Die commando blocker da rein, keine IF abfrage mehr (unnoetig macht ja der trigger.

                                      ~Dutch `

                                      Ich hab jetzt mal mehrer versuche Kurz gemacht werde dafür aber auch erst wieder heute Abend mehr Zeit haben.

                                      Bisher hat keiner meiner versuche eine zufriedenstellende Lösung gebracht.

                                      Ich lade mal meine Versuche hoch die vielleicht aber auch Unsinn sind. Wenn ich das Trigger wahr und unwahr mache muss ich es auf zwei scripts aufteilen?

                                      Commando Blocker war nochmal was? `

                                      dein erster screenshot ist genau was ich meinte, aufteilen brauchst du nicht.

                                      Du kannst in einem script x trigger haben, er fuerht nur aus was unter dem trigger steht

                                      @Clausi821:

                                      Da bei mir alles noch in den Startlöchern ist Hängt der 433 MHz sender direkt am PI 3 (GPIO 17 glaube ich).

                                      Einen NodeMCU habe ich mir noch gekauft ob ich den wirklich brauche weiß ich noch nicht. `

                                      zum testen geht das allemaal, nur wie gesagt 433MHZ ist halt kein feedback und diese kleinen sender machen oft problemen.

                                      Fuer 433 empfehler ich RFLINK (grosser thread hier im forum) oder RFXCom mittels openhab integrieren (so mach ich es)

                                      ~Dutch

                                      1 Reply Last reply Reply Quote 0
                                      • C
                                        Clausi821 last edited by

                                        @Dutchman:

                                        dein erster screenshot ist genau was ich meinte, aufteilen brauchst du nicht.

                                        Du kannst in einem script x trigger haben, er fuerht nur aus was unter dem trigger steht `

                                        Hab gestern Abend noch etwas rum Probiert aber so wirklich klappen tut es nicht.

                                        Wenn ich mein Anfängliches Skript nehme. Geht es in iobroker VIS perfekt es schaltet immer richtig aber in der App geht es nicht.

                                        Wenn ich das script nach deinen Info´s mache. Also mit dem Wahr und nicht wahr in der zwei Triggern funktioniert es in der App super aber dafür geht es in VIS nicht.

                                        Hab also leider noch keine Zufriedenstellende Lösung. In beiden fällen ist es so das da wo es nicht geht der Befehl doppelt raus geht und da es so schnell Hintereinander ist scheint das Signal dann einfach im nichts aufzulösen.

                                        @Dutchman:

                                        zum testen geht das allemaal, nur wie gesagt 433MHZ ist halt kein feedback und diese kleinen sender machen oft problemen.

                                        Fuer 433 empfehler ich RFLINK (grosser thread hier im forum) oder RFXCom mittels openhab integrieren (so mach ich es) `

                                        Ich überlege wenn ich alles mehr verstanden haben vielleicht auch auf solche Sonoff Wifi Geräte zu wechseln welche zwischen die Stromleitung kommen. Hier bekommt man ja dann glaube ich auch eine Rückmeldung.

                                        Bei 433 MHz bekommt man generell keine Rückmeldung oder?

                                        Danke für die Info´s.

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          terne last edited by

                                          Hallo Zusammen,

                                          erstmal großes Lob an Euch. Verdammt gutes Forum!

                                          Ich lese hier schon eine Weile mit, und konnte bereits viele Ideen umsetzen und Probleme lösen.

                                          …doch jetzt...

                                          Ich kann problemlos meine Funksteckdosen über ein Script in IOBroker steuern.

                                          Nur wenn ich die ganze 433 MHz Steuerung auf einen andern PI lege und von IOBroker aus steuern will funzt es nicht.

                                          hat einer einen Ansatz wie die Zeile aussehen muss?

                                          anstatt: exec('/home/pi/raspberry-remote/./send 10101 5 1')

                                          Gruß Thorsten

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

                                            Wenn du den 433 mhz Sender auf einem anderen Pi laufen lassen willst musst du den Zugriff dafür "von Außen" herstellen.

                                            Das kannst du einfach über ssh bewerkstelligen.

                                            Der Befehl um einen Befehl auf einem anderen System auszuführen lautet

                                            (USER@IPADRESSE anpassen)

                                            ssh USER@IPADRESSE '/pfad/zum/script/./send 11111 3 1'
                                            

                                            Vorher musst du die SSH Anmeldung über public-key aktivieren bzw. konfigurieren.

                                            https://blog.botfrei.de/2013/03/ssh-auto-login/

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            809
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            21
                                            56
                                            38577
                                            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