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

okr*_*ram 0 python linux raspbian uinput

我对树莓派和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)
Run Code Online (Sandbox Code Playgroud)

我得到错误:

追溯(最近一次通话):

文件“/home/pi/Desktop/t1.py”,7号线,在uinput.REL_Y,文件“/home/pi/.local/lib/python3.5/site-packages/uinput/ 初始化的.py”,行178,初始化 自己。uinput_fd = fd或fdopen()文件“ /home/pi/.local/lib/python3.5/site-packages/uinput/__init .py”,第84行,在fdopen中返回_libsuinput.suinput_open()文件“ / home / pi / .local / lib / python3.5 / site-packages / uinput / init .py“,第70行,在_open_error_handler中引发OSError(code,msg)

OSError:[Errno 19]无法打开uinput设备:否这样的设备怎么了?我需要更改什么,在哪里更改?

mha*_*wke 5

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

尝试:

$ lsmod | grep uinput
Run Code Online (Sandbox Code Playgroud)

可能什么都不显示,这意味着未加载驱动程序。尝试加载它:

$ modprobe uinput
Run Code Online (Sandbox Code Playgroud)

然后尝试您的Python代码。如果您不是以root权限运行代码,则可能会PermissionError由于/dev/uinput设备文件的访问权限而收到一个。