Driver Installation
While some SDRs are automatically recognized by Windows, many RTL-SDRs and similar SDRs still require manual driver installation. The most popular way to do this is with Zadig. On paper, Zadig does support ARM64 for WinUSB and libusb-win32 backends - but there's a catch (of course). As is documented in this issue, Zadig cannot install drivers on Windows for ARM64 with Driver Signature Enforcement enabled. The general impression is that the bug is on the Windows side, but Pete Batard (Zadig/libwdi's developer) has opened the door to others who can help with the issue.
To further complicate the issue, booting Snapdragon X laptops without Driver Signature Enforcement can be problematic. On my machines, it simply boots to recovery if I attempt to disable it through Advanced Startup. There is a solution through disabling secure boot and some bcdedit commands - but this method is insecure. If you can rely on WinUSB (and most SDRs can), you can avoid the issue altogether by using Device Manager itself, and a registry edit for the trickier SDRs.
Manual WinUSB Installation
These directions are adapted from the official Microsoft instructions for this specific use case.
- Plug in your SDR
- Right-click on the Start button and choose "Device Manager"
- You should find your SDR under "Other Devices". With some SDRs, there may be more than one device shown. These are known as Composite Devices.
- If you are in this situation, double-click on one and go to Details > Hardare Ids. For RTL-SDRs, you want to choose the one that ends in MI_00, as shown here. Take note of this hardware ID for later.
- Whether your SDR shows as one device or two, go to the Driver tab and click Update Driver.
- Choose "Browse my computer for drivers."
- Click "Let me pick from a list of available drivers on my computer."
- From the list, pick "Universal Serial Bus devices" and click Next.
- Click "WinUsb Device" on both the left and right, then click Next.
- Windows will complain that the driver is not recommended. Too bad - we know better. Click Yes.
- Windows will now inform you that the driver installation has succeded.
Additional Steps for Composite Devices
If you only had one unknown device in step 3 - that's all you need to do! You are ready to use your SDR in your favorite program. However, if you had a composite device, there are additional steps.
- Open PowerShell and type New-Guid. Save the generated GUID for later.
- Right-click on the start button and "Run"
- Type "regedit", then click OK
- In regedit, go to Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB and look for the device ID you found in step 4 of the main installation instructions. Open the Device Parameters folder that is nested one under the Device ID.
- Right-click in the white space and go to New > String Value
- Name the value "DeviceInterfaceGUID"
- Double-click on your newly created registry key, and set it to the GUID you created in step 1, surrounded by {}
- Unplug and re-plug your SDR into the same port, and that's it! You should now be able to use your SDR in your favorite program.