Raspberry PI: Ändern des GPIO und Erhöhung der Geräteanzahl

Als Ergänzung für das Raspberry-Remote von xkonni was ich hier implementiert habe:

Da ich von Emsystech das Rasp-LCD noch verwenden möchte, und dieses bis auf zwei GPIO alle belegt, war ich gezwungen den verwendeten GPIO das Raspberry-Remote zu ändern.

Die GPIOs 4 (Pin 7) und 9 (Pin 21) sind noch frei. Ich habe mich für den GPIO04 entschieden. Dazu habe ich vom Displaykabel die freien Pins (Schematische Zeichnung X1) gerausgelöst und den Funksender angelötet.

Jetzt musste ich in der daemon.cpp im Raspberry-Remote Verzeichnis (bei mir /home/pi/raspberry-remote/) den Eintrag :
mySwitch.enableTransmit(0);
für GPIO 0 noch in “ mySwitch.enableTransmit(7);“ ändern. Die Pinbelegung des Wiring PI findet ihr hier: Link falls ihr einen anderen Pin/GPIO benötigt.

Wo ich schon dabei bin, habe ich den Wert „nPlugs=10;“ erhöht. Die 10 stehen für die Systemcode 00000 & 00001 & 00010.
Ich habe den Wert nun auf 1110 erhöht. Da ich pro Raum/Funktionsgruppe eigene Systemcodes verwende.

Nun noch die Datei mit sudo make daemon kompilieren und den Service neustarten. Das wars schon.

Nun aber viel Spaß beim Schalten 🙂

7 Gedanken zu „Raspberry PI: Ändern des GPIO und Erhöhung der Geräteanzahl“

    • Hallo,

      Mit dem ursprünglichen Wert kannst du als Hauscode nur 00000, 00001 und 00010 verwenden.
      Wenn du das entsprechend änderst, hast du für den Hauscode mehr Auswahlmöglichkeiten, wie 01101.

      Hoffe das hilft dir.
      VG

    • Hi, Ich hab das mit dem nplug immer noch nicht verstanden. Welche Beziehung gibt es zwischen dem nplug und dem Systemcode. Der Systemcode meiner Funksteckdosen ist 5stellig. Warum funktioniert hier ein 4stelliger nplug. Kann hier jemand Licht ins Dunkel bringen?
      Vielen Dank im Voraus.
      Burnhard

  1. Hallo,

    habe jetzt den nplug mal auf 1110 gestellt, danach make daemon
    aber jetzt habe ich keine rahmen mehr aum die einzelnen buttons. Muss ich den daemon neu starten nach dem make?
    Und was ist wenn ich z.b. den code auf 11111 stelle? dann sollten doch alle kombinationen bei den Steckdosen gehen, oder nicht?

    die 00000 beim hauscode geht übrigends auch nicht. es gehen nur 00001 und 00010

    Antworten
    • Entweder killst du den Prozess mit kill -9 [PROZESS ID] oder wenn du ein Init-Script erstellt hast, kannst du mit /etc/init.d/remotecontrol stop und /etc/init.d/remotecontrol start den Prozess stoppen und starten. Viel Erfolg

  2. Also das mit dem abändern der daemon.cpp und kompilieren hat bei mir nicht geholfen, da das Send Interface seperat läuft.

    Richtig ist

    – daemon suchen ( sudo ps aux | grep remote ) ( mein script hieß daemon_remote ) und anschließend killen ( sudo kill -9 ) -PID is die erste Zahl nach dem Benutzernamen

    – die send.cpp ( sudo nano raspberry-remote/send.cpp ) mit der gewünschten WiringPi nummer zu ändern

    – dann die daemon.cpp (sudo nano raspberry-remote/daemon.cpp ) mit der gewünschten WiringPi nummer zu ändern

    – anschließend zuerst send , dann daemon kompilieren( sudo make raspberry-remote/send && sudo make raspberry-remote/daemon)

    – zuletzt den daemon starten ( sudo ./daemon & )

    danach hat alles wunderbar funktioniert, als Pinout habe ich https://pinout.xyz/pinout/pin11_gpio17 verwendet
    Danke für die Anleitung ^^

    Antworten

Schreibe einen Kommentar zu stefangem Antworten abbrechen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.