Das Programm erkennt nur 1 Eingabegerät

Das Programm erkennt nur 1 Eingabegerät

Ich habe ein Programm (Abonnieren) läuft auf Raspian (Raspberry Pi), das wie die meisten Programme seine Eingaben über die Tastatur erhält. Ich verwende ein Programm, das die uinputHI/LOW-Werte der GPIO-Pins in Tastendrücke umwandelt (Abonnieren). Ich führe es pikeydim Hintergrund vom Terminal aus aus, dessen GPIO-Pin der Taste 5 zugeordnet ist. Ich stelle den entsprechenden GPIO auf HI und es wird „5“ auf dem Terminal ausgegeben.

Wenn ich jedoch ausführe advancemame, erkennt es das nicht uinput. Wenn ich die Tastatur abziehe und neu starte, advancemamesieht es uinputund alles funktioniert. So wie es aussieht, liest das Programm das erste Eingabegerät input0(Tastatur). Gibt es eine Möglichkeit, das zu tun uinput input0? Das heißt, die Reihenfolge der Eingabegeräte festzulegen

$ ls /sys/class/input/
  event0  event1  event2  input0  input1  input2  mice  mouse0  mouse1

$ ls /sys/devices/virtual/input/input2/
  capabilities  event2  id  modalias  mouse1  name  phys  power  properties  subsystem  event  uniq

Ich bin nicht sicher, ob es eine Einstellung gibt, advancemamedie alle Eingabegeräte berücksichtigt. Ich habe 3 Bilder, die ich von Grund auf neu erstellt habe, 1 der 3 Bilder funktioniert und berücksichtigt advancemamealle Eingabegeräte. Ich kann meine uinputund die Tastatur gleichzeitig verwenden. Ich habe die Konfigurationseinstellungen zwischen den Bildern verglichen und kann nicht herausfinden, warum eines funktioniert und die anderen nicht. Ich frage mich, ob es sich möglicherweise um eine Sicherheitsberechtigung handelt.

Gibt es außerdem eine Möglichkeit, event0 und event1 zu deaktivieren? Ich verwende es nicht X11, daher xinputist das keine Option.

BEARBEITEN

Hier sind meine Eingabegeräte:

pi@raspberrypi ~ $ cat /proc/bus/input/devices
I: Bus=0003 Vendor=0d62 Product=0500 Version=0100
N: Name="2.4G Wireless Keyboard with Touchpad"
P: Phys=usb-bcm2708_usb-1.2/input0
S: Sysfs=/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.0/input/input0
U: Uniq=
H: Handlers=sysrq kbd event0 
B: PROP=0
B: EV=120013
B: KEY=10000 7 ff9f207a c14057ff febeffdf ffefffff ffffffff fffffffe
B: MSC=10
B: LED=7

I: Bus=0003 Vendor=0d62 Product=0500 Version=0100
N: Name="2.4G Wireless Keyboard with Touchpad"
P: Phys=usb-bcm2708_usb-1.2/input1
S: Sysfs=/devices/platform/bcm2708_usb/usb1/1-1/1-1.2/1-1.2:1.1/input/input1
U: Uniq=
H: Handlers=kbd mouse0 event1 
B: PROP=0
B: EV=1f
B: KEY=4837fff 72ff32d bf544446 0 0 1f0001 20f90 8b17c000 677bfa d9415fed 9ed680 4400 0 10000002
B: REL=143
B: ABS=7f01 0
B: MSC=10

I: Bus=0003 Vendor=0001 Product=0001 Version=0001
N: Name="uinput-sample"
P: Phys=
S: Sysfs=/devices/virtual/input/input2
U: Uniq=
H: Handlers=sysrq kbd mouse1 rfkill event2 
B: PROP=0
B: EV=100007
B: KEY=10000 ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe
B: REL=3

Jede Hilfe wird geschätzt.

Antwort1

advancemameEs stellte sich heraus, dass das Problem bei der Ausführung mit sudound nicht als normaler Benutzer auftrat. piWir haben nicht untersucht, woran das lag.

verwandte Informationen