Skip to content

Latest commit

 

History

History
103 lines (68 loc) · 3.78 KB

File metadata and controls

103 lines (68 loc) · 3.78 KB

Quickstart — apply the fix in 5 minutes

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.


1. Open PowerShell as Administrator

Press Win + X → click "Terminal (Admin)" or "PowerShell (Admin)".

If Windows asks "Do you want to allow this app to make changes?" click Yes.

2. Allow running scripts (one-time)

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

3. Download and run the master fix

Invoke-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:

  1. Find your Bluetooth device and pin its driver to BTHUSB (the standard Microsoft Bluetooth USB driver).
  2. Disable any other Bluetooth radios in your system (built-in, USB dongles).
  3. Blacklist the vendor's broken driver so Windows can never re-install it.
  4. 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":

  1. Unplug your Bluetooth USB dongle from the PC.
  2. Wait 5 seconds.
  3. Plug it back in into a different USB port (preferably USB 2.0, not USB 3.0).
  4. Wait 15 seconds.
  5. Press Enter to continue the script.

4. Reboot

Restart-Computer

5. Verify

After reboot:

  • Open Settings → Bluetooth & devices. The toggle should be ON.
  • Open Device ManagerBluetooth. You should see one "Bluetooth Adapter" or "Generic Bluetooth Adapter" with a green check.
  • Click "Add device" in Settings to pair a new device.

If something goes wrong

"Device still shows red X after reboot"

# Force-reapply the lockdown
powershell -ExecutionPolicy Bypass -File "C:\Windows\System32\BT60_Lockdown.ps1"

"BTHUSB event ID 6 in System log: Only one active Bluetooth adapter"

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>"

"I want to undo everything"

# 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"

What just happened (one-paragraph version)

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.