程式僅看到 1 個輸入設備

程式僅看到 1 個輸入設備

我有一個程式(前進媽媽)在 Raspian(Raspberry Pi)上運行,與大多數程式一樣,它從鍵盤獲取輸入。我正在使用一個程序,該程序實現uinput將 GPIO 引腳高/低讀數轉換為按鍵(皮凱德)。我pikeyd從終端機在後台運行,該終端機有一個映射到鍵 5 的 GPIO 引腳。

但是,當我運行時advancemame,它無法識別uinput.如果我拔下鍵盤並重新啟動,然後一切advancemame正常uinput。從表面上看,程式將讀取第一個輸入裝置input0(鍵盤)。有辦法製作嗎uinput 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 個從頭開始建立的影像,這 3 個影像中的 1 個可以advancemame看到所有輸入裝置。uinput有時我可以使用我的鍵盤。我比較了圖像之間的配置設置,但似乎無法找到為什麼一個有效而其他無效的原因。我想知道這是否可能是安全許可。

另外,有沒有辦法禁用 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

結果發現問題是以普通用戶身份運行advancemamesudo,而不是以普通用戶身份運行的pi,我們沒有調查原因。

相關內容