Fix for Windows 10 "It looks like your Bluetooth receiver is turned off" problem (BleWin10Lib.dll error 126)

Symptoms: In Windows 10, you cannot connect you trainer or other BTLE devices with Zwift. You have a Bluetooth adapter that works in Windows 10 but that damn Zwift squirrel keeps telling you “It looks like your Bluetooth receiver is turned off” even though it is most definitely on. You have no issues using Trainerroad, The Sufferfest, etc through Bluetooth.

Check your latest Zwift log. You might have the follow error in it:

Could not load the Windows BLE DLL BleWin10Lib.dll due to the following error 126

If this happens to you it’s likely that your system is missing VC runtime DLLs, or you got caught with a buggy version of the installer that caused these dependencies to be broken.

The simplest fix for this problem is to uninstall and reinstall the VC libraries, both 32-bit and 64-bit. The forum won’t let me include links, but if you Google “microsoft visual c++ runtime installer” the first result from Microsoft titled “The latest supported Visual C++ downloads” will get you going. Make sure to install both 32-bit and 64-bit versions.

If you want to be sure this is your problem you can try opening BleWin10Lib.dll (it is in the Zwift installation directory) in Dependency Walker or another similar tool. If the dependencies are broken or missing you’ll see it complain about these missing:

  • MSVCP140.DLL

In any case, reinstalling those dependencies shouldn’t be harmful, and will most likely fix your troubles if you’re seeing the error 126 message in your Zwift logs. On my particular system those were not installed, and installing them and relaunching Zwift immediately fixed the problem.

This has been driving me batty for the past several months. I thought I would post how I fixed this problem in case I need it later or it helps someone else.

x86: vc_redist.x86.exe
x64: vc_redist.x64.exe

There’s also this: Visual C++ Redistributable Runtimes All-in-One (Jul 2022) Download | TechPowerUp

Just an anecdotal debug on this that may be useful for someone, or Zwift HQ.

Asking around for examples of USB Bluetooth dongles that worked fine with Zwift out of the box, all appear to be either Qualcomm or Broadcom chipsets. The two I’ve had issues with have both been Realtek chipsets. All were different brands of dongle.

Whether the above is relevant or just a coincidence I’m unsure, but the all-in-one package installer I linked to above (extract all, run the installer as Administrator, reboot afterwards) has worked perfectly to bring my new Realtek-based dongle to life in Zwift and allow pairing as normal.

Wow thanks for the fix, I got it working after installing the VC libraries as suggested.
For the record I’m using a Dell computer with no build in bluetooth, and a USB tp-link UB400 Bluetooth 4.0, I’m actually not sure if this one is Realtek-based.
I can’t believe there is not much information about this issue out there, thanks for sharing.

An update - since installing the VC libraries the Bluetooth receiver has been working very, very well. This solved some annoying dropout issues I was getting with ANT+ (10% rx fail even with the dongle right next to the trainer, led to a dropout every hour or two which was driving me batty).

My chipset is a Qualcomm QCA9377 if that helps.

I think in my case the VC redist libraries weren’t installed because I had done a clean installation of Windows 10 on that PC and have only a few things on it. Also, I’m not sure you need both the 32-bit and 64-bit versions, but installing both definitely doesn’t hurt.

I still think Zwift should show some kind of error message in cases where it can’t actually load the BleWin10Lib.dll Bluetooth DLL because I only discovered/fixed the issue almost by accident.

I’ve trriedd this and the all in one solution. Nothing has worked.

Ughhhh. Horrible support from zwift as you cannot reach a human.

My log is showing this

[16:07:18] BLE : Native BLE - Bluetooth Radio NOT Found.

However I can manualy add the HR strap from windows

Appears that bluetooth dongles with CSR internals don’t work. I have tried two. The following dongle works out of the box ASUS - USBBT500

Installing the missing VC++ will only fix the “Could not load the Windows BLE DLL BleWin10Lib.dll” error message above. If you’re not seeing that it’s probably something else.

One thing to try is adjusting the privacy settings in Win10 under “Other devices” → “Communicate with unpaired devices”. Also you can try unpairing the device from your PC if you paired it outside of Zwift.

If I had to guess from your “Bluetooth Radio NOT Found” error message, for some reason Zwift’s Bluetooth DLL doesn’t like those dongles. That doesn’t make sense but some of the Amazon reviews of CSR-based dongles (which claim BLE support) have warnings about not being able to pair with some devices. I haven’t had that problem on the systems I’ve tried but they’ve had “normal” built-in bluetooth (macOS, iOS/iPad, Qualcomm w/Win10).

Your comment about not being able to reach a human is unfortunately par for the course for venture-backed companies. They like to invest in “scalable” companies, and guess what isn’t scalable? Hiring humans to provide support. And apparently fixing long-standing UI/UX problems :stuck_out_tongue:

In any case sounds like you were able to get the ASUS adapter working - hopefully that has been stable for you.

This fix my issue with update 1.33, thanks so much!!!