Run Power: Data Field

A single run field...with power.

Works with standard power meters, including running pods such as Stryd. [Garmin Running Power not supported.]


Supported devices
- All Garmin Connect IQ watches except Epix

Get Run Power from the app store: https://apps.garmin.com/en-US/apps/a054f515-576a-4a28-b8e5-87987ba737e1

Full Manual
Everything you need to know and all the latest info will always be here:
https://github.com/flowstatedev/ciq-runpower/wiki

Please use this thread for questions, comments and suggestions. I'd love to hear whether this field is useful and how it can be improved!




Features:

  • Power Zones
    • All watches support 5 zones
    • Most watches support up to 10 zones
    • Customize zone names
  • Power Alerts
    • Lap Power Alerts
    • Structured Workout Power Alerts (not 735XT / VAHR / Approach S60)
    • Custom Power Alerts (high/low)
    • Zone-based Power Alerts
  • Color-coded Power/HR/Cadence (optional)
  • Custom colors for Power
  • 6 fields
  • Literally 100s of metrics to choose from, especially variations on power (and normalized power)
    • Easily select metrics by choosing phrases from 3 short lists. e.g. "Lap", "Maximum", "Power"
  • Define custom metrics with formula like "Power/HR"
  • Optionally records power to activity FIT file:
    • Graph
    • Lap Average and Maximum
    • Activity Average and Maximum
  • Filters abnormally high power values [above 2000] to get around Garmin firmware bug which messes up your power stats



Feature support varies by device. For more information:
https://github.com/flowstatedev/ciq-runpower/wiki/Features


Available Metrics:

Any meaningful combo of:

  • Overall [current/total], Lap, Last Lap
  • Average, Minimum, Maximum, 3/10/30 second average, or none of the above
  • The following "base metrics":
    • Time, Distance, Pace, Power, Power Zone, Efficiency Index, Efficiency Factor, Power/HR, Running Effectiveness, Speed, Cadence, Heart Rate
    • Calories, Elevation, Ascent, Descent
    • HR Zone, HR %Max, HRR%, %FTP
    • Normalized Power, Normalized Power Zone, Intensity Factor


For example, if you're interested in power, you've got:
Current Power, Average Power, Minimum Power, Maximum Power, and 3s/10s/30s Power
Lap / Last Lap: Avg, Min, and Max Power

