I had a CycleOps Mag trainer, Garmin ANT+ Cadence & Speed sensors, Garmin HRM setup at first, so I got the ANT+ dongle and connected to my All in one PC. It worked, but the graphics were bad, and it was cramped in the home office. I went through all of these same decisions mentioned in this thread, and ended up getting the 4iiii HRM and an Apple TV 4K.
In the meantime, I have used the Companion app on an old iPhone 4, an old iPhone 6, Galaxy S7, and Galaxy S8+. Honestly, I never could get the BLE devices running on any of them through the Companion app. The settings tab has a switch to allow connections, but none ever appeared for me. The Companion screen icons look only slightly different in each version, but otherwise the app seemed to work the same on all. So I used the 4iiii app on the iPhone to connect the Garmin Speed and Cadence to the HRM, then I’ve not had to go back to it (except for troubleshooting the issue below).
Now I have the 4iiii and the ATV remote as my only two BLE devices, and it picks up everything. No devices are connected to the companion app. There are only a couple of issues that I’ve found, and it seems to happen about half of the time. I launch Zwift on the ATV, and it immediately closes. I reopen again, and usually by the 3rd time it stays open. (I’ve found that to be the case with other users here on the forums, so I don’t worry about it now.) Once Zwift opens, I choose my profile, and it immediately senses the HRM, Cadence, and Speed sensors.
I pick my training course or workout, and off I go… unless i don’t. Sometimes I can see my heart rate on the screen, and I get a value for cadence, but the speed stays at 0. I can go back to the pairing screen, and it shows all 3 values perfectly - but then I go back to the riding screen and my speed stays 0. At first I checked connectivity with 4iiii, tried new batteries, etc. Turns out that it’s much simpler than that. Turns out it’s just the Zwift app on the ATV.
If I choose to unpair, and repair - it then shows my 4iiii connection as a Power Source and not as having a Speed Sensor. I switch it to Speed Sensor for pairing, tell it I have a CycleOps mag trainer, and then it works great for a session or two. I should also note that if this process goes wonky, I double-click the home (TV) button on the ATV remote, force close Zwift, and reopen. It’s not that bad - it just sounds tedious in a forum post. In practice it’s very quick.
Even with all of this detail, it seems like it’s so much better of an experience than it did with the ANT+ dongle on the pc.