プログラムは1つの入力デバイスのみを認識します

プログラムは1つの入力デバイスのみを認識します

私はプログラムを持っています(アドバンスマメ) は Raspian (Raspberry Pi) 上で実行されており、ほとんどのプログラムと同様にキーボードから入力を取得します。私は GPIO ピンの HI/LOW 読み取り値をキーの押下に変換するプログラムを使用していますuinput(ピケイド)。GPIO ピンがキー 5 にマップされている端末からバックグラウンドで実行します。pikeyd対応する GPIO を HI に設定すると、端末に「5」が出力されます。

しかし、 を実行するとadvancemameが認識されませんuinput。キーボードを取り外して再起動すると が表示され、すべてが機能します。プログラムは最初の入力デバイス (キーボード) を読み取るように見えますadvancemame。を作成する方法はありますか? つまり、入力デバイスの順序を設定しますuinputinput0uinput input0

$ 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

advancemameすべての入力デバイスを確認する設定があるかどうかはわかりません。ゼロから作成した 3 つのイメージがあり、そのうち 1 つのイメージadvancemameはすべての入力デバイスを確認することができます。uinputキーボードも使用できます。イメージ間の構成設定を比較しましたが、1 つのイメージが機能し、他のイメージが機能しない理由がわかりません。セキュリティ権限の問題ではないかと考えています。

また、event0 と event1 を無効にする方法はありますか? は使用していないX11ため、xinputオプションではありません。

編集

入力デバイスは次のとおりです。

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

どのような助けでも大歓迎です。

答え1

問題は、通常のユーザーとしてadvancemameではなく で実行されていたことが判明しましたが、その理由は調査されませんでした。sudopi

関連情報