Programm wird nicht als Root ausgeführt

  • Hallo,
    ich habe zum testen ein kleines Skript geschrieben, welches mir den Wert eines Ports ausgeben soll. Das Script ist

    Code
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import RPi.GPIO as io
    print io.input(12)


    Ich habe auch schon den Artikel Root Rechte für GPIO Benutzung gelesen und alle Möglichkeiten ausprobiert, es kommt immer wieder der Fehler


    Code
    RuntimeError: No access to /dev/mem.  Try running as root!


    Wieso wird das Programm bei Aufruf von

    Code
    sudo ./test.py


    nicht ausgeführt? Das Programm ist ausführbar (chmod +x).
    Vielen Dank für Hilfe,
    Leonard

  • Da muss was faul sein, denn ich kriege mit genau diesem Script (auf Raspbian) einen anderen Fehler:


    Code
    pi@raspberrypi ~ $ sudo ./test.py
    Traceback (most recent call last):
      File "./test.py", line 4, in <module>
        print io.input(12)
    RPi.GPIO.ModeNotSetException: Please set pin numbering mode using GPIO.setmode(GPIO.BOARD) or GPIO.setmode(GPIO.BCM)
  • Habe jetzt den Fehler gefunden, diese beiden Zeilen fehlten:

    Code
    io.setmode(io.BCM)
    io.setup(12,io.OUT)


    Der gesamte Code sieht damit so aus

    Code
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    import RPi.GPIO as io
    io.setmode(io.BCM)
    io.setup(12,io.OUT)
    print io.input(12)