For the past two months or so I have been using a Wahoo Kickr Bike with with an Apple TV and use my Apple Watch for heart rate monitoring. It has been a terrible experience. I pretty much always get it to run eventually, but troubleshooting adds 5-10 minutes to my workout. That’s too much. It often requires a reboot of Watch or sometimes Phone. I understand that Apple’s poor implementation makes this a hard engineering problem to solve (BT device limits on the Apple TV, Apple Watch limitations). But Zwift makes all of this much harder with a lack of transparency that makes debugging this a blind trial and error exercise.
And yes, I did read the best practices web page and the Apple Watch Issues Article. I did cross check Wifi networks, monitored Wifi packet drop rates (almost zero, < 3 meter from the closest AP with a backup within 5 meters, measured packet loss at the AP is under 10E-4, all devices are running on a network that allows direct connections between devices) and made sure there are no Bluetooth issues.
First, there are a number of different failure modes:
Zwift shows watch is connected, but no data. This is the most common failure mode. I am starting Zwift on Apple TV, start the companion app on the iPhone and they connect after a few seconds. Zwift heart rate app auto-launched on the Apple Watch. However Apple Watch app shows not connected (“unpaired” IIRC) and Zwift App shows no data.
Apple Watch App exits, Zwift shows a static heartbeat. This is bad as I often don’t notice immediately. In a recent run, I was running for a few minutes with a constant 69 bpm heartbeat.
Zwift Companion fails to connect to Zwift. Rare and usually is fixed by restarting all parts (Apple TV App, Watch App, iPhone Companion App).
If I run into these issues I usually try in this order:
- Restart iPhone Companion App only.
- Stop Apple Watch App, then restart iPhone Companion App.
- Quit all three apps, and restart them (Apple TV first, then iPhone)
- Reboot Apple Watch, then do (3)
- Reboot iPhone and Apple Watch, then do (3)
Usually one of these fixes it, but going through the list takes a fair amount of time.
What can Zwift do better? Ideally, make this more stable and have it work out of the box. If that is hard, it would help to at least give system debug information that allows us to troubleshoot this more easily. Specifically:
- Can you show me IP addresses of each component, and at what IP addresses they try to contact each other.
- Can you show what has connectivity to what other devices. If there is a connection error, what is the error.
- If heart rate is no longer received, throw an alert and give me an option to pause my ride so I can fix it.
And as a bonus, please fix the bug that Zwift sometimes loses sound on the Apple TV when re-started. I sometimes have to chose between no heart rate or no sound as one of the two isn’t working.