How to reset the USB connection to the LimeSDR

I’m on Windows and sometimes when running some programs the USB connection to the Lime would have issues and I wouldn’t be able to access it anymore.

I tried restarting the PC, disabling then enabling the Lime, updating its driver, but I still can’t access it. I’m seeing Unknown USB Device (Device Descriptor Request Failed).

The simple solution, if you’re close to the device, is to disconnect then reconnect it. But what can you do if you don’t have physical access to the device? @andrewback @Zack Is there any way to reset the device, either through software or hardware? I’ve seen the FX3 RST button on the board, can it help, and is it possible to trigger it through some pins?

I already found a discussion on how to fix USBDeviceOpen: another process has device opened for exclusive access through software on Mac

My guess is that the LimeSDR has suffered a power brown-out and crashed, hence can only be reset by re-plugging to power it off an on again. I’d first try a different cable/port/power supply, to see if you can prevent this from happening. Failing which, I’m not sure about triggering an external hardware reset, but @Zack can likely advise.

I use limesdr_stopchannel from https://github.com/emvivre/limesdr_toolbox to reset the LimeSDR in a programmatic way. limesdr_stopchannel appears to have the same effect as the FX3 RST button.

Although it is also possible that there is another application that has control of the USB port. In that case, limesdr_stopchannel will print an error because it is unable to access the LimeSDR.

Thanks Andrew. The last time it happened, it might have been some software issues: I started my program, forgetting to first stop Pothos. My program displayed errors and I had to kill Pothos as it didn’t seem to want to shut down properly.

This may be linked to my other question "[ERROR] Read(64 bytes) failed" and "cannot deliver frequency" after receiving for some time