Fernbedienungs-gesteuerter Power Controller für Raspberry Pi

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo miteinander

    Ich bin gerade dabei mein Ambilight Projekt aufzubauen
    Ich habe mir ein Komplett set von Insaneware bestellt...zusätzlich noch
    den Fernbedienungs-gesteuerter Power Controller für Raspberry Pi.

    Ich habe nun das dazu gehörende Script erstellt welches auch bei eningabe von
    bash -x /etc/irswitch.sh ausgeführt wird und der Pi heruntergefahren wird.....

    Drücke ich jedoch den HW Button des Boards wird lediglich powercut gemacht...zeitverzögert so wie es das Board vorsieht ....das script wird jedoch nicht ausgeführt!

    was mir auffällt ist das beim aufrufen des scriptes aus der Konsole folgende Meldungen kommen:

    pi@raspberrypi ~ $ bash -x /etc/irswitch.sh
    + GPIOpin5=22
    + echo 22
    /etc/irswitch.sh: line 4: /sys/class/gpio/export: Permission denied
    + echo in
    /etc/irswitch.sh: line 5: /sys/class/gpio/gpio22/direction: No such file or directory
    + true
    + sleep 1
    ++ cat /sys/class/gpio/gpio22/value
    cat: /sys/class/gpio/gpio22/value: No such file or directory
    + power=
    + '[' '' '!=' 0 ']'
    + sleep 4
    ++ cat /sys/class/gpio/gpio22/value
    cat: /sys/class/gpio/gpio22/value: No such file or directory
    + power=
    + '[' '' == 0 ']'
    + sudo poweroff

    Broadcast message from root@raspberrypi (pts/0) (Wed Jul 9 11:00:25 2014):
    The system is going down for system halt NOW!
    + true
    + sleep 1
    ++ cat /sys/class/gpio/gpio22/value
    cat: /sys/class/gpio/gpio22/value: No such file or directory
    + power=
    + '[' '' '!=' 0 ']'
    + sleep 4
    ^


    Tja da hat das script auch recht....... da ist nämlich nix in dem Pfad
    Da insaneware auch einen eigenen switch mit taster anbietet ist hierfür ein script vorhanden welches gpio23 und gpio24 initialisiert..........die pfade und verzeichnisse sind vorhanden.

    Nun bin ich mit meinem Latein (linux und scriptfähigkeiten) am Ende.

    Kann mir mal wer auf die Sprünge helfen?!
    In meiner Unwissenheit hab ich schon die Idee verfolgt diese Dateien einfach zu kopieren.....Pustekuchen...(Bitte nicht lachen....sonst bin ich eigentlich nicht so unbeholfen)

    Ich danke schon mal für jede Hilfe........nur bitte dabei daran denken ich bin Linux inkompatibel (bisher) also keine Fachkentnisse vorraussetzen........

    Gruß

    Michael

  • Fernbedienungs-gesteuerter Power Controller für Raspberry Pi? Schau mal ob du hier fündig wirst!

  • Danke schon mal.......

    Wie gesagt wenn ich mein erstelltes script ausführe wird der Pi auch heruntergefahren......
    Das Problem ist das wenn der Controller sein shutdown signal auf gpio22 setzt nichts passiert....d.h. das script wird nicht ausgeführt!
    Den Schalter den Insane anbietet habe ich nicht verbaut...b.z.w. erst garnicht mitbestellt.
    Ich könnte natürlich den verweiss in der local.rc auf das script switch.sh mal rausnehmen.
    Mir fehlt da noch so das verständniss......sind die resourcen die für das überwachen der gpio pins ztuständig sind
    immer vorhanden? Hat Insane vieleicht bei dem Image nur die entsprechenden für gpio22 und 23 eingefügt
    Die zusammenhänge sind mir noch nicht so ganz klar...........

  • dbv

    Jep....soweit schon klar- so ein wenig kenn ich mich mit den rechten und chmod und so weiter aus
    Dank rumgefuckel an Dreambox und co unter Enigma2....
    Was mich nur beschäftigt ist der Zusammenhang........
    Wenn ich ein script erstelle mit dem ich einen event auslöse muss ja das Device irgendwie bekannt sein
    Wenn ich mir jetzt die Verzeichnisse ansehe gibt es nirgendwo GPIO22.....
    Oder wird das ganze durch das Script erst eingestielt?
    Da hapert es.......

    Tja und jetzt wird es noch konfuser

    Führe ich mein script mit sudo aus wird der pi nicht heruntergefahren das script verrennt sich in einer wiederholenden befehlsfolge jedoch ohne fehlermeldung
    Führe ich mein script ohne sudo aus wird der pi heruntergefahren jedoch mit den fehlermeldungen

    Wie kann ich bloss kontrollieren ob das shutdown signal überhaupt ausgelöst wird... ich sehe ja nirgends ob der GPIO22 seinen status ändert oder gibt es irgendeine möglichkeit das zu protokollieren?

    Nicht das vom Board überhaupt keine Level Änderung kommt.....ich tippe ja mal da drauf das der Port GPIO auf logisch High gesetzt wird wenn der Controller
    das shutdown signal setzt.......hab leider keinen logicanalyzer zur hand......Multimeter müsste ja auch gehen....
    Schön wäre es natürlich wenn es einen Befehl gibt der die zustände der GPIO abfragt....jetzt mal unabhängig davon ob mein script jetzt richtig ist oder nicht.
    Erstmal die Basics testen....
    Input ich brauche Input (Nr5 lebt)

    Danke schonmal für die Mühe!!!!!!!!

  • Na denn mal les les .....experimentier!

    Ich danke dir vielmals......
    Ich lass hier mal noch offen...mal sehen ob ich dem beikomme!

    So.....erster Schritt.....
    Manuell in root gewechselt ..... GPIO pin 22 exportiert.....als "in" definiert
    abfrage per cat ....pin liegt auf LOW.....taste gedrückt....pin liegt auf HIGH...

    Somit hier alles in Ordnung ....Board funktioniert!!!! Macht was es soll....
    Nur wird mein script nicht ausgeführt....Weitersuch.....

    Gibt es auch eine Dokumentation wie ich sowas auslesen kann.....
    Im Terminalfenster sehe ich ja bei manuellem starten des scritptes was passiert
    Sowas in der Art brauche ich jetzt wenn gpio22 seinen status wechselt....

    Das muss doch permament geschehen die Überwachung des Status von gpio22??
    Muss man ja irgendwie verstehen können...ist ja kein Hexenwerk

    Einmal editiert, zuletzt von Lowbytes (9. Juli 2014 um 14:55)

  • Das hier ist das script für die IR Platine! irswitch.sh
    schnipp


    #!/bin/bash
    # this is the GPIO pin receiving the shut-down signal
    GPIOpin5=22
    echo "$GPIOpin5" > /sys/class/gpio/export
    echo "in" > /sys/class/gpio/gpio$GPIOpin5/direction
    while true; do
    sleep 1
    power=$(cat /sys/class/gpio/gpio$GPIOpin5/value)
    if [ "$power" != 0 ]; then
    sleep 4
    power=$(cat /sys/class/gpio/gpio$GPIOpin5/value)
    if [ "$power" == 0 ]; then
    echo "out" > /sys/class/gpio/gpio$GPIOpin5/direction
    echo "1" > /sys/class/gpio/gpio$GPIOpin5/value
    fi
    sudo poweroff
    fi
    done


    ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Das hier ist das Script was für den Insaneschalter gedacht ist da wird wohl auch noch ne LED mit gesteuert: (war bereits mit installiert)
    switch.sh
    schnipp


    #!/bin/bash

    #this is the GPIO pin connected to the lead on switch labeled OUT
    GPIOpin1=23

    #this is the GPIO pin connected to the lead on switch labeled IN
    GPIOpin2=24

    echo "$GPIOpin1" > /sys/class/gpio/export
    echo "in" > /sys/class/gpio/gpio$GPIOpin1/direction
    echo "$GPIOpin2" > /sys/class/gpio/export
    echo "out" > /sys/class/gpio/gpio$GPIOpin2/direction
    echo "1" > /sys/class/gpio/gpio$GPIOpin2/value
    while [ 1 = 1 ]; do
    power=$(cat /sys/class/gpio/gpio$GPIOpin1/value)
    if [ $power = 0 ]; then
    sleep 1
    else
    sudo poweroff
    fi
    done

    Eigentlich brauche ich doch nur im script switch.sh GPIOpin1=23 auf GPIOpin1=22 ändern???
    Sollte die Lösung so einfach sein??

    Kopfkratz

    Gesagt getan.........
    Tja so einfach kann das leben sein!

    DER GEHT..........:bravo2:

    Merci vielmals......

    Jetzt hab ich das auch verstanden....tja und top hat es dann auch an den Tag gebracht das nur switch.sh aktiv ist.......irswitch.sh taucht nirgends auf!

    Viel gelernt und nu weiss ich auch wie ich ne LED oder so ansteuern kann....
    Manchmal sind es die einfachen Hinweise die uns ans Ziel bringen!!!

    Nun die IR Diode noch nach vorne in mein Gehäuse legen und die Status LED - alles von der IR Platine abkoppeln

    Die ganze Sache wird mit HDMI Switch - Apple TV3 USB Hub Netzteil in das Gehäuse eines T-Home Entertain Media Receiver 300 eingebaut- alles schön von aussen mit den Originalknöpfen bedienbar....Hinten alles steckbar... damit der WomansAkzeptanceFactor gegeben ist!

    Bis zum nächsten Problem;)

    Einmal editiert, zuletzt von Lowbytes (9. Juli 2014 um 16:11)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!