uhidd

用户态处理HID设备事件的程序

uvhid

uhidd建立的伪HID设备,可用于usbhidaction和usbhidctl。

因为不支持USB_GET_REPORT,usbhidctl需要-z参数。 在github.com/HenryHu/uhidd中有实验性修正。

uhidd.conf

# config file

### Not yet supported:
# Power keys (sleep, etc.)
#   Not in consumer control group.
#   type=Application page=Generic_Desktop usage=System_Power_Down
#   type=Application page=Generic_Desktop usage=System_Sleep
#   type=Application page=Generic_Desktop usage=System_Wake_Up
#
default={
    detach_kernel_driver="NO"
    kbd_attach="NO"
    mouse_attach="NO"
#     Unused keycodes       Currently unused keycodes include: 0x54, 0x5A,
#                           0x5F, 0x60, 0x62, 0x63, 0x6F, 0x71, 0x72, 0x74.
#
#     Rarely used keycodes  0x73, 0x70, 0x7D, 0x79, 0x7B, 0x5C, 0xF2, 0xF1,
#                           0x78, 0x77, 0x76.  These keycodes are most likely
#                           not used for English keyboard.
#
#     F13 - F24             0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B,
#                           0x6C, 0x6D, 0x6E, 0x76. These keycodes are for
#                           extra function keys found on some keyboards and can
#                           be reassigned if your keyboard doesn't have them.
#
# Corresponding entries in .Xmodmap:
#
#keycode 207 = XF86AudioMute
#keycode 189 = XF86AudioLowerVolume
#keycode 190 = XF86AudioRaiseVolume
#keycode 92  = XF86AudioPlay
#keycode 170 = XF86AudioStop
#keycode 130 = XF86AudioPrev
#keycode 132 = XF86AudioNext
    cc_keymap={
    # 0x63 -> 190 DELTA = 91
        Volume_Increment="0x63"
        Volume_Decrement="0x62"
    # 0x7c -> 132 DELTA = 8
        Scan_Next_Track="0x7c"
        Scan_Previous_Track="0x7a"
    # 0x5a -> 170 or 164
        Stop="0x5a"
    # 0x54 -> 92 DELTA = 8
        Play/Pause="0x54"
    # 0x6f -> 207 DELTA = 96
        Mute="0x6f"
    }
#    sc_attach="YES"
#    sc_keymap={
#        Sleep="0x64"
#    }
}

0x046d:0xc31={
    detach_kernel_driver="NO"
}

# Logitech receiver
## Keyboard
0x046d:0xc52b:0={
    detach_kernel_driver="NO"
}
## Mouse, Media keys
0x046d:0xc52b:1={
    detach_kernel_driver="YES"
    mouse_attach="YES"
    cc_attach="YES"
    vhid_attach="YES"
}
## HID device
0x046d:0xc52b:2={
    detach_kernel_driver="NO"
}

# Code Keyboard
## Keyboard
0x04d9:0x0169:0={
    detach_kernel_driver="NO"
}
## HID device for media keys
0x04d9:0x0169:1={
    detach_kernel_driver="YES"
    cc_attach="YES"
}

# DasKeyboard 4C
## Keyboard
0x24f0:0x0142:0={
    detach_kernel_driver="NO"
}
## HID device for media keys
0x24f0:0x0142:1={
    detach_kernel_driver="YES"
    cc_attach="YES"
    vhid_attach="YES"
}