pywinusb在HID上发送LED关闭(0x17)

0 投票
1 回答
676 浏览
提问于 2025-04-18 04:03

我有以下一些定义:
电话设备页面:0x0B,
电话耳机:0x05,
LED页面:0x08,
LED离线:0x17

我想用pywinusb-0.3中的“简单发送”示例发送一个“LED离线 = 0x17”,但是我遇到了这个错误:“找到了目标设备,但请求的用法不存在!”希望能得到任何帮助。谢谢

import pywinusb.hid as hid

def click_signal(target_usage, target_vendor_id):
    all_devices = hid.HidDeviceFilter(vendor_id = target_vendor_id).get_devices()
    if not all_devices:
        print("Can't find target device (vendor_id = 0x%04x)!" % target_vendor_id)
    else:

        for device in all_devices:
            try:
                device.open()
                DD = device.find_output_reports()
                for report in DD:
                    c = target_usage in report
                    if target_usage in report:
                        report[target_usage] = 1 # yes, changing values is that easy
                       report.send()               
                        report[target_usage] = 0
                        report.send()
                        print("\nUsage clicked!\n")
                        return
            finally:
                device.close()
        print("The target device was found, but the requested usage does not exist!\n")
    #
if __name__ == '__main__':
    target_vendor_id = 0x1395 # just an example, change it to the actual vendor_id
    target_usage = hid.get_full_usage_id(0x0B, 0x17) # generic vendor page, usage_id = 2
     click_signal(target_usage, target_vendor_id)

1 个回答

0

LED OFF_HOOK 是一个信号,表示要“回传”给主机。

要改变这个状态,你需要在电话设置页面上更改 HOOK_SWITCH 的使用情况。

撰写回答