【问题标题】:Receiving data from HID game controller in Python在 Python 中从 HID 游戏控制器接收数据
【发布时间】:2013-09-10 01:01:11
【问题描述】:

我正在尝试使用 Python 脚本与游戏控制器人机接口设备 (HID) 通信,但我无法从控制器接收数据。我正在使用 pywinusb 0.3.2 和 Python 3.3。游戏控制器是 Logitech Gamepad F310.Link Here 到 pywinusb。

我已经能够让 python 识别 HID,但我一直不知道从那里去哪里。我识别控制器的代码是:

import pywinusb.hid as hid

target = hid.HidDeviceFilter(vendor_id = target_vendor_id, product_id = target_product_id)
allitems = target.get_devices()
device = allitems[0]
print(device)

此代码返回如下内容:HID 设备 (vID=0x00a, pID=0xa000, v=0x0000);罗技;罗技 Dual Action,路径:\(此处为数字和字母的长序列)

我不确定here 方法是否适用于控制器,或者是否有另一个库比 pywinusb 更可取。如果我必须切换库,我宁愿切换到跨平台的库。示例部分中包含的少量文档不足以让我弄清楚这一点。

我的问题是:如何从控制器接收数据?有命令吗?我曾与 Arduino 一起工作过,将它连接到 Wii Nunchuk 是一个类似的过程。我是否必须发送初始化序列,类似于 Arduino?我需要知道控制器上两个摇杆的 x 和 y 值以及按钮是否被按下。

如果这很明显或已经得到回答,我深表歉意。我以前从未在 python 中使用过 HID。

【问题讨论】:

    标签: python python-3.x hid pywinusb


    【解决方案1】:

    看看 HID 的使用是如何工作的(google around)。

    使用 show_hids.py 示例脚本查看设备是否公开标准用法。

    如果没有,您唯一的希望是使用原始报告处理程序(检查源代码中的示例文件夹,我建议您使用 github 的代码)。

    【讨论】:

      猜你喜欢
      • 2012-05-09
      • 1970-01-01
      • 2014-04-16
      • 1970-01-01
      • 1970-01-01
      • 2021-09-30
      • 2016-10-17
      • 2012-06-09
      • 2019-02-04
      相关资源
      最近更新 更多