• Hallo liebe Userinnen und User,

    nach bereits längeren Planungen und Vorbereitungen sind wir nun von vBulletin auf Xenforo umgestiegen. Die Umstellung musste leider aufgrund der Serverprobleme der letzten Tage notgedrungen vorverlegt werden. Das neue Forum ist soweit voll funktionsfähig, allerdings sind noch nicht alle der gewohnten Funktionen vorhanden. Nach Möglichkeit werden wir sie in den nächsten Wochen nachrüsten. Dafür sollte es nun einige der Probleme lösen, die wir in den letzten Tagen, Wochen und Monaten hatten. Auch der Server ist nun potenter als bei unserem alten Hoster, wodurch wir nun langfristig den Tank mit Bytes vollgetankt haben.

    Anfangs mag die neue Boardsoftware etwas ungewohnt sein, aber man findet sich recht schnell ein. Wir wissen, dass ihr alle Gewohnheitstiere seid, aber gebt dem neuen Board eine Chance.
    Sollte etwas der neuen oder auch gewohnten Funktionen unklar sein, könnt ihr den "Wo issn da der Button zu"-Thread im Feedback nutzen. Bugs meldet ihr bitte im Bugtracker, es wird sicher welche geben die uns noch nicht aufgefallen sind. Ich werde das dann versuchen, halbwegs im Startbeitrag übersichtlich zu halten, was an Arbeit noch aussteht.

    Neu ist, dass die Boardsoftware deutlich besser für Mobiltelefone und diverse Endgeräte geeignet ist und nun auch im mobilen Style alle Funktionen verfügbar sind. Am Desktop findet ihr oben rechts sowohl den Umschalter zwischen hellem und dunklem Style. Am Handy ist der Hell-/Dunkelschalter am Ende der Seite. Damit sollte zukünftig jeder sein Board so konfigurieren können, wie es ihm am liebsten ist.


    Die restlichen Funktionen sollten eigentlich soweit wie gewohnt funktionieren. Einfach mal ein wenig damit spielen oder bei Unklarheiten im Thread nachfragen. Viel Spaß im ngb 2.0.

[RPi] GPIO channel has not been set up

chunic

Volkstod-Fan

Registriert
14 Juli 2013
Beiträge
68
Hallo ihr Räuber,
folgendes:
Ich versuche derzeit eine Temperaturabhängige Lüftersteuerung für meinen Raspberry Pi (Homeserver, übertaktet) zu gestalten. Diese Steuerung soll auch die Möglichkeit haben den Lüfter manuell für eine bestimmte Zeit zu starten.
Ich weiß, dass das genau genommen unsinnig ist, da passive Kühlung reicht, aber es geht eben auch darum ein wenig python zu lernen(kann ich nämlich noch gar nicht) und zu basteln. Im Vordergrund steht also der Spass am basteln, nicht die absolute Sinnhaftigkeit des Projekts.

Zum Üben und Testen habe ich ein Berryclipboard auf meinem Raspberry Pi und orientiere mich an den Scripts von diesem.
Nun wollte ich, so als Einstieg, dass mir der Pi beim Druck auf einen kleinen Taster die derzeitige Temperatur meines Pis anzeigt. Aber selbst da scheitere ich schon.

Anbei mal das Script (ich sortiere das mal in Segmenten, im Script ist es eine Datei)

Definitionen:
Code:
#import libs
import RPi.GPIO as GPIO
import time

#GPIO refs
GPIO.setmode(GPIO.BCM)

#setting numbers to colors
ledred = 4
ledyellow = 22
ledgreen = 9
switch = 7

#set gpio pin to output and false
GPIO.setup(ledgreen, GPIO.OUT)
GPIO.output(ledgreen, False)
GPIO.setup(ledyellow, GPIO.OUT)
GPIO.output(ledyellow, False)
GPIO.setup(ledred, GPIO.OUT)
GPIO.output(ledred, False)

#buzzer
GPIO.setup(8, GPIO.OUT)

#switch
print "Setup switch"
GPIO.setup(7, GPIO.IN)
Ich weiß, dass die Verwendung von "7" statt "switch" unsinnig erscheint, das ist ein Relikt davon, herauszufinden, wo der Fehler liegt.

Funktionen:
Code:
print "press the button to check temp"

while True:
  temp = open("/sys/class/thermal/thermal_zone0/temp", "r")
  output =float(temp.read())
  temp.close()

  if GPIO.input(7)==1:
    GPIO.output(ledgreen, True)

#    print "button pressed"
#    print "(output * 0.001)"

    GPIO.cleanup()
Bzgl. "7" statt "switch": s.o.
Ich habe, um Fehler zu vermeiden erstmal versucht eine LED einzuschalten, statt die Temperatur anzuzeigen. Wenn ich nun aber das script via "sudo python temp.py" starte, dann zeigt er mir auch an
Setup switch
press the button to check temp

Drücke ich dann den Taster kommt:
Traceback (most recent call last):
File "temp.py", line 37, in <module>
if GPIO.input(7)==1:
RPi.GPIOWrongDirectionException: GPIO Channel has not been set up

Wenn ich die Fehlermeldung google oder ducke finde ich nur die Entwicklung der GPIO Schnittstelle, in der der Fehler drin ist.

Anbei das Script im Ganzen
Anhang anzeigen temp.py.txt

grüße chunic

ps.: ich finde den "spoiler button" nicht
 
Oben