BreakAway: Indoor Training App Now with Intervals.icu Calendar integration (Workout Of The Day)

Sorry. In my recent workouts I did not test the “spiral” and all the rest was going like a charm. If the weather will be bad (i.e. no outside ride) I will test it on Saturday, else on Tue.
(waiting for the customization of the fields, can you meanwhile add in the third line in the middle, the overall past workout time? thanks)

Okay… Thanks…

Can you further explain on “past workout time”?
is it Last Lap Time? Do you see what you’re asking for among the list of ~36 fields in a post above?

Sorry, I meant the workout timer starting from 0:00 and increasing. As of now there is only the count-down

Ah… you’re looking for “Lap Time” or “Elapsed Time”. Yes, it’s in the list of DataFields for “user selectable” . (also, elapsed time is available during slope mode)

1 Like

New beta is up w/ the “user defined data screen / data fields” layouts

Note that Page1 and Page4 are essentially the same “Page1”, but it will auto switch between ERG Mode and SLOPE simulation mode. The key difference is that in Slope mode, default setup as “SLOPE” and “Elapsed Time” instead of “Target Power” and “Interval Remain Time”

Right now, there’s a total of ~40 different selectable fields (some of the field names are “different” due to trademark reasons so there’s alternative names in use, I’ve used the similar nomenclature as intervals.icu) for the 3 screens (page 1 / Page 2 / Page 3 - change screens by swiping left / right)

Take note that for iPhone Landscape mode, the 3rd row (in portrait) will be missing - largely due to space constraints. (esp for those w/ smaller phones like the iPhone SE )

I’m irked by the layout Field Naming tho (eg: Field 1 and Field 4 are Top/Bottom in Portrait mode, but is side-by-side in iPhone Landscape) and i think it would be confusing for users. I might change this in the future. But it is what it is in the current newest Beta (public link in one of the posts above)

If all goes well, no major issues, plan to release this to the App Store within the next week. :pray:

2 Likes

@Knut_Petter_Svendsen So… today I worked on getting Stryd Support into the App. Now I have Pace / Pace 3s / Pace 5s with the data coming from the Stryd FootPod (Speed and thus Distance).

Initial Testing seems to work well with Data being populated into the app via the Stryd Pod (Power / Cad / Dist / Speed)

The only thing is that you (users) have to specifically enable it within “advanced settings”. It’s also advised to turn it off when / if you want to do a Bike Workout in case the Stryd messes up the Power / Cad data from the Trainer.

Workouts also gets tranferred to Strava and Intervals as Virtual Run activity and you can also do a “Re-Sync”, however the re-sync logic is a bit convoluted currently. (I check if a Stryd is connected, and if it is, the resync will upload the data as RUN otherwise, it will be a Ride)

BETA test app public link is in this post - BreakAway: Indoor Training App Now with Intervals.icu Calendar integration (Workout Of The Day) - #26 by app4g

Hope to hear from you soon and your thoughts (vs the Stryd Treadmill App)

1 Like

Okay… Newest version has been released on the Apple App Store. Do let me know feedback/comments.

  • PowerRamp now supported on workouts eg: 10m 40-50% (tested based on workouts generated from intervals.icu workout builder specifically)

  • PowerMatch w/ on workouts that has PowerRamps

  • IdleTimer (when workouts not started, app will honor phone settings on when to do auto lock)

  • HRV and LR Power Balance is now supported and will be written to the output file. (Please enable Save As Fit file - within “Advanced Options”) Current iteration saves both FIT & TCX(backup). FIT file gets uploaded to Strava & Intervals if enabled. Future release will eventually migrate over to FIT only). Both FIT & TCX also support LAPs, hence you can use interval.icu’s “use laps” feature to align the intervals

  • Added automatic “Screenshot Workout” for completed workout as a 4:3 format photo. Workout details such as Name/Total Time / Distance / Speed and user text is also supported

  • Added 3rd row of telemetry data (iPhone Portrait mode only, iPad Portrait & Landscape) and ability to choose what data fields to show on the screen (available ~40 data fields)

  • Split Screen View on iPads that supports it. This way you can run BreakAway alongside watching a video on Netflix for instance. Or, if your trainer supports it, you can execute a structured workout, with the app controlling the trainer and have it alongside Zwift where you can enjoy the virtual scenery)

  • Added ability to connect to a Stryd Foot Pod (Advanced Options) and execute structured workouts indoors on the Treadmill (please provide feedback)

  • Added W’Bal kJ as one of the available datafields (Named as Fuel) and possibility to Graph it visually

  • Added Workout Cues Support for MRC/ERG files loaded from DropBox

  • Tweaked Medals algorithm

  • Fixed a bug w/ Strava Login (alongside some other small fixes)

2 Likes

I have connected the app to Dropbox successfully and stored workouts (erg files) in Dropbox/Apps/BreakAway/Workouts folder as required.

however, I dont see those workouts in the app from the library/cloud tab…

Any suggestions?

thanks

Thanks for testing out the app. Sorry it took a while to respond.
Please take a look at this “newly” created video for Dropbox Integration.

