OSError:[Errno 19]无法打开输入设备:没有这样的设备

时间:2018-02-06 10:36:55

标签: python linux raspbian uinput

我是raspberry和Linux的新手。我正在尝试使用以下代码在Raspbian(r Pi 3 B)上运行python库uinput的基本示例:

import uinput

device = uinput.Device([
        uinput.BTN_LEFT,
        uinput.BTN_RIGHT,
        uinput.REL_X,
        uinput.REL_Y,
        ])

for i in range(20):
    device.emit(uinput.REL_X, 5)
    device.emit(uinput.REL_Y, 5)

我收到错误:

追踪(最近一次呼叫最后一次):

文件“/home/pi/Desktop/t1.py”,第7行,in     uinput.REL_Y,   在 init 中输入文件“/home/pi/.local/lib/python3.5/site-packages/uinput/init.py”,第178行     self。 uinput_fd = fd或fdopen()   文件“/home/pi/.local/lib/python3.5/site-packages/uinput/__init.py”,第84行,在fdopen中     return _libsuinput.suinput_open()   在_open_error_handler中输入文件“/home/pi/.local/lib/python3.5/site-packages/uinput/init.py”,第70行     提出OSError(代码,msg)

OSError:[Errno 19]无法打开输入设备:没有这样的设备 怎么了?我需要改变什么,在哪里?

1 个答案:

答案 0 :(得分:1)

是否加载了uinput驱动程序模块?

尝试:

$ lsmod | grep uinput

可能没有显示任何内容,这意味着没有加载驱动程序。尝试加载它:

$ modprobe uinput

然后尝试使用Python代码。如果您没有以root权限运行代码,那么由于PermissionError设备文件的访问权限,您可能会获得/dev/uinput