1

У меня есть ИРТОЙ, купленный у опасных прототипов. Я запускаю его в Windows 7 x64 с WinLirc 0.9c. Но иногда устройства просто неожиданно зависают, и мне нужно удалить и снова подключить его, чтобы он снова заработал. Отключение и включение com-порта в диспетчере устройств часто приводит к появлению сообщения об ошибке с окнами о том, что устройство не может быть активировано.

Так что это похоже на аппаратную проблему, связанную с IRTOY. Сейчас я ищу устройство для отключения питания через USB. Он должен быть в состоянии отключить питание устройства удаленно. Это может фактически имитировать физическое удаление устройства из порта USB, как реле с разъемами USB мужского и женского пола.

Есть ли решение этой проблемы?

1 ответ1

0

Очевидно, что IRTOY имеет ошибку и нуждается в полной перезагрузке, и отключение питания - единственный способ сделать это. Плохой.

Одним из решений для переключения питания VBUS с помощью программного обеспечения является использование USB-концентратора с переключаемыми контроллерами питания портов (их обычно сложно найти, но все же проще, чем найти системную плату ПК с контроллерами питания портов). Затем вам нужно выполнить ClearPortFeature (PORT_POWER) для порта с подключенным IRTOY, а затем SetPortFeature (PORT_POWER).

Как именно это сделать из пространства приложения, я не уверен, но бесплатный просмотрщик USB-устройств (от Uwe Sieber) может отключать и включать порт VBUS, используя всплывающую опцию "Перезагрузить устройство". Имейте в виду, что к USB-порту обычно подключен значительный конденсатор, поэтому для прокачки VBUS может потребоваться некоторое время, поэтому команды "Очистить" и "Установить" должны быть правильно разделены во времени. К сожалению, USBTreeView делает это слишком быстро. Кроме того, вы можете перезапустить весь концентратор, для отключения VBUS на его нисходящих портах требуется достаточно много времени.

Если у Уве нет открытого исходного кода, вам нужно перейти в Microsoft SDK для получения основного исходного кода USBView и выяснить, как выдавать команды отключения / включения порта для драйвера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .