1. 环境说明

    OpenHarmony 5.1.0 + linux 6.6 + rk3588 + USB 2.4G接收器(当前连接手柄用)

  2. 使用的通用USB host ,既插既用,不用改dts设备树文件,也不用改驱动

  3. 修改defconfig文件,打开对2.4G的支持

    配置文件:kernel/linux/config/linux-6.6/rk3588/arch/xxxx_defconfig

# 可以关闭板载BT,避免干扰,不影响2.4G
CONFIG_BT=n
CONFIG_BT_HCIBTUSB=n

# 2.4G USB接收器配置
CONFIG_USB=y                                           
CONFIG_INPUT_JOYSTICK=y         # 手柄配置开关
CONFIG_USB_XHCI_ROCKCHIP=y      # RK3568 USB3.0主机
CONFIG_USB_EHCI_HCD=y         # USB2.0主机             
CONFIG_USB_HID=y              # USB HID通用驱动       
CONFIG_HID_JOYSTICK=y           # 游戏摇杆/手柄核心
CONFIG_INPUT_JOYDEV=y           # /dev/input/js0节点生成
CONFIG_INPUT_EVDEV=y          # 生成 eventX            
CONFIG_DRIVERS_HDF_INPUT=y    # 开启 hdf usb输入框架    
CONFIG_DRIVERS_HDF_USB_HID=y    # 开启 hdf usb输入框架


CONFIG_USB_ARCH_HAS_HCD=y       # CONFIG_JOYSTICK_XPAD depend on
CONFIG_JOYSTICK_XPAD=y          # Xbox 手柄核心驱动,生成eventX+按键/摇杆解析
CONFIG_JOYSTICK_XPAD_FF=y       # 手柄震动
CONFIG_JOYSTICK_XPAD_LEDS=y     # 手柄指示灯
CONFIG_INPUT_FF_MEMLESS=y       # 手柄指示灯相关

相关依赖可通过kconfig文件查找,如:CONFIG_INPUT_JOYSTICK配置如果不打开,多个依赖这个开关的配置就不会有效

  1. 验证:可看到/dev/input/下新增了两个节点,eventX、js0; 通过cat命令,可看到按键数据正常
Logo

社区规范:仅讨论OpenHarmony相关问题。

更多推荐