29 lines
763 B
Python
29 lines
763 B
Python
|
#!/bin/python
|
||
|
import evdev
|
||
|
from evdev import InputDevice
|
||
|
from select import select
|
||
|
import time
|
||
|
|
||
|
deviceList = evdev.list_devices()
|
||
|
readableDevices = []
|
||
|
for dev in deviceList:
|
||
|
try:
|
||
|
open(dev)
|
||
|
readableDevices.append(dev)
|
||
|
print('OK '+dev)
|
||
|
except Exception as e:
|
||
|
print('skip ' + dev + ' Error ' + str(e))
|
||
|
|
||
|
|
||
|
devices = map(evdev.InputDevice, (readableDevices))
|
||
|
devices = {dev.fd: dev for dev in devices}
|
||
|
|
||
|
while True:
|
||
|
r, w, x = select(devices, [], [])
|
||
|
if r != []:
|
||
|
for fd in r:
|
||
|
for event in devices[fd].read():
|
||
|
print('Devicename:'+ devices[fd].name + ' Devicepath:' + devices[fd].fn + ' Events:' + str(devices[fd].active_keys(verbose=True)) + ' Value:' + str(event.value))
|
||
|
|
||
|
|