python evdev liest Tastendruck nicht

OP #6599359
Lesenswert?
• ▲
▼
Hey

ich möchte das evdev Modul von Python für ein Skript unter Linuxmint 
20.1 nutzen. Dabei sollen Events von einem USB-Fußschalter, der von 
Linux als HID Keyboard erkannt wird, ausgelesen werden. (Grundsätzlich 
funktioniert der Schalter und entspricht, in der aktuellen 
Konfiguration, bei Betätigung dem Drücken der B-Taste bei mir auf der 
Tastatur)
Jetzt wollte ich den Beispielcode aus der Dokumentation zu python evdev 
testen 
(https://python-evdev.readthedocs.io/en/latest/tutorial.html#reading-events):
1
dev = InputDevice('/dev/input/event5')
2

3
print(dev)
4

5

6
for event in dev.read_loop():
7
    if event.type == ecodes.EV_KEY:
8
        print(categorize(event))
und bekomme aber keinen Output. Die Funktion read_loop() scheint keinen 
Tastendruck zu registrieren (aber nen b wird trotzdem an die Stelle des 
Cursors im Terminal geschrieben).
Ich habe vorher mit evtest im Virtuellen Terminal die entsprechende 
eventfile zum Schalter rausgesucht - müsste eigentlich passen.
Weiß jemand, woran das liegen könnte?

(Drei Sachen sind mir noch aufgefallen, die für die Fehlersuche helfen 
könnten:
1. mit der Maus funktionierts, da bekomme ich einen entsprechenden 
Output bei re/li Click
2. python evdev liefert auch ein evtest Modul mit. Wenn ich das mit
Code: [Auswählen]

sudo python -m evdev.evtest

im Terminal ausführe und dann das eventfile vom Fußschalter auswähle 
passiert da bei Tastendruck auch nichts (beim ausführen von evtest im 
viruellen Terminal hingegen schon)
3. Im Zusammenhang mit evtest bin ich auf sudo fuser -v 
/dev/input/event... gestoßen und habe festgestellt, dass auf der 
entsprechenden eventfile einige root prozesse laufen)

Vielen Dank schon einmal für Eure Hilfe!

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.