Full Change History: forums.garmin.com/.../51997

  • wvernon at this time I have not considered making another power based app. As far as power goes, I would like to focus on this app for now.

    Nobody has asked me about how I implemented direct ANT+ support for non-multi sport watches like 645 which can’t natively connect to a power meter. I personally don’t think this feature is anything special. The code is pretty simple, and the specification for ANT+ power is freely available with registration. There is even example code for the transmit/receive you can find by searching, without registering for anything. It would be very simple, IMO, to modify a Garmin example for “muscle oxygen sensor” to use standard power instead. There was one tiny wrinkle which tripped me up, but anyone who actually has a Stryd to test with would not have this problem.

    However, adding such support does take memory in an app, so it’s possible that ppl just don’t have enough room for it. I find the biggest challenge of Garmin development is optimizing your app so all the features you want can fit on older devices and even current devices like 935. It’s why I have literally six tiers of app features in Run Power....

    I’d be happy to post the ANT+ portion of my code upon request, as it’s the most generic and least original part of Run Power. I’d also be happy to post tips on saving memory, if any dev wants them. Some of these tips do make your app harder to maintain, which is one of the reasons I have too many crashes :/.

    Glad you like the layouts. I wasn’t sure if anyone would want the five field layout. People seem to have different opinions about small text, which is understandable.
  • Update 6.7

    (****) (Large memory watches - 645M, Fenix 5X/5+, D2 Charlie/Delta, Descent MK1)

    - Add optional custom zone colors.
    List color codes starting with zone 0. (-1 means no color).

    e.g. 5 zones:
    -1, #AAAAAA, #00AAFF, #00FF00, #FF5500, #FF0000

    (Z0 = No color, 1 = grey, 2 = blue, 3 = green, 4 = orange, Z5 = red)

    Available colors:
    https://developer.garmin.com/connect...ayout/#bitmaps

    I think there should be enough here to use any power zone scheme you want, current and future, as long as it's 10 zones or fewer.

    (Yes, I know the preferred way would be to select a scheme from a list and set a critical power or something, but I'm not prepared to do all that research, tbh....)
  • Update 6.8
    (*****) Fenix 5X, 5+, D2 Charlie/Delta, Descent MK1:
    - Add recording support for custom metrics, in case anyone is actually using them.

  • thanks again for all the updates. % FTP and the 6c layout have been great additions.

    i do have another metric suggestion, particular for those in the steve palladino camp. that metric is running effectiveness (compared to efficiency index).

    in steve's words:

    RE is a far better metric than EI because it uses W/kg in the denominator instead of W, and, consequent to that difference, a) can be compared across runners, b) a runner's baseline does not change simply due to changing the Stryd weight setting (as long as kg in the formula = kg in the Stryd weight setting). All that said, Running Effectiveness as a real-time metric on the watch? Cool! Be aware that RE (and EI) are sensitive to hills (and a bit too wind as well)


    i asked if having RE available in real-time would be useful and here's his response:

    given that real-time Running Effectiveness is not commonly available/used, I cannot comment on advantages on the basis of actual usage. However, for those wishing to try form changes on the fly in an attempt to see if they are more "efficient", Running Effectiveness, as a ratio of speed to power, is perhaps the best way to assess any change in effectiveness of converting power to speed in real-time.


    RE is calculated by taking (speed in m/s) / (power in W / weight in kg)

    this metric would require a weight setting in run power, but i do think it's worth it based on the ability to correlate form changes to increased/decreased RE.
  • Hi flow, i'm trying this app and seems amazing like appbuilder.
    I see and i understand that the 935 can't record stryd datas in the fit file and also can't use personalized code/formula. Is this correct?
    Are you working on that?
    Thank you
  • Michele17 sorry, there is just not enough memory on the 935, Fenix 5, 735XT, VAHR and earlier devices for recording and custom metrics. Even the 645M, which has twice the memory as 935, can't support custom metrics.

    Thanks for the interest!
  • Update 6.9

    All devices: Add Running Efficiency metric, as described above.

    Speed in m/s / (Power / Weight in kg))

    Note that weight comes from your Garmin device settings / Garmin Connect user profile.

    --

    I said this before, but I'm gonna take a break from developing Run Power, barring any serious bugs, as I think it's in a pretty good state now. I don't think there's another running power app in the store that even comes close, tbh, especially if you have a 735/VAHR/935 or better.

    If you have a cutting-edge watch, you can even add your own metrics in the meantime.

    Just want to reiterate that my main goal is for the app to be as widely used as possible, so here's how you can help:
    - Review the app if you haven't already. Even if you didn't like it, go ahead and put in that in the review. I'd like to hear what people liked and disliked
    - Blog about it or post about it on forums / social media
    - Mention the app to certain influential endurance sports gear bloggers (hint hint)

    I'd like anyone who has Stryd to know about Run Power. And maybe you know someone who wants to try bike power for their 235, VAHR or 645. This app can help with that, too. (Speed is a supported metric for a reason).

    Thanks!
  • wvernon at this time I have not considered making another power based app. As far as power goes, I would like to focus on this app for now.

    Nobody has asked me about implementing direct ANT+ support for non-multi sport watches like 645 which can’t natively connect to a power meter. I personally don’t think this feature is anything special. The code is pretty simple, and the specification for ANT+ power is freely available with registration. There is even example code for the transmit/receive you can find by searching, without registering for anything. It would be very simple, IMO, to modify a Garmin example for “muscle oxygen sensor” to use standard power instead. There was one tiny wrinkle which tripped me up, but anyone who actually has a Stryd to test with would not have this problem.

    However, adding such support does take memory in an app, so it’s possible that ppl just don’t have enough room for it. I find the biggest challenge of Garmin development is optimizing your app so all the features you want can fit on older devices and even current devices like 935. It’s why I have literally six tiers of app features in Run Power....

    I’d be happy to post the ANT+ portion of my code upon request, as it’s the most generic and least original part of Run Power. I’d also be happy to post tips on saving memory, if any dev wants them. Some of these tips do make your app harder to maintain, which is one of the reasons I have too many crashes :/.

    Glad you like the layouts. I wasn’t sure if anyone would want the five field layout. People seem to have different opinions about small text, which is understandable.


    May I ask what is different between ANT+ or not? I believe Stryd is only ANT+, or am i incorrect

    I am using a VA3, so I think that I would need ANT+.
  • May I ask what is different between ANT+ or not? I believe Stryd is only ANT+, or am i incorrect

    I am using a VA3, so I think that I would need ANT+.


    Yes, you are correct. The watch always connects to Stryd using the ANT+ protocol, the only difference is whether the watch has power meter support built-in or not.

    Let me clarify what I wrote above: "Nobody has asked me about how I Implemented direct ANT+ support ".

    In the context of Run Power and watches like VA3 which don't have "multisport" features, you need to enter the Stryd ANT+ ID in the app settings so Run Power can directly connect to your sensor.

    On multisport watches such as 935 and Fenix 5, the watch itself can find your power sensor and connect for you, so Run Power doesn't need to directly connect. In this case, there is no need to enter the ANT+ ID in the settings.
  • I can confirm that the app works on a Vivoactive 3. At first, it would not find my Stryd, but then I removed the ANT setting, and re-inputted it, and now it works.

    It offers a wonderful oppurtunity, especially for workouts. Unfortunately, it does not recoverd Stryd specific running metrics, such as LSS, GCT, so that means that I am using up two CIQ datafields, which is the maximum on my watch.

    Recommended

    MAy I suggest the following, once you have the time:

    1) option for Power / Weight, with this being recorded in fit file.
    If your weight changes, your power will change accordingly, and not just because of improved efficiency. Stryd measures Power / Weight, then multiplies it by the weight to give you power. This means that even your FTP and power zones are all dependent on your weight.
    Having this option recorded would allow one to compare different activities with different weight.

    2) Option for FOOTPOD distance, speed.
    The Vivoactive 3, and I believe all Garmin watches except for the Fenix, will use GPS data for speed if this is on. If you want to use the Stryd for distance speed, you have to turn off GPS, which means you loose, location, weather, elevation correction etc.
    If the footpod is transmitting these, would it be possible to display or at least record them for later use.

    3) Record, but not necessarily display some options.
    eg EI, EF, RE, which can then be used on other platforms for further analysis, eg sporttracks.mobi. eg, lap RE when doing a speed interval.
    I do not know if recording only still uses as much memory as displaying and recording, and also, space on the screen is limited.

    Well done, I was actually trying to learn Monkey C in order to code such an app, but am still very much a beginner. People like you inspire others like us, especially since this is done out of your kind heart without any payments for licences etc.


    Happy new year!


    Stephen