LUNATICOASTRO.COM

Remotely unplugging a USB device

So you’re sitting comfortably at your observatory, or even at your home (maybe far far away from the telescope) and you need to unplug and replug some device… the only way seems to be resetting the computer and that takes quite a long time.

We’ll that was my case when I was testing some new firmware for the Seletek, and after quite a few google-research, I found the following solution:

First of all, download and install the “devcon” utility from Microsoft.

Once installed, you’ll have to find your offending device hardware I.D. Just launch the device manager (should be available from the control panel, system, hardware), and look for your device:

Remotely unplugging a USB device

You may ask now: but if it’s an USB device, why it is under “Ports” and not under “Universal serial bus” ? The truth is you can find USB devices under Ports (if they are mimicking a serial or parallel port), or under “Astroimaging equipment” (that’s the case for some QHY cameras), and many other places, that’s up to the developer of the driver.

Back to our subject, please double-click now your device and select the “Details” tab, then scroll to “Hardware ID”:

In our case, you can see “USB\VID_16C0&PID_09B0” at the second line.

Now it’s time to use the DEVCON utility; in my case, I wrote a small batch program (those old “.bat” files), with these lines inside:

c:\tmp\devcon\i386\devcon disable USB\VID_16C0*PID_09B0*

c:\tmp\devcon\i386\devcon enable USB\VID_16C0*PID_09B0*

(of course the “c:\tmp\devcon\i386” should be replaced with the actual folder of your devcon installation) … and saved the “.bat” file to the desktop.

Important: no program should be using the device for this to work. In Seletek’s case, that means closing all Seletek programs before launching this devcon.

… now that I’m writing this, I very much bet this is the same as manually disabling/enabling the device from the device manager, will have to try. This method is at least far more comfortable.