Over the last week or so there’s been substantial talk about power meter data in the Tour de France, specifically around scenarios of data snooping, data accuracy, data estimation, and data tampering. For the most part, the mainstream cycling media has gotten the majority of the core facts correct. However, there’s been a few cases of things not quite being as ‘neat and tidy’ as I’d like them from an over-zealously detailed standpoint.
Much of this discussion of course has originated from discussion around data from pro cyclist and soon two-time Tour de France winner Chris Froome, and his ability to sustain various power numbers, as well as the feasibility of the numbers that are leaked/stolen.
I’m not going to wade too far into the discussion on whether one is physiologically capable of hitting X power number for Y durations. Others can do that. Instead, I’m just going to focus on some of the data aspects, and talk to the validity of some of the statements thrown about (on both sides of the argument). I will however say that I think we’re just at the beginning of what will be immense discussions and changes on the topic.
So, consider this a bit of a primer on power meters in the aspects most talked about in the last week or so. I’ve divided this up into a bunch of short sections.
(Note: This post is highly technical, well into the geek range. It’ll probably bore many of you.)
First up, is the question on how data is transmitted from the power meters. There are basically two main ways power meters transmit data in the Tour de France today: Bluetooth Smart and ANT+. Both of these are designed as ultra-low power sensor systems, enabling power meters to get upwards of hundreds of hours of use on a coin cell battery. Or in some cases non-rechargeable batteries. Either way, almost everyone is using one of those two standards. The exception being SRM & Pioneer power meters to SRM & Pioneer head units, which use a variant of private-ANT (but not ANT+). The principle is basically the same though, and for the purposes of what we’ll discuss here – there’s almost no difference.
Within that, the vast majority of riders in the professional peloton are using ANT+, mostly because many of them are using Garmin devices – or SRM & Pioneer power meters with SRM & Pioneer head units. There are only a handful of Tour riders using non-ANT+ head units (just a few riders on Polar power meters). Furthermore, there’s only a handful of riders even using Bluetooth Smart power meters, which would be just Team Sky on the Stages units (which dual transmit ANT+/BLE). But Team Sky is using Garmin head units, so Bluetooth Smart isn’t used there.
Ok, so to recap:
Power Meters: You’ve got ANT+ or Bluetooth Smart, or in certain cases slight private-ANT variants.
Power Meter Data Collection: The same as above, with almost everyone using ANT+ or private-ANT variant.
Now with that noted, how is the data transmitted? Is it open and easily readable? Well, in a nutshell – yes. But, it depends a little bit on how it’s broadcast. Today, both ANT+ and Bluetooth Smart as used in power meters on the market today are not encrypting data. That means that one could snoop and listen to data broadcast from any rider passing by.
To start, we’ve got ANT+. By design the ANT+ power meter broadcast today transmit ANT+ power meter data clearly identified as such, and in a way that multiple devices can receive that data concurrently. The logic behind this is that it allows perhaps not just the rider, but also a coach/team car, or even a broadcast company to display the data during an event. You can easily download apps to view this data and could simply stand by the side of the road and collect the ANT+ data for a passing rider. Of course, you’d only get the data while the rider is in range – so perhaps 10-20 seconds worth. Hardly enough to be valuable.
When it comes to private-ANT variants, all of the above/below is essentially the same as ANT+.
Next, on the Bluetooth Smart side – that data isn’t as easily identifiable to passing devices. For all of the Bluetooth Smart sensors on the market today, you can only have a single concurrent connection at once. That means that if the rider already has a connection between their head unit and their Bluetooth Smart power meter, another device can’t connect as well. However, just because they can’t connect doesn’t mean they can’t snoop the data. The difference though is that snooping that data would take a semi-sophisticated hack to untangle the relatively gibberish looking data stream (as compared to ANT+ which is crisp and easy to pickup). The Bluetooth Smart data isn’t encrypted though, so someone (be it a paid developer or even just a curious hobbyist) could likely come up with an app to untangle all of that data stream and record it cleanly.
In either scenario though – you’re looking at the issue of how to collect data over the course of an entire stage or climb (mostly just the climbs). While standing by the side of the road gets you a quick snippet, it doesn’t get you much truly valuable data. Instead, for that you’d have to have devices travelling with the riders. For better or worse, those devices already exist today.
Regular readers know I use a device called the WASP from North Pole Engineering that collects ANT+ data from numerous sources. I could set that up to simply collect any and all sensor data. That would mean basically anything out there in the peloton I’d collect into a vast database. I’ve done this for fun at the start of the Paris Marathon – just collecting hundreds of ANT+ heart rate strap sensor data. Different sensor, same exact concept. For private-ANT data, it’s a tiny bit messier, but not much so.
But how do you figure out who is who from hundreds of ID’s? Well, for the most part ANT+ ID’s are sorta unique (they can be re-used, but it’s not usually done within the power meter world since there are less units shipped than 1,000,0000 power meters by company). Given that, and given the ANT+ information includes company/type/etc… you can start to form a picture. Then one merely need to sit outside the team vans each morning at the Tour and match real-time data to what’s going on as the mechanics prepare each bike. Again, trivial stuff (in case you forgot by now, yes I work in IT, and yes, coming up with some of these ‘how to break’ scenarios is part of my job). Even more trivial when you look at team budgets in the $35-40M range.
So over the course of a few days at the early portion of the Tour start and finish lines you could likely map out the majority of the rider’s ID’s being used – thus building a database. Even with bike swaps and the like, it’s still relatively trivial with a small team.
Now – how to collect that data mid-ride? Again, the WASP. It’s small, and would easily fit in a jersey pocket (and, it’s UCI legal). Place one on every team rider and you’d create a bit of a data net that would likely cover the entire peloton with ease. It of course wouldn’t capture attacks where you didn’t have a team rider present – but would probably enable you to gather a substantial amount of information.
Finally – encryption. Encryption could theoretically thwart this (all encryption is breakable with enough time/money/computing resources). Both ANT+ and Bluetooth Smart support encryption of the data in transit. But no power meters or head units on the market support this today. That means that even if SRM, PowerTap, Quarq, or someone else were to add encryption of the data – nobody is actually supporting decrypting at the bike computer/head unit side. Given that no team has demanded this, it likely tells you how much true interest there really is in encrypting of data.
Privacy of data on head units/sites:
Next, comes the data that’s collected on the head unit itself – your ride files. Obviously, that’s the most complete attack vector in that it has everything in one handy little place with all data neat and clean. But it’s also likely the hardest to break electronically. That’s because in order to capture the data wirelessly you’d need to pair with the device. That pairing requires you to validate and/or enter in a unique pairing code between the device and your phone, prior to a successful pairing. This is identical to when you pair most other Bluetooth devices that you must validate first.
At this stage, it’s not a question of Bluetooth Smart or ANT+, since all of the data transfer wirelessly is only done on today’s cycling devices via Bluetooth Smart or WiFi (Edge 1000 basically). And trying to snoop the WiFi connection in a team hotel at the end of a stage just wouldn’t be worth it for a single ride file.
The most obvious way to capture the data is just physical access to the head unit itself. In the case of the Garmin Edge units, if you had physical access to the USB port of the device, then you could easily copy that data off in a few seconds and have complete and ready to analyze full files. The obvious challenge there being access to the bikes. But as anyone who has been to the Tour de France will tell you, these bikes are often left unattended near the RV’s. One who was skilled enough (and even faster with a small custom program), could probably download the full data set off of a unit in 20-35 seconds. But again, that requires a ton of luck (nobody seeing you). Plus, many times riders don’t put their head units onto the bars until they walk up. But…if you’re talking a potentially disgruntled team employee, then nobody would ever notice.
Lastly, we’ve got the data sites that the riders use. Many riders use Training Peaks, with still more using Strava. While I’ll skip discussions about the backend security of these sites, for most attacks it’s far easier to just brute-force or otherwise guess the passwords that the riders or coaches use. If a rider uses ‘YellowJersey’ as his password, then obviously that’s their issue.
Non-Round (Osymetric) Rings & Left-Only Power Meters:
Next, there’s been a bit of discussion around the impact of non-round (osymetric) chain rings and left-only power meters. Both of which can impact the ‘accuracy’ of power meter data displayed/recorded.
Starting first with non-round rings, this has been proven to impact accuracy on many power meters. In fact, it impacts accuracy on almost everything except PowerTap Hubs. It can be correct on some ROTOR Power Meters (newer BB axle based), but not all (it’s still a bit unproven if it’s impacted on Power2Max). But it’s definitely impacted (inaccurate) on SRM, Garmin Vector, Quarq, Polar, Stages, and a number of others. This is due to these power meters assuming a constant speed revolution trigger (be it magnet, reed switch, or accelerometer).
How much is that accuracy shift? Well, it depends actually quite a bit on the amount of ring ovality. From a few percent, or more if you look at the testing that Stages has done, putting it closer to a 4-5% increase (inflation). But putting a specific/exact inflation number on it to just make a blanket statement that it would always be X% higher would be challenging – nonetheless, it will impact the accuracy.
Next we’ve got left-only power. This primarily impacts power meters that are measuring only the left-side, most notably Stages, but also many other companies that have started down that path. This includes Garmin Vector S, ROTOR LT, 4iiii Precision, Polar Power Essentials, and more. This exact split of the power output is called ‘power balance’.
All of these left-only power meters simply ‘double’ the left-side power to get total left/right power. This means that if you have a power imbalance (such as 47% left, 53% right), you’ll have a potentially higher or lower value than reality – due to the doubling of the difference. This is well known. But what’s not well understood is that this difference doesn’t remain the same. Meaning, it’s not always 47%/53% for a given rider.
Many cyclists have noted over the past few years that with left-only devices (and something to compare against) they’ll see shifts in the power balance. For example, for some people they’ll have very even balance up to a given wattage (such as their FTP). While others will have the opposite. Yet still, many might fatigue differently. So as a particularly hard ride goes along, you might slowly shift more or less to a given side.
Being a ‘professional rider’ does not exclude you from these. Mostly because there’s no real evidence that says you ‘should’ be 50%/50% balanced. Usually attempting to change/shift this balance results in a loss of overall power. Thus data from left-only power meters is much more difficult to compare to non-left only power meters. While you can certainly look at Team Sky and say “Well, Team Sky has won the TdF on it”, the reality is that’s marketing and sponsorships for you. Don’t overthink it.
All that said, do remember the timeline of when Stages was being used in the Tour de France on Team Sky:
2013: Team Sky on SRM
2014: Team Sky on Stages
2015: Team Sky on Stages
Thus, if looking at specific data from 2013, remember that’s SRM (which captures full left/right, but is impacted by non-round rings). Whereas data from 2014 onwards would be left-only and impacted accordingly.
One interesting area of discussion is potentially sending a given power meter an incorrect offset or calibration value. This has been loosely discussed a little bit in the past week – and it’s definitely a valid concern.
See, ANT+ and Bluetooth Smart power meters both allow end users to calibrate the power meter and to then have that power meter store an offset value. That offset value is normally used to account for things like temperature shifts or other environmental/aging factors. Typically a rider prior to the start of riding would do a zero calibration to tell the power meter that no force is currently on the pedals.
It should be noted that while most head unit companies use the term ‘calibration’, that’s actually somewhat confusing. Technically speaking what most consumers do at the start of a ride is called an ‘offset’ and not a calibration. Think of it like using the ‘tare’ function on a kitchen scale. A true ‘calibration’ involves a known weight that allows you to check the torque slope. This is done at the factory, but it’s also something that can be done by anyone at home with a capable power meter. Some power meters don’t support this, but many do. It can be valuable in certain situations if you need to validate a power meter is functioning correctly and accurately.
But 99.99% of consumers (or pros) won’t do that that level of calibration, instead, they’ll just press the ‘calibrate’ button within their head unit to perform the offset.
Now, this same tactic could also be used to set an incorrect offset to another rider’s power meter. There is no validation or check of this data, except to ensure that the bike/crank isn’t moving. So using the team RV scenario each morning, it’d be a trivial easy thing using existing tools to connect to another power meter and then give it an incorrect offset. For example, I’ve used various beta and utility tools that do this over the years.
The impact of this would be that a rider – especially in a time trial stage – could be focused on hitting certain power numbers. You’ll remember a photo two years ago of Tony Martin’s exact power numbers for each section of that time trial. If you skewed his offset just 5-10% higher/lower, that could potentially lead to either going out too hard or too easy.
Of course – this starts to get into fairly ‘dirty’ tactics, but as the sport of cycling has proven over and over again, that’s hardly outside the norm.
And finally – there’s simply the self-inflicted wound case here. That’s where a given power meter is incorrectly calibrated by the rider themselves (or not calibrated at all). That’s I think actually the biggest ‘risk’ to accurate data that’s least discussed.
Odds & Ends:
Finally, before we wrap-up, there are a few other factors that can impact power meter data, or power meter analysis that should be mentioned. In no particular order, here we go:
Impact of weather/environmental factors: If there’s a power meter that’s having a bad day when it comes to adapting to weather and producing erroneous numbers (as I’ve shown in the past in certain power meter tests), that can definitely impact numbers substantially. This is especially true in mountain stages with large shifts in weather. This can sometimes occur in cases where a devices temperature compensation can lag behind the actual temperature shifts (sometimes to mitigate brief false positives). Still, this could in rare circumstances result in non-aligned data. Additionally, there are scenarios with certain power meters where automatic auto-zeroing may be skipped on particularly long climbs due to lack of coasting (which some manufactures use to trigger an auto-zero)- impacting the ability to compensate for temperature shifts.
Providing ‘average’ data: There have been recent discussions on some teams providing ‘average’ data for a given rider on a given stage. For example, to say “Rider X averaged 278w with an average cadence of 92rpm and an average HR of 158bpm”. In the simplest possible way I can express this, that data is completely useless. For example, a TdF winner on a mountain stage like Alpe d’Huez could sit in the peloton all day long before making an attack up the mountain. While in the peloton for 3-4 hours with drafting they could be putting out trivial power numbers (i.e. 150-200w or less). Meanwhile, while on the mountain for that 40-50 minute climb they could be putting out huge numbers (i.e. 380-400w). The average of those two would show a much lower number than the real climb numbers. In my opinion providing such average numbers is basically just a smokescreen to trick people into thinking they’ve done something useful. Don’t fall for it.
Weight loss during a stage: As anyone who has stepped on a scale before and after a workout on a hot day knows – there can be a fair bit of water weight loss on a 3-5hr workout (be it racing or training). While this won’t impact exact wattages, it can impact W/KG metrics that utilize weight. Thus if a rider is doing back to back stages on exceedingly hot days, they might not fully recuperate all of their liquids by the next day. Or, even within a given day. While not a huge issue – it could certainly impact W/KG analysis by 1-2%.
Power meter placement: In a perfect world, the closer the power meter is to your foot, the higher the power value will be. So in theory, if you were to use Vector, Stages, SRM, and a PowerTap – the power output for those in a perfectly calibrated world would actually be in that same order from highest to lowest. That’s because of small mechanical loses as you progress further from the source. Sorta like when you fart in a room, those closest to you get a higher dose than those further away. This is usually 1-3% from pedal to hub, but it depends on many factors including the materials in the bike and cleanliness of the drive chain.
Getting two power meters to agree: While some would like every power meter to agree perfectly every day – as one who rides with 3-5 power meters on every ride, I can tell you this is INCREDBLY hard to get every power meter to agree every day (heck, to get any 2-3 power meters to agree every day to the exact same wattage). It’s a key reason why virtually all power meter manufacturers specify an accurate range of usually 1-2% (high or low).
Any of the above can certainly impact total accuracy numbers. While one might try and add up the different percentages, do keep in mind that some might make a power number lower (i.e. left-only), while others might make it higher (i.e. non-round rings).
At this point, you’re probably scared to death of using your power meter. But in reality – almost everything I’ve discussed to date is really about data openness (excluding setting nefarious values). Any many riders today openly post their race data – even stage wins and climbs. Both Strava and Training Peaks do daily/weekly roundups of power meter files posted, as do various other teams. Those teams are essentially giving an additional layer of data that can be used to raise or decrease suspicions on a given rider when it comes to cheating (be it via drugs, motors in bikes, etc…).
Some would say that information is very tactical in nature – and that’s probably true to an extent. So it’s understandable that some teams would want to keep that private. But, when teams face criticism, it can be one potential avenue to increase openness.
With that – thanks for reading – and feel free to drop any questions below!
(Thanks to power meter gurus Robert Chung and Tom Anhalt for validating and contributing to this post – I greatly appreciate it!)