Everything you ever wanted to know about ANT+ FE-C and bike trainers

    0

    DSC_6399

    As we near trainer season, I’ve seen an uptick in interest in understanding what exactly ANT+ FE-C is, and why it matters when it comes to choosing a trainer (or an app, or a bike computer).  So I figured I’d put together a bit of an overview on the technology and why it might matter for your trainer purchasing decisions coming up this fall.  Or, if you already have a trainer, then perhaps you’ll find it’s already enabled for ANT+ FE-C and you can start using those functions today.

    Whether you’re a seasoned pro or a first timer, there’s plenty to cover.  So we’ll start with a brief history lesson first.

    The Background and Basics:

    DSC_6429

    So if you turn on the way-back machine, you’ll remember to just about 4-5 years ago when each trainer company had their own fiefdom ecosystem.  CompuTrainer only worked with RacerMate stuff.  Tacx only worked with Tacx stuff.  CycleOps only with CycleOps stuff.  Basically, each company in the market made both the hardware and the software, and charged you quite a bit of money for both sides of the equation.

    However, starting 5 years ago in September 2011 then 2-man shop TrainerRoad came along (that post is a solid blast from the past for the now 48 person TrainerRoad company).  Their goal was to develop an app that you could use with any trainer with speed sensors and known power curves.  That’d quickly morph into being able to control trainers, starting first with the CompuTrainer.  Soon we saw PerfPro in 2012, along with Kinomap.

    However the challenge for TrainerRoad (and soon other apps) was that each company had their own protocols for communicating.  When TrainerRoad added Wahoo KICKR support to change resistance levels automatically based on structured workouts the following year, they had to manually add that in.  Then again more work to add in CycleOps trainers.  And rinse and repeat for each and every trainer brand (and sometimes even trainer models).

    All of this ends up being a lot of work and churn for app companies, but also for trainer companies.  They need to maintain their API’s and support them.  And most importantly – it was a complete and total cluster for consumers.  New trainers took months to be supported (if at all), and old trainers sometimes were deemed too old to be supported.  Then there was the matter of 20+ trainer apps in the market as of just two years ago, increasing the compatibility complexity matrix.

    Now what’s interesting here is that these different companies actually mostly used ANT to communicate.  CycleOps used a private version, as did Tacx and Wahoo.  Each were kinda similar, but still different enough that they weren’t compatible.  So about 3-4 years ago ANT+ (the entity, technically Dynastream) started an effort to create a trainer control protocol.  After significant delay and years of demos, that was released last spring (2015) and companies actually implemented it, starting with Tacx announcing support and Zwift/TrainerRoad/Kinomap support on basically the same day.

    The new protocol would be known as ANT+ FE-C, with the FE-C standing for ‘Fitness Equipment Control’.  The idea being it could do more than just trainers, but also things like rowers, treadmills, and other gym equipment.  But trainers were definitely front and center.

    FE-C is really about control.  It’s about having one device (an app, bike computer or something else) control another fitness device (i.e. a trainer).  It allows you to set wattage levels (or resistance levels) so that you can have the trainer respond to a given program.  The most common uses of this are re-riding courses from outside (i.e. Alpe d’Huez), riding a specific structured workout (often known as ‘Erg’ mode), and then setting a specific resistance or incline level (i.e. 5% incline).

    Once you have that basis for moving forward, virtually every trainer app or deice can then use one of those core functions to re-create anything you can possibly imagine on a bike.

    The Trainers:

    DSC_6384

    So now that the protocol was established, it became time for trainer companies to actually implement it.  This was always a bit of the red herring, as companies had literally promised support for it for years, but nobody actually walked the talk and did it.  Bkool demo’d it for two years worth of trade shows, but again, didn’t implement it.

    It was finally last June (2015) that Tacx bit the bullet and on a single day rolled it out to their trainers, concurrently with Zwift, TrainerRoad, and Kinomap leading the way.  Ironically these three had both the most to lose and the most to gain with FE-C.  They were (and are) the big dogs in trainer apps.  On one hand they could have ignored FE-C and just ‘made’ trainer companies work with them individually (hurting their smaller competitors).  Yet on the other hand, adopting FE-C would significantly reduce their development work by having a single protocol to support trainers.  Without them coming onboard though, FE-C likely would have faltered.

    When Tacx rolled it out, they did so for all of their ‘Smart’ trainer lineup, which was basically the trainer lineup that offered dual ANT+/BLE communication.  Within two months, every other player in the market was announcing new trainers using ANT+ FE-C.   Any new trainers would leverage the protocol.

    Since last summer there’s been a pretty big collection of FE-C trainers announced or released.  Here’s the complete list:

    Trainers: FE-C Compatibility

    Brand Model Release State FE-C Compatibility
    Bkool Smart Pro Trainer Released Yes
    Bkool Bkool Classic/Pro Released Yes
    CycleOps Hammer Announced Yes
    Elite Drivo Announced Yes
    Elite Rampa Announced Yes
    Elite Qubo Digial Smart B+ Released Yes
    Elite Real E-Motion B+ Released Yes
    Elite Arion Digial Smart B+ Released Yes
    Elite Real Turbo Muin B+ Released Yes
    Elite Real Axiom B+ Released Yes
    Elite Real Tour B+ Released Yes
    Tacx Bushido Smart Released Yes
    Tacx Vortex Smart Released Yes
    Tacx Genius Smart Released Yes
    Tacx NEO Smart Released Yes
    Tacx Flow Smart Released Yes
    Wahoo Fitness KICKR Released Yes
    Wahoo Fitness KICKR SNAP Released Yes

    Oh, and for comparisons sake, here’s the list of common electronic trainers not compatible with FE-C:

    Trainers: Not FE-C Compatible

    Brand Model Release State FE-C Compatibility
    CycleOps PowerBeam Released No
    CycleOps PowerSync Released No
    Kurt Kinetic Road Machine Smart Control Announced No
    Kurt Kinetic Rock & Roll Smart Control Announced No
    RacerMate CompuTrainer (all variants) Released No
    RacerMate Velotron Released No
    Tacx Satori Smart Released No
    Tacx Bushido (non-Smart) Released No
    Tacx Vortext (non-Smart) Released No
    Tacx Genius (non-Smart) Released No (but can buy hardware upgrade kit)

    Now one last aside is that the majority of FE-C trainers on the market are also dual ANT+/Bluetooth Smart in some capacity.  Typically they support all or most of the following features:

    ANT+ Power broadcasting
    ANT+ Speed broadcasting
    ANT+ Cadence broadcasting
    ANT+ Trainer Control (FE-C)
    Bluetooth Smart Power broadcasting
    Bluetooth Smart Speed broadcasting
    Bluetooth Smart Cadence broadcasting
    Bluetooth Smart Trainer Control

    The main appeal of these individual device profile broadcasts is to connect to bike computers and/or devices/apps that don’t support FE-C.  It doesn’t allow control, but it does allow you to take your existing Garmin/Suunto/Polar head unit and simply connect to the trainer to display/record that data.  Whether it be power data or speed/cadence data.

    Typically speaking, I see the baseline for new electronic controllable trainers entering the market as:

    ANT+ Power/Speed data broadcasting
    ANT+ Trainer Control (FE-C) support
    Bluetooth Smart Power/Speed data broadcasting
    Bluetooth Smart Trainer Control support (open API for apps)

    Optional but useful features would be:

    ANT+ Cadence broadcasting
    Bluetooth Smart Cadence broadcasting
    Magic pony dust

    Finally, it should be obvious, but if we’re talking a sub-$100 trainer, or some other non-resistance controlled trainer then it doesn’t make sense to have resistance control.  Yet if we’re looking at a $500 trainer (even not resistance controlled), then in this day and age it should at least broadcast dual ANT+/Bluetooth Smart power and speed metrics. Cadence would be optional.

    The Apps:

    DSC_4831

    So what about apps?  After all – they were the big winner here with the adoption of FE-C by trainer companies.

    Virtually all of the major apps have adopted FE-C: Zwift, TrainerRoad, PerfPro, Kinomap, Bkool, and others.  I know, there’s plenty I’m not listing, but I will once I release my Winter 2016-2017 trainer app guide.

    However what you’ll notice about these apps is that they’re largely desktop apps.  In fact, most of the major apps are indeed primarily desktop apps, while most of the more boutique apps tend to be mobile/tablet apps.  The challenge with mobile/tablet devices is the lack of ANT+ compatibility.  While it can be found on many Android devices, it’s not available natively on iOS devices, which means significantly reduced market potential.  Thus many of the mobile apps turn to Bluetooth Smart for control of trainers.

    That works fine for many apps and trainers, but it’s an increased work load to support each brand’s variant of FE-C.  So if I was SufferFest for example, and wanted to support all the top-end trainer lineups on iOS, I’d need to (at a minimum) work with: Tacx, Wahoo, CycleOps, Elite, and Kurt Kinetic.  Each of those companies has one or more protocols for trainer support depending on how old a given model might be.

    Turning back to PC/Mac, for ANT+ FE-C compatibility on a desktop, you’d an ANT+ USB stick.  They cost less than $20, and you may even already have one floating around your house.

    You may be wondering why don’t desktop apps use Bluetooth Smart?  Well it really hasn’t been until the last few years that the base Windows OS platform actually supported Bluetooth Smart in any easy to use manner for apps (Mac has supported it for years now).  But that’s not really so much the issue, as it was that many people simply didn’t have Bluetooth 4.0 on older desktops/laptops that often get re-purposed as trainer computers.  Without Bluetooth 4.0 you didn’t have Bluetooth Smart (it’s a subset of Bluetooth 4.0+).

    And of course, that all still takes us back to the challenge of a lack of standardized way of talking to trainers over Bluetooth Smart (being each company is different).  Hence how FE-C found its opening.

    The Bike Computers:

    DSC_6418

    Next you’ve got bike computers that can control FE-C trainers.  This is where the waters get an itty-bit muddy.  See as it stands today only Garmin Edge units can control FE-C trainers, merely because they’re the only ones that have added the functionality.  Yet at the same time, the Wahoo ELEMNT can also control trainers, just not yet FE-C trainers.  Instead, the Wahoo ELEMNT can control the Wahoo trainers (i.e. KICKR/KICKR SNAP).  Wahoo says they’ll add FE-C compatibility in time for this upcoming trainer season though (actually, officially the PR quote is “before next trainer season”).

    Why would you want to control your trainer from your bike computer?  Well, it makes for the perfect trainer control keyboard, and it’s actually sweat proof – unlike your phone/laptop, or small child pressing the control buttons for you.  It’s a more elegant version of the old dedicated trainer control units that Tacx, CompuTrainer, CycleOps and others used to put out.

    But more than that – it allows a heck of a lot more integration between the outside world and the inside world.  Take a look at the Garmin Edge listing of functions that it can do for your trainer above.

    Here’s my simplified version of what all those actually mean:

    Follow a course: This means that if you create a course (typically on Garmin Connect) and send it to the Edge that it’ll use the elevation data from the course to control the incline of your trainer.  You can also ‘create a course’ from an existing workout too, on the unit itself.

     

    Follow an activity: This allows you to re-ride one of your completed activities, such as a past ride.  So if you went out last year and rode Ironman Canada, you could then select that activity and re-ride the course.  Sometimes though this can be a bit iffy depending on the elevation data (resulting in unexpected surges of resistance).

     

    Follow a workout: This allows you to create a structured workout, either on Garmin Connect or on the device itself. For example you can specify a warm-up, and then specify intervals a given intensity (i.e. 315w).  The trainer will automatically change resistance to meet those workout portions.  This is most akin to a typical ERG workout.

     

    Set Resistance: This allows you to set resistance at predefined levels.  These levels are somewhat arbitrary though, kinda like a gym stationary bike.  So it’s just up/down type options.  You can change the resistance level on the fly using a bit of a menu system.  I rarely (never) use this.

     

    Set Target Power: This allows you to set a specific wattage level, i.e. 305w.  You can change the level as you see fit manually, using a menu system.  I use this very often.

    Here’s the listing of ANT+ FE-C compatible bike units.  Oddly there isn’t any Garmin wearables with that capability, though technically someone could create a Connect IQ app for such wearables and publish it – but nobody has done so to date unfortunately.

    Garmin Edge 520: FE-C Compatible
    Garmin Edge 820: FE-C Compatible
    Garmin Edge 1000: FE-C Compatible
    Mio Cyclo 505: Not FE-C Compatible, but can control some trainers
    Wahoo ELEMNT: Not FE-C compatible yet, but can control Wahoo trainers

    When it comes to using FE-C to control my trainer from the Edge, the most common option I use is the ‘Set Target Power’ option, which simply allows me to specify a given wattage.  This same function exists on the Wahoo ELEMNT, and actually works a bit cleaner there, because I can easily press the up/down buttons to change wattage levels.  Whereas on the Edge I have to dig into a menu each time (ERG mode doesn’t allow up/down on the Edge, whereas Resistance mode does via the quick-drop menu).  But still, it’s not as efficient as the ELEMNT is (or even the old wired CompuTrainer handlebar controller).

    Either way though, it’s a lot cleaner than dealing with a keyboard and mouse (or wires) – so I’m still relatively happy.

    Frequently Asked Questions:

    image

    Here’s a round-up of things that I see most commonly asked regarding FE-C.  I’ll add to over time.

    How do I get my computer to control my trainer via ANT+ FE-C?

    You’ll need an ANT+ USB adapter.  If you used to have an older Garmin Forerunner watch that came with the little USB adapter, then you’re good to go!  Else, many trainer companies now include one.  Otherwise, you can buy any generic ANT+ USB adapter you can find, such as this one on Amazon for $19.

    Do I need an Edge to control my trainer for Zwift/TrainerRoad/etc with FE-C?

    Nope. Zwift will use FE-C to control the trainer directly, no Edge needed.

    Can I show my trainer data on Edge from Zwift using my trainer?

    Yes, however, you’ll want to ensure that if you’re using Zwift via FE-C to control your trainer, that your Garmin device isn’t also in trainer mode, as they could conflict.  Instead, add to your Garmin the trainer’s regular ANT+ power/speed/cadence broadcasts, so that it’s in ‘read-only’ mode instead of potentially control mode.

    Why isn’t my Edge unit seeing my KICKR/KICKR SNAP when I search for Indoor Trainers?

    More than likely your KICKR needs its software updated.  The KICKR/SNAP received *beta* updates back in the Fall of 2015 adding support for FE-C.  However, it wasn’t until this past Spring 2016 that those trainers got FE-C support officially.  So, just use the Wahoo apps to check for a firmware update and then you should be good to go.

    Wait, do I have to have FE-C to use Zwift/TrainerRoad/etc…?

    No, not at all.  You can use tons of trainers with those platforms without FE-C.  Depending on your trainer though, you’ll get different capabilities in the app.  With FE-C (and other controllable trainers), you’ll get the ability for Zwift & TrainerRoad and others to control your trainer’s resistance level.  Without that, those apps are merely reading data from the trainers.  It’s like ‘look but do not touch’.

    Can I use my power meter to control FE-C?

    No, not directly.  Some folks will want to use their power meter to control their trainer so that the indoor and outdoor power numbers match more closely (especially for trainers that have lower accuracy levels).  However FE-C doesn’t accommodate that directly.

    Instead, some apps (TrainerRoad and PerfPro for example) have options that can use a power meter to control a trainer.  FE-C can be involved in this, but it’s not the whole solution.

    Will you be releasing a trainer app guide this year?

    Yes, in the September/October timeframe I’ll release a new trainer app guide.  I didn’t release one last winter as I didn’t see too much change, but I’ll be tackling it again for this winter.

    Can I use FE-C on an iOS device?

    Not without a secondary adapter, such as the Wahoo Fitness ANT+ adapter.  iOS devices don’t natively support ANT+ (whereas most Android devices do), thus, you’d need some additional hardware to make that happen.

    Can I upgrade my older non-Smart Tacx trainer to FE-C?

    Unfortunately not for most.  Tacx has said that the older non-Smart branded trainers don’t have enough channels on the ANT+ side of the house.

    However, the Genius (non-Smart) can be upgraded for 250EUR using a hardware kit.  That’s a bit pricey, but so was the original Genius, so I suppose it’s all relative.  You need Tacx part number T2085 for that.

    What the heck is the Tacx Upgrade Smart, and do I need it?

    The Tacx Upgrade smart kit (T2990) is both the Tacx TTS4 software suite for PC’s, as well as a ANT+ USB adapter.  It also costs 179EUR.  You do NOT need it for FE-C.  You’re essentially paying for the Tacx TTS4 software suite and getting an ANT+ USB adapter tossed in for free.

    To be fair, it’s a really cool ANT+ USB adapter with a super-long cable and a nifty stand.  But…you can also buy a super long USB cable extender on Amazon for $3.  You’re choice.

    Can I upgrade my PowerBeam or PowerSync to FE-C?

    Also unfortunately not.  However, this is slightly less of an issue because many mainstream apps have long since baked in one-off support for the CycleOps trainers.  Thus it’s really mostly the smaller apps and/or newer apps that haven’t done so (though they could certainly do so by simply requesting the API information from CycleOps).

    What’s the deal with the Bkool Trainers & FE-C?

    They are compatible.  Bkool released compatibility firmware updates last fall through a series of updates addressed at different models.  It took a few months for them to get through that, but as long as your unit is up to date you’re good to go.

    Note they also have a pay as you go plan, which means you pay for their software but can use FE-C compatibility once you’ve paid for 12 months worth.

    Can Polar’s M450 or V650 control my trainer?

    No, not at this time.  They neither support ANT+ (of any variant), nor do they control any types of trainers.

    What’s the best flavor of Ben & Jerry’s Ice Cream?

    Half Baked. Obviously.

    What about the Mio bike computers, can they control my trainer?

    Actually, yes, but only mid-old trainers.  Basically, there was a time period a few years ago when Mio hooked up with a few trainer companies like Tacx and Elite and implemented support for older trainers.  But they don’t support the newer FE-C standard, so for new stuff you’re back out of luck again.  So essentially they do support controlling a few trainers, but not via FE-C.

    What the heck does the Elite Misuro B+ thingy do?

    The Misuro is a small adapter for many Elite trainers that broadcasts power as ANT+, and cadence/speed as ANT+ & Bluetooth Smart.  It basically allows non-smart Elite trainers to become smart.  But it does NOT enable FE-C.  It’s ‘read-only’, and can’t control anything.  But it is great for broadcasting ANT+/Bluetooth Smart data to apps/devices.

    Is there a place to check for FE-C compatibility?

    Yup, the ANT+ directory has a nifty way of looking it up.  On the left side under “Device Profiles” choose Fitness Equipment – Control.  I also like to check the ‘Or’ option right above it.  On the right side you’ll see everything.  But keep in mind this is only everything that’s actually applied for certification…which…isn’t everything.   For example the Garmin Edge 1000 is missing there, and many apps don’t bother either. Still, it can be useful for finding random things, sorta like finding coins in the couch cushions.

    image

    Which trainer should I buy?

    None today. Seriously, just don’t.  Eurobike starts in 30 days, which is when it sounds like all further trainers will be announced for this year.  It’s possible we could see a few more slip out two weeks later at Interbike (Sept 21st-23rd), but I expect we’ll have all the players lined up by the end of Eurobike (Aug 31st – Sept 2nd).

    If you really want to begin your research, then start with my annual trainer recommendations post from last year.  I expect to have something similar around the Interbike time this year.  However, like years past that’s heavily based on getting units in my hands by then for at least early evaluation. Companies have been working overtime to do that over the last few weeks, but things always seem to slide a bit.

    Going Forward:

    DSC_6445

    At this point it should be kinda obvious, as the market has clearly spoken: Any new resistance controlled trainers in the market must support FE-C.  They can and also should support Bluetooth Smart control/broadcasting too.  Both are a requirement these days for new units.

    Old units like the CompuTrainer can get away with not having it, merely because TrainerRoad, Zwift, PerfPro and few other major apps have manually coded in support.

    Which might beg the question of when we’ll see an equivalent standard on Bluetooth Smart?  At this point it’s back to house to house fire-fighting, with each trainer company doing slightly different variants.  Tacx is actually closest, as they simply took the ANT+ FE-C protocol and made a simple tunneled wrapper in Bluetooth Smart, thus making it silly-simple for app devs to implement.  But it’s still one more protocol to deal with.  Given that the Bluetooth Smart power protocol standard continues to be a disaster in terms of compatibility across apps/devices/power meters, I have low hopes for a BLE trainer standard anytime soon (let alone one being implemented).

    Of course, the FE-C protocol isn’t perfect either.  For example, the calibrate function doesn’t work with all trainers as it doesn’t seem to be aware enough to know when a trainer doesn’t need a calibration/roll-down (i.e. Tacx NEO).  Not to mention the fact that ANT+ isn’t available natively on iOS, whereas many Android devices do support ANT+ natively.  That makes it harder for mobile apps to use ANT+ trainers, thus shifting the focus to Bluetooth Smart (which in turn means developers have to go back to the model of interfacing differently with each trainer company).

    Still, having a standard in place today means the ecosystem is moving forward (trainer companies, app companies, head unit companies).  And more importantly, it means consumers are getting a zillion more choices from all three of those categories.

    With that – thanks for reading!