Take note that the Folder structure is automatically created (in Dropbox) after authentication is done so that no user-intervention is required.

Once done, you can just drop your MRC/ERG (or FIT/TCX/GPX) files into the “workouts” folder and it will sync to the app.

Screenshot 2022-02-27 at 11.21.26 AM

Where in the Library am I supposed to find my planned workouts from intervals.icu? Can’t find them anymore… :frowning_face:

Hi,

Thanks for the question and your continued use of the App. Every user counts!!
Today’s a Monday, so that means you need to refresh/re-sync the workouts for this week to the app. (currently it’s not automatic)

Next revision will be such that it will initiate AutoSync upon App Re-Open based on these 2 condition

  • // Conditions for AutoSync to Happen (OR condition)
  • // - Start Of the Week (Monday) – todayDate == weekStart
  • // - Last Sync Date is Last Week – weekStart > lastSyncDate
  • // Caveat: We will only auto-sync 1x for the week, user will need to manual sync if not using the “download entire week” option by just “Pulling to Refresh”

When in the LIBRARY Tab, do a “Pull to Refresh” within the PLAN option at the very top.

If you’re NOT seeing the PLAN option, but instead you are seeing “SLOPE” then you need to change it back to ERG Mode. (this can be done in the SETTINGS tab)

Let me know if I’m not completely understanding your current situation or some obscure bug exists.

Thankx!!

I’m also finding that despite having “Use laps for intervals” checked for both bike and run I still have to force Actions/Use Laps + Actions/Analyse in order for Intervals to actually use the laps.

What am I missing that’s not allowing Intervals to default using the laps already in the FIT file from Garmin and Wahoo?

Testet BreakAway with stryd today. It worked :slight_smile:

For running it is harder to pay attention to the display since body is moving more. In Stryd Treadmill App you get a notification right before to reach a new interval. In that way you don’t have to stare at the display that much. Or maybe an audible hint would have helped…?

I wasn’t able to finish the workout since it crashed. I wasn’t paying attention when it happened. Just noticed that the screen was locked and when I unlocked the app was closed…

@app4g, I’m wondering if you could build in something that I’ve yet to see any app do but that I think would be really cool: an ERG mode based on HR. IOW, the trainer resistance would be adjusted in order to maintain a given HR zone as set via the Up/Dn Button Steps.

The most obvious difficulty would be that HR lags behind effort by 1-2 minutes. But for long, steady rides it would be a way to help mitigate HR drift over the hours by lowering resistance if HR starts to reach the high end of a HR zone, or to raise resistance if the rider is being lazy and continually riding below a set HR zone. Thoughts?

1 Like

Fantastic news.

During the start of a “NEXT” interval, these things are happening (for intervals which are > 30seconds):

  • Prepare For Next Interval
  • Next interval Length
  • Next interval target power

In addition to that, at the very last 5seconds of the current interval, there would be an audible Countdown Alert (like a metronome). You should be hearing these alerts/seeing these “cue” messages at the beginning of every interval. This is what is happening during a Cycling Workout (and should be the same as when using the Stryd). Could you please let me know if this is not the case the next time you execute a treadmill workout?

