使用Python hidapi打开具有多种用法的设备

时间:2016-07-19 01:42:00

标签: python hid hidapi

我是Python hidapi的新手,尽管我之前使用的是基于它的C版本。 Python库真的不同,我无法从提供的一个示例中弄清楚如何使用它。有谁知道这个库的任何好文档?

如果您正在寻找特定问题,我尝试打开具有多种用法的HID设备。我的设备具有以下相关特征:

vendor_id: 10618
product_id: 4
usage: 8
usage_page: 1
interface_number: 1

我已经尝试使用hid_enumerate来选择我想要的字典但是在实例化设备对象之后,即使我知道设备,它也不会打开(因为它在枚举中列出)。

1 个答案:

答案 0 :(得分:4)

虽然我仍然希望找到一些不错的文档,但在使用C hidapi标题作为参考后,我找到了原始问题的答案。为了指定用法,您必须使用open_path()而不是常规的open()方法(见下文):

import hid

#Get the list of all devices matching this vendor_id/product_id
vendor_id = 10618
product_id = 4
device_list = hid.enumerate(vendor_id, product_id)

#Find the device with the particular usage you want
device_dict = (device in device_list if device['usage'] == '8').next()
device = hid.device()
device.open_path(device_dict['path']) #Open from path