Fix for "USB Open error -12" in libusb.dll applications


Premium Subscriber
May 27, 2017
Like many newbie rtlsdr enthusiasts, I began my quest for information by reading, reading, reading. Along the way I discovered there are many different packages available to use on Windows and Linux that interested me. Once I had some basics down and realized how little RF knowledge I have I began to look at the more specialized applications available for Windows. The first one I installed was RTLSDR Scanner. This application has many dependencies, one of which is libusb.dll. Several Windows applications have this dependency, URH is another application with this dependency, for example. RTLSDR Scanner was well suited for my purposes but would not run, quitting with the "USB Open Error -12". URH fared no better. I read every forum posting and article I could find but none helped me resolve this issue. I then attempted to get both working on a laptop, same issue. I moved to another laptop and was surprised to find it worked. All the same OS, same build, same drivers. I was at a loss. My son also let me know he was having the same issue on his laptop, but I couldn't easily see his configuration and I believe his OS version to be different. I moved on for a few days until...

It wasn't until I noticed a discrepancy in posted explanations of the Zadig driver installation process that I realized what was different between my laptops and desktop. The laptop that worked had the driver installed for the composite device, while both desktop and second laptop had the driver installed for "Bulk Interface (0)". So far I'd only read one guide mentioning installing for the composite, the one that caused me to go look at all three to begin with. Figuring it would not make my situation worse I removed the device and drivers from my desktop (with SDR plugged in...Device Manager, right-click device, Uninstall, check box to remove drivers). I then ran the Zadig installer, checked the entry for "List All Devices", then cleared the check for "Ignore Hubs or Composite Devices". I then located the RTLSDR???? (Composite) entry and installed the driver for this device only. Zadig installer prompted me that I was replacing a system driver, I accepted and closed the Zadig installer.

I tested the apps dependent on libusb.dll, all work as expected. All of my other Windows applications work as well, including SDR# (uses another version of libusb.dll). While YMMV I can say that I've done this on 3 Windows 10 x64 PCs, and my son has done this on his Windows 8.1 x64 PC and all have had no further issue with libusb.dll or any Windows applications.

I hope this helps someone who has given up on using any of these great applications on Windows. Of course if it would be helpful I can create a nice PDF with screenshots and markup but I do that frequently at work and preferred to wait as I have been procrastinating posting this already.

Aug 7, 2017
hey thank you

I was having the same problem and throwing my hands up when I saw your post. I think I will throw the write-up together for you, I have spent hours poring the internet trying to find a solution and then I saw your wonderful run-on sentences, and after reading them several times I realized I had to do the same thing.

Thanks again!

(P.S. I worked in Public Safety radio, and now work in Commercial radio, and I still couldn't figure it out.)
Oct 27, 2017

I was having this exact problem trying to use a RTL-SDR on Windows 10, and your fix works great. Thanks a lot. Wish there was a more straightforward way to install these things. From a programming standpoint, rtlsdr_open was returning an error code of -12, probably passed as a result from libusb / WinUSB.


Database Admin
Dec 19, 2002
Ontario, Canada
+1 for this! Installed DSD+ on a newer Win10 laptop and FMP24 refused to play nice (unable to open USB device etc) however both SDR# and SDR Console would work fine. Following the advice above I deleted the Bulk In devices then only installed the WinUSB driver for the RTL Composite device.... problem solved!

Thanks for sharing this!