Oh and btw, I am experimenting with implementing Audible Cues (that consists of the above 3 sentences")

dang it… that’s too bad. Apologies for that. Up till now, I’ve not seen any crash logs from Apple. Could you please enable the “Share with App Developers” within “Settings → Privacy → Analytics & Improvement → Share With App Developers”. This would help me to figure out what’s happening.

BTW - even if the App did Crash, the previous run/workout is actually still being saved (autosave is enabled automatically) and you can find your last session in the “HISTORY” tab. Caveat is that you will lose the last 60s of the workout though. You can then do a “re-sync”.

@Howie Thanks for your feedback. Since HR is a Lag event vs Power, you can actually utilise the Up/Dn Button Steps for this purpose currently. But I believe you’re asking for this to happen automatically. (Tho I am thinking more towards doing this instead - https://forum.intervals.icu/t/thoughts-on-this-training-workout-i-term-this-evil-mode/)

What complicates matters is current ERG modes (MRC / ERG files) are based on Power and not HR zones. Hence, how would the app know what is the Upper HR Zone for that particular interval? (Note: I can of course make it such that if the interval is like say “>10mins”, then I can implement this feature, but again - comes back to the “what’s the HR zone for this interval”?)

In most cases, if the user is like me, if I were to increase the resistance (similar to how Smart Trainers will UP The resistance when the user is not pedaling to the correct wattage, it will continually increase the resistance in an effort to “nudge” the user to pedal harder, but because it’s harder to push the pedals, the user is not able to increase the cadence and increase wattage, and then the trainer will sense this and thus UPs the resistance even more… then you get into a spiral of death situation and then you give up)

(Note: The app has a feature called “Avoid Spiral Of Death” which is designed specifically to prevent this by detecting if the user has slowed down the pedaling ( thus wattage) and then will automatically reduce the trainer resistance so to avoid the user having to “Grind/Mash” the pedals.

@app4g:
I believe you’re asking for this to happen automatically. (Tho I am thinking more towards doing this instead - https://forum.intervals.icu/t/thoughts-on-this-training-workout-i-term-this-evil-mode/)

Correct, automatically. I’m not looking for use in standard interval training but rather sustained, steady rides, perhaps with longer interval variations, i.e. 20-60 minutes.

@app4g:
What complicates matters is current ERG modes (MRC / ERG files) are based on Power and not HR zones. Hence, how would the app know what is the Upper HR Zone for that particular interval? (Note: I can of course make it such that if the interval is like say “>10mins”, then I can implement this feature, but again - comes back to the “what’s the HR zone for this interval”?)

Again, I’m not looking for intervals but instead to have HR zones in blocks of 10 beats and have the power adjusted in order to maintain that HR range.

It would have to be a delayed adjustment and might work like this:
• After warming up, the user sets HR range to 105-115bpm. If the user’s HR exceeds 110bpm for 2-3 minutes then the app lowers the trainer resistance by x amount, perhaps a percentage of current wattage. If the user’s HR continues above 115bpm after a further 2-3 minutes then further adjustment occurs in an attempt to bring HR down. If, however, the user’s HR drops below 105bpm for more than 2-3 minutes then the trainer resistance is increased by x amount, perhaps half of the previous adjustment.
• It may be necessary to have something similar to “avoid spiral of death” such that if at any point a user’s HR jumps 10bpm above the given range within only 1 minute vs 2-3 minutes then trainer resistance is lowered sooner than is normal procedure.

The Up/Dn Buttons would set the desired HR range and the trainer adjustments would be handled automatically by the app. A fancy option would be to allow the user to set the lowest starting point, i.e. 90, 95, 100 or 105bpm, and the allowable range, i.e. 5, 10, or 15bpm

(In case anyone wonders why I chose these HR ranges, 105-115 is my standard fat burning/maximal mitochondrial development range for 2-10 hour rides. For rides incorporating some sustained muscle work then my range goes to 115-125bpm on the bike.)

so… @Howie I’ve been thinking about this last few day(s?) and did some research etc…

seems like ppl over at Zwift has this requested as well Constant/dynamic heart rate training - #20 by Robert_C - Feature Requests - Zwift Forums and I would say that their conclusion is that while it’s doable, the end-effect won’t be as “nice” (for lack of a better word).

Additionally, I’m trying to figure out if there’s a simple(r) way to implement that in the program’s current structure w/o needing a lot of re-tooling. (I looked at whether the ZWO format has like a “target HR” option, but there’s none and neither does the MRC/ERG format either)

Currently the app has this “FTP Zone(w)” feature for ERG mode which essentially provides a step function for the +/- buttons that instead of +10 or +Xw, will just go to the next wattage in the list - this is a feature for peloton users what has spin class sessions based on specific Wattage) I’m not sure if this can also be re-tooled for experimental purposes on what you described.

Having said that, the idiosyncrasies of HR and the day-to-day variation due to stress / time of day, sleep or even the quality of your HRM + Strap combo may make it quite difficult to control successfully.

Or… could I use the current powerMatching algorithm and retrofit it to HR (instead of Power)… so many variables and paths and uncertainties…

@Knut_Petter_Svendsen What do you think about audio cues? It’s done, (just need to set a “user option” preference switch). Currently just says these 3 things (it can also be localised to languages besides english, just need to get translations)

[TextToSpeech]
Prepare for Next Interval.
Interval Duration: 20seconds.
Power Target: 45 to 120 watts.

I think it’s more important for runners on treadmills, tho for my iPad 2013, even at it’s loudest settings, it’s really not that loud and on a treadmill w/ feet pounding on the belt ¯_(ツ)_/¯

let me know so that I would know what to code up or include for user preference switch

tx

@app4g
Thanks for your consideration.

I have a 5 hour training ride today so I’ll play with the watts zones and see if that works. Q: Are there limits to that CSV field?

Having said that, the idiosyncrasies of HR and the day-to-day variation due to stress / time of day, sleep or even the quality of your HRM + Strap combo may make it quite difficult to control successfully.

The thing is that far too many people say “HR varies” and want to set intensity by a static value, i.e. watts or pace. The variability of HR is exactly why it, RR and RPE are primary metrics for intensity. Those values indicate what is happening in the body. All external metrics need to be adjusted around the state of the internal metrics. This is why I suggested having the ‘HR guided adjustments’ be a percentage of the current watts output. On one day the watts might be X for Y HR but on another day it might be X+30 or X-30 for Y HR.

People are starting to get the idea of HRV guided training but haven’t fully accepted HR, RR and RPE guided training. (RPE needs calibration. All three need honest self-evaluation to titrate out motivation, tho that metric can be a huge indicator from the nervous system if people would learn to listen.)

Hmm, @app4g , would it be possible to automate the “FTP zone (w)” jumps. IOW, letting HR variance from a set range triggers the jump up or down?

FTM, why is the Up/Dn setting labelled “FTP zone” vs Power zones? I think we’re starting to see a move away from FTP for setting zones now that home lactate testing RR, and DFA are becoming the norm.