Crank length vs power

Like many, I have an older road bike on the trainer with a well worn drive train. Over the past couple of weeks, the front derailleur broke (no problem, found one on the 'bay for 20 bucks) and on the very next session, the rear shifter gave up the ghost. I’m not too keen on dumping good money after bad on this as the chainrings have also seen better days. So, ultimately I will replace the groupset on the bike… sentimental attachment to the frame.

Anyway, to my point. When swapping over the assioma pedals I noticed that the crank length was 170. I had always assumed they had been 172.5 because that is just what I had been running on other bikes and I was quite the novice when I had purchased this one way back when. My question is then, since I had set the crank length 172.5 when I set up the pedals and now have them on true 172.5 cranks, how would this effect the readings. Previously would the readings have skewed higher or lower then they would now? Or would there be no real difference.

  • YES, there will be a very real difference. Crank length is a key factor in power calculations for pedal PM’s.
  • I haven’t had enough coffee to answer this with confidence, so I’m relying on others more alert :stuck_out_tongue:

Power readings should now be lower with the crank length and settings properly aligned, I believe. If you’d been running 175s, the opposite would be true.

Power = Torque * rotational speed
Torque = Force (what the power meter measures) * distance (crank length)
Power = Pedal force * crank length * rotational speed

So since you lied to the power meter and told it to use a longer crank length than actual in the power equation, it was inflating your power numbers (reading higher than reality).

One important caveat: Assiomas use the crank length set in the recording device (Garmin, Trainer Road, etc) as the crank length. Whatever you set in the Assioma app will be ignored on other devices / apps. So you need to check what you had set in the devices and apps you use to record with to see what crank length you were actually using. Maybe you’ve been using whatever default was set there?

2 Likes

25/1700=1.5% difference

1 Like

I just did this on accident when I took the pedals off one bike and then put them on another bike that had cranks that were 10 mm shorter. My power readings were significantly higher until I realized that I needed to change the setting on my head unit. Once I made the change it was reading back to normal.

is there any source for this? I got the same problem and would like to understand if my readings were correct or not.

IIRC, it’s because it’s part of the ANT protocol that requires (or at least allows) the recording device (Garmin, Wahoo, app) to specify the crank length. So each device you record with may change the crank length to override whatever you set in the Assioma app.

Regardless, the Assioma user manual specifies that you must set it correct in every recording device / software or you will get incorrect power data.

1 Like

Thanks a lot for the reply.

I looked into the TrainerRoad android app and cannot find the setting for the crank length. Is it because I use the Bluetooth connection and so it takes the value from the app?

Is that peculiar only to Assioma?

I have Powertap and keep forgetting which bike has which crank length…

I’m not sure, but I think it applies to all power meter pedals

It is (or at least was) explained in the app under the setting…

I know the app has had a re-design since this image though…

I would screenshot the new app but I’m not near my pedals

I think TR takes the setting from the app as I don’t think it offers a setting to change it.

What I don’t know is what happens if you don’t load the favero app after using your Garmin?

I don’t know if the pedals store the app-set crank length as a backup default or if by using a device that can change the setting the setting is changed permanently to that until you resend the setting from the favero app again :man_shrugging:t2:

:person_raising_hand: I use Assioma duos. When I dual-record between TR on my Android phone (BT) & Lezyne head unit (Ant+), instantaneous data between the two devices is almost always different, but that’s most likely latency &/or smoothing. Long interval average power is always within a watt or two, & I don’t have to tinker with the Assioma app between rides. I also couldn’t find the setting in TR to set the crank length so the pedals must be remembering the Assioma app setting & communicating that to TR. Unless of course if the Lezyne head unit is communicating its own crank length setting back to the pedals. :thinking: I must try setting conflicting numbers for a ride & seeing what comes out. Maybe I’ll set my head unit as 15mm shorter so that if I have eagle-eyed strava followers they’ll think I’m slacking off. :smiling_imp: A sweetspot interval will come out to about a 25 watt difference (very noticeable).

1 Like

Thanks ! Hopefully one does not need to reopen the favero app every time.
I never do it, I only open it once in a century (years, not km or miles :wink: ) to check for a firmware update… otherwise I think it is not so useful as an app.
I calibrate using the garmin edge, when it asks or the trainerroad app.

keep me (us) posted !

I don’t know for sure, but my suspicion is that the crank length is updated during calibration, and if the program or device that sends the calibration command does not also send a new crank length then the crank length stays the same.

I think that would be the easiest way to implement it.

3 Likes

Thanks! Hopefully my head unit is not writing crank length back to the pedals. Because if it is then for example a 94% interval is going to become a ~103% interval. :confounded:
Good thinking @kevistraining. I might try a recalibration between intervals & see if there’s a difference.

I understand it as a one way flow of information. Pedals have the crank length set via the pedal app. That data is then transmitted to either to a recording head unit or tablet. If the crank length can be set by the head unit (or it’s companion app) then that is what will be used for the power data calculation. The head unit doesn’t transmit its own setting back to the pedals. If the head unit or app doesn’t have the option to set crank length then it will just use whatever has been set in the pedal app.

When I first used a wahoo, there were issues with not being able to set the crank length on the head unit or in the app and I was told that the head unit power data would be based on the value held by the pedals (/pedal app).

1 Like

Well this is interesting. TLDR: YMMV with other head units, but between Lezyne Mega XL & the Favero app, it appears that the crank length setting is remembered by the pedals, & the head unit & app are able to read from & write to the pedals as they see fit.

Haven’t left for my ride yet, I wanted to type this all before I forgot.

So, I have 165mm cranks on my bike with the Assioma duos. Way back when I’d set the length correctly in the Assioma app, & I don’t remember if I needed to set it on the head unit.

I turned the head unit on, woke up the pedals, it found the pedals via Ant+, I calibrated them on the head unit, then set the crank arm length to 150mm. Head unit then paused for a few seconds with the message onscreen: “Setting crank arm length - Please wait” along with a little spinny aroundy icon thing to indicate that something was happening. The message disappered, success, good, then I turned off the head unit

Next I started up the Favero app, selected the pedals & hey presto, Favero is telling me that the crank arm length is 150mm as set by Lezyne, not 165mm as I’d previously set in the app. I reset it to 165mm, turned the head unit back on, went into the PM setting & the head unit reported 165mm as set by Favero. :thinking: It also appears that the Favero app does not remember the setting & is reading it from the pedals as required.

So no ability to set conflicting numbers to fudge the data. :laughing:

2 Likes

Okay, here’s the silly experiment. But first, when I started my workout, Lezyne thought the crank length was 150mm, despite having set it back to 165 in the Favero app. Shrugged my shoulders & set it back to 165 in Lezyne. Maybe there was after all a possibility of two devices recording different numbers from the same device. I wussed out on checking it over a work interval & instead chose to do it during the cooldown.

So here’s the warmup as a control.

Lezyne Mega XL recording, captured via Ant+:

TR recording, captured via Bluetooth:

NP & AP differ by 1 watt. Close enough for me.

Did the workout at the track, then headed home on the cycleway. Extended the cooldown as needed, came to a standstill, tampered with Lezyne’s crank length setting & went on my way again for another 10 minutes.

Lezyne capture:

TR capture:

Same NP; AP differs by 2w (lower on TR). I’m calling it the same. If there was going to be a difference it should’ve come out to about 9%. Likely explanation for differences: dropouts on the bluetooth channel because my phone was also playing music on my Shokz at this time.

My initial thought was that the pedals were sending force production data to devices that were using the last known crank length setting, but it seems now that the pedals are sending sanitised power data by processing the instantaneous force × crank length × cadence equation. Though it’s also possible that the pedals ignored the setting because I don’t have a crank-based PM to compare to.

Something else I should mention: With the TR app loaded & communicating with the pedals via BT, the Favero app (on the same phone) was blocked from also communicating with them.

Anyway, this is my account of the Lezyne Mega XL’s behavior. Other manufacturers’ devices may behave differently. One way to check it when you move the pedals between bikes would be to reset the crank length on your head unit, then open the Favero app & see if it was changed.