Могу ли я использовать WinUSB вместе со встроенными драйверами HID? - PullRequest
0 голосов
/ 06 января 2020

Я создаю прототип клавиатуры, используя Pi Zero, и планирую настроить Pi Zero так, чтобы она имитировала HID-совместимую клавиатуру USB (для Windows). Есть много руководств о том, как это сделать, поэтому я не думаю, что это будет проблемой. Для дополнительной функциональности этой клавиатуры потребуется возможность настраивать определенные аспекты клавиатуры на хост-компьютере и отправлять эти конфигурации обратно на устройство.

Насколько я понимаю, когда я получаю пи-ноль, эмулирующий HID клавиатуре, мне не нужно будет делать никаких дополнительных действий с Windows, чтобы заставить хост принять новое устройство клавиатуры - он автоматически распознает устройство HID и использует правильный встроенный драйвер. Конфигурация немного, однако мне придется работать над собой. Я планировал написать приложение Win32, которое называет WinUSB другим драйвером , который обрабатывает передачу для конфигураций.

На странице MSDN для выбора модели драйвера USB в нем говорится, что WinUSB является хорошим вариантом, если:

Ваше устройство доступно из одного приложения.

Вопрос стоит так:

Запрещает ли использование моего устройства в качестве HID-клавиатуры использовать WinUSB в качестве драйвера конфигурации? Точнее говоря, постоянно ли моя клавиатура в драйвере фильтра HID (я считаю, что хост HID является драйвером фильтра) считается устройством, уже используемым в одном приложении, где приложение конфигурации будет вторым?

1 Ответ

0 голосов
/ 06 января 2020

Я полагаю, что это отвечает на мой вопрос.

https://social.msdn.microsoft.com/Forums/en-US/9687e8ba-9eb0-4d41-a8ac-973a029e05b2/winusb-sample-to-read-inputs-from-keyboard

На устройстве может быть установлен только один драйвер: HID или winusb. Вы можете принудительно запустить winusb на клавиатуре, но тогда он перестанет выглядеть как клавиатура для ОС.

Игнорируя ужасное отсутствие заглавных букв в этом посте, кажется, довольно убедительно утверждается, что нужен отдельный драйвер быть написанным. Как жаль.

...