If your Bluetooth USB dongle (Barrot BT60, BRLINK, or any Bluetooth USB device that Windows refuses to recognize as Bluetooth) is broken on your PC, this is the shortest path to fixing it.
Press Win + X → click "Terminal (Admin)" or "PowerShell (Admin)".
If Windows asks "Do you want to allow this app to make changes?" click Yes.
Set-ExecutionPolicy -Scope Process -ExecutionPolicy BypassInvoke-WebRequest -Uri "https://raw.githubusercontent.com/IroScript/windows-blocked-barrot-bluetooth-driver-solved/main/scripts/bt60_permanent_v2.ps1" -OutFile "$env:TEMP\bt60_fix.ps1"
powershell -ExecutionPolicy Bypass -File "$env:TEMP\bt60_fix.ps1"The script will:
- Find your Bluetooth device and pin its driver to
BTHUSB(the standard Microsoft Bluetooth USB driver). - Disable any other Bluetooth radios in your system (built-in, USB dongles).
- Blacklist the vendor's broken driver so Windows can never re-install it.
- Install a scheduled task that re-asserts all of the above on every boot.
When the script prints "Please press Enter when BT60 is replugged":
- Unplug your Bluetooth USB dongle from the PC.
- Wait 5 seconds.
- Plug it back in into a different USB port (preferably USB 2.0, not USB 3.0).
- Wait 15 seconds.
- Press Enter to continue the script.
Restart-ComputerAfter reboot:
- Open Settings → Bluetooth & devices. The toggle should be ON.
- Open Device Manager → Bluetooth. You should see one "Bluetooth Adapter" or "Generic Bluetooth Adapter" with a green check.
- Click "Add device" in Settings to pair a new device.
# Force-reapply the lockdown
powershell -ExecutionPolicy Bypass -File "C:\Windows\System32\BT60_Lockdown.ps1"There's still another Bluetooth radio enabled. Run:
# Find all Bluetooth radios
Get-PnpDevice -Class Bluetooth | Format-Table Status, FriendlyName, InstanceId -AutoSize
# Disable the ones that aren't the BT60
# (substitute the InstanceId of the wrong one)
pnputil /disable-device "<wrong-instance-id>"# Remove the scheduled task and the lockdown script
Unregister-ScheduledTask -TaskName 'BT60 Lockdown' -Confirm:$false
Remove-Item 'C:\Windows\System32\BT60_Lockdown.ps1' -Force
# Remove the SearchDisallowedDrivers policy entries
Remove-ItemProperty 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching\SearchDisallowedDrivers' -Name 'brbtusb.inf' -ErrorAction SilentlyContinue
Remove-ItemProperty 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\DriverSearching\SearchDisallowedDrivers' -Name 'brtlinkusb.inf' -ErrorAction SilentlyContinue
# Re-enable competing radios
pnputil /enable-device "USB\VID_13D3&PID_3402\ALASKA_DAY_2006"
pnputil /enable-device "USB\VID_0CF3&PID_3004\ALASKA_DAY_2006"Your Bluetooth USB dongle had a vendor driver that registered itself as a "lower filter" on the standard Windows Bluetooth driver. That filter was broken, so the standard driver couldn't start, and Windows kept trying to re-install the broken vendor driver every time the device was plugged in. The fix replaces the vendor driver binding with the standard Microsoft Bluetooth driver at the registry level, locks that binding so Windows can't undo it, and disables any other Bluetooth radios on your system so only one stays active.
End of quickstart. See GUIDE.md for the detailed walkthrough.