Option to force connection type to always be bluetooth or ant+ when both are available

I have a Wahoo kicker. I want it to always connect via blue tooth. I have a garmin chest strap heart rate monitor which requires ANT+ so I run both connection types. The kicker sometimes seems to find the ant+ connection before the blue tooth and to force the connection I have to manually disconnect the three kicker connections and search and manually select the blue tooth connections. It would be convenient to have a option or set of options to force each connection to always connect to either blue tooth or ant+. It would also be nice if, when there are multiple ways to connect, each connection indicated if it was blue tooth or ant+ .

Same happens on my Kickrbike; since I’ve switched and use it on BT, Power and Cadence find and connect via BT, but Controllable generally is picked up via ANT+ while waiting on my HRM to connect via ANT+

Fortunately it doesn’t automatically go straight into the main menu; however, it is something that I have to switch… every single time I start Zwift.

Both of my computers do this for the record, it’s not something on my end. I’ve cleared out the paired devices config files and all related; and despite never selecting ANT+ Controllable, it still picks it up and sets it.

Sometimes I get lucky and the BT Controllable on my kickrbike is found, at which point it does go straight into the main menu, but that’s … been a <1% chance at the going rate.

Once you pair something it is saved in the knowndevices.xml file and will be found again in the future. But you can delete or edit that file to remove the entries you don’t want to use if you’re using PC or Mac, then take care to only pair it using the desired protocol the first time you connect it after making that change. If both ANT+ and Bluetooth entries are present in the file, chances are ANT+ will win because it pairs so much faster than Bluetooth. The pairing screen usually gives a clue about which one is being used since their names are typically slightly different.

(I have no problem with your feature request, I just hope you can find a viable workaround since you’ll probably be waiting a long time or forever for this feature.)

Hi @Jim_Crawford welcome to Zwift forums!

Shuji at Zwift HQ here.

I get where you’re coming from, but this is the nature of Bluetooth vs ANT+ signal broadcast behavior. For example - the Resistance (fka “Controllable”) signal over Bluetooth doesn’t begin to broadcast until the trainer’s Power signal is bonded to Zwift, and becomes visible ~10 - 15 seconds after that.

Meanwhile, the Resistance signal over ANT is always broadcasting, so it’s immediately visible to Zwift and is why that bonds first.

If the trainer is never selected by the user to pair via ANT+, should it automatically pair via ANT+ when the user has previously chosen to pair it via Bluetooth? IOW will my suggested workaround succeed? Let’s say we start with the ANT+ dongle removed and knowndevices.xml deleted. We pair via Bluetooth. Then we relaunch with the ANT+ dongle inserted. What happens then?

1 Like


My neobike near-instantly and simultaneously pairs power, controllable, and cadence over BT, and then I have to wait for steering to pair 10-15s later, and my BT HRM comes in at the same time as steering.

Do any device settings ( =0, =1 ) in knowndevices do anything? I know in the past they didn’t but I haven’t played with it in a while. Also a =-1 setting could be added, and used to blacklist devices from pairing.

In my case; it immediately wants to attach my Kickrbike’s ANT+ signal; despite never choosing it, and yes after deleting the knowndevices and removing all devices in the prefs file as well.

I want to try one thing tonight though; delete that part of the knowndevices file and set it as read-only. I almost replied about doing that earlier today, but thought it might break something…

But I think I’m going to try it regardless.

Meanwhile what is hilarious is Zwift picking up all of my bluetooth LED lights in my room :rofl:

(I’ve had to change how some are programmed / wired due to them flickering whenever Zwift boots up, I guess when it was seeking connections)

(I will follow up if read-only sorts the issue on my end; granted I realize this probably isn’t a solution for non-Windows users)


When “preferences” are not actually preferences

1 Like

Okay well that was too easy to get the answer… the answer is no lol.

because why would it work the way it should? :rofl:

(see resistance device if confused)

I will say, it did something different; like it went to some sort of backup method of choosing devices?
It took longer than I’m used to, choosing and picking up devices…


This has been posted in the Feature Request section of the forum. It’s a request to let the user pre-define which devices/connections should be picked up by an instance of Zwift. Implementing this feature would also fix an issue for those with multiple devices in one location, be that home users or gyms. Replying “that’s just the way it works” is missing the point.

1 Like


Understood. I’m shedding light how it works now, not poo-pooing an idea for a future improvement.


So, I deleted the knowndevices file. I disconnected the ant+ dongle. I started zwift. It indicated the power, cadence and resistance were all connected via blue tooth. Obviously cause there’s no ant+ connection. The knowndevices file doesn’t seem to get written till you exit zwift. So… I exit zwift and it creates a knowndevices file WITH ONE LINE in it. I would have expected 3.

[1] [373527125] [0] Wahoo KICKR 831C 85

Connect the ant+ dongle. Restart zwift. cadence and power connect with bluetooth. Resistance connects with ant+. Close zwift. so now what’s in the known devices file?

[1] [373527125] [0] Wahoo KICKR 831C 85
[0] [754460] [0] Powermeter 33564
[0] [1147676] [2097153] WAHOO FE-C 33564

33564 and FE-C 33564 are the names for the ant+ connection 831C 85 is the name for the bluetooth connection. so why are there two bluetooth connections and one ant+ connection when the connection names displayed indicated everything was bluetooth?
So restart zwift. all three devices show the bluetooth connection name. close zwift. check the knowndevices file. it reads the same as above. It has not changed to indicate the bluetooth connection for the later two devices.
start zwift again… power and cadence connect via bluetooth resistance connects via ant+.
lets edit the file.

[1] [373527125] [0] Wahoo KICKR 831C 85
[0] [754460] [0] Powermeter 831C 85
[0] [1147676] [2097153] WAHOO 831C 85

start zwift. everything connects with the bluetooth connection name. close zwift. check the file.

[1] [373527125] [0] Wahoo KICKR 831C 85
[0] [754460] [0] Powermeter 831C 85
[0] [1147676] [2097153] WAHOO FE-C 33564

It’s changed the last line back to the bluetooth connection… why?? I’m sorry, but something is really messed up here. This isn’t even a feature request anymore I think this is now a defect. I have no idea what zwift is doing with that file or why. Clearly, I’m missing something here.

1 Like

I already have pointed this issue out on multiple occasions but nothing has happened. I just guess it’s not important enough.

"Thanks for calling the Zwift Hotline. Your call is important to us. Please stay on the line until your call is no longer important to you.