Aparentemente, o IRTOY tem um bug e precisa de reinicialização total, e o desligamento é o único meio de fazer isso. Ruim.
Uma solução para alternar a energia VBUS por software seria usar um hub USB com controladores de energia de porta comutáveis (geralmente são difíceis de encontrar, mas ainda mais fáceis do que encontrar uma placa-mãe de PC com controladores de energia de porta). Então você deve administrar o ClearPortFeature (PORT_POWER) para a porta com o IRTOY conectado e SetPortFeature (PORT_POWER).
Como exatamente fazer isso do espaço do aplicativo eu não tenho certeza, mas o Visualizador de Árvore de Dispositivos USB livre (por Uwe Sieber ) pode definir a porta VBUS desligado e ligado usando a opção pop-up "Restart Device". Tenha em mente que uma porta USB geralmente tem um capacitor considerável conectado, portanto, pode levar algum tempo para sangrar o VBUS, portanto, o comando Limpar e definir deve estar corretamente separado no tempo. Infelizmente, o USBTreeView faz isso muito rápido. Como alternativa, você pode reiniciar o hub inteiro, leva tempo suficiente para desligar o VBUS em suas portas downstream.
Se a Uwe não tiver seu código-fonte aberto, você precisará acessar Microsoft SDK para o código-fonte USBView principal e descobrir como emitir os comandos de habilitar / desabilitar porta para o driver.