Возможно ли, чтобы устройство USB сообщало хосту, какие альтернативные интерфейсы использовать, во время запуска или в любое другое время?
Я знаю о запросах интерфейса GET_INTERFACE и SET_INTERFACE, но у меня сложилось впечатление, что хост просто будет предполагать, что при запуске действует альтернативный интерфейс 0 - по крайней мере, для устройств HID. Я надеюсь найти способ обойти это без написания драйвера хоста.
Справка:
Я работаю над личным проектом, включающим конвертацию различных PS / 2 и других устройств в USB (HID). Обычно для этого не требуется драйвер, поскольку ОС обычно поддерживают такие устройства. Однако для интерфейса клавиатуры я бы хотел предоставить несколько вариантов NKRO, поэтому некоторые интерфейсы клавиатуры будут иметь больше, чем стандартные клавиши-модификаторы 6+. Это нормально работает в операционных системах, которые я пробовал, но я хотел бы позволить пользователю выбирать, какой интерфейс клавиатуры использовать. В идеале это будет сохранено на устройстве и снова вступит в силу при запуске, поэтому мне не нужно предоставлять драйвер для устройства.