HRV-Guided Training

I guess it depends on the strap/device combo…
Polar H10 with Garmin units has been shown multiple times to have way less dropouts on BLE then ANT+
Regarding AlphaHRV app: the devs have confirmed that ANT+ is just as good as BLE. They have another way of getting the RR stream directly from the strap to the app and that’s why you need to pair it twice.

Developer Reply
February 9, 2022, InigoTE
It is usually advise to use BLE for HRV data recording on Garmin devices. BLE connection issues detected for some devices are been analysed now. Nevertheless alphaHRV is providing good and similar results for both ANT+ and BLE for the moment. At the end of the beta phase, some clear conclusions will be provided on this.

2 Likes

Hello, I gave a shot to the CIQ app this morning. I paired the app with BT and Fenix 6 with Ant+
To me, it’s mixed results… I have played a lot with my lactate pro 2 lately and I think I have a fairly good definition of the wattage for my zone 2. I know from various recent workouts that my aerobic threshold, where lactate usually rise above 2 is somewhere around 3,8 W/kg

So this morning I did a clamped effort around 3,7-3,8 W/kg, I had some HR drift so maybe I am not really in endurance but my lactate was 1,4 mmol/l at the end.

DFA1a for 155ish HR which I believe is a good proxy for my aerobic threshold (VT1) varied a lot… at the end of my 1h clamped effort, DFA1a even dropped below 0,5 but lactate was 1,4…

To fill in the gaps: there’s a phone app in the making for dfa-a1 on iPhone too

1 Like

Not quite sure what to say here but for an FTP of 250W the 229W target is rather high to consider this endurance zone. VT1 is usualy somewhere in between 70-80% FTP.
On the other hand, there are people who have big differences between VT1 and LT1. Could be your case.

Thank you for your answer. I have worked a lot around LT1 so maybe I hope I have pushed it.
Today, I have done another clamped effort at 200W. HR was quite stable. DFA1a wasn’t.
Maybe it’s an interesting signal, maybe keeping it around 0,8 is a good marker for mere endurance. But these 2 tests show the limit of this technique for me…

1 Like

The reason for pairing it twice is because I’m pretty sure (I didnt check the SDK API) you can’t get HRV data from the strap thru Garmin’s SDK API for Connect IQ). When the app connect directly to the strap, you can get whatever the strap is transmitting w/o going thru the SDK.

Yeah… That’s what I read tho i have no way to test since I don’t have a H10 and my Tickr has only 1 BTLE channel so can’t compare… Although now that you mentioned the diff pairing method for the CIQ app, it might be workable to upload the same workout data to RunAnalyze (Garmin - BLE HRV and Garmin-CIQ App - ANT+ HRV). Something to think about for me.

anyhow, I stumbled upon this nugget of info. I found out that GoldenCheetah now also is able to process DFAa1 data. (not sure about live view) but it’s available for Post-Analysis…

No clue(at all) what all this means, but this is the same workout I put into RunAnalyze (I shared in an earlier post)

ANT+ HRV Data

BLE HRV Data

So… RunAnalyze shows that the HRV data is cleaner on ANT+ but the DFAa1 plot seems like the opposite.

The BLE on the other hand, RunAnalyze shows a larger variation but is a lot cleaner on the DFAa1 plot.

Care to share your thoughts?

Or should I be doing some “test” workout to get the proper data?

Like this workout from here:

Today I found out how exactly @Andreas_Fitz was getting the DFA-A1 plot from RunAnalyze. (Didnt know about it until I dig)


Bluetooth



ANT+

It’s interesting to see that ANT+ while having a cleaner visual, graph wise, actually has only ~5% valid Points (which I presume based on the data being shown, any window size of 120s > 3% artifact is invalid)

TBH - I still have no idea what to make of this data

1 Like

… just for interest …
yesterday i did a ride and my average DFA Alpha1 from Runalyze (Garmin + BLE) was 0,97.
runalyze

from the new alphaHRV app (via ANT+) my average was 0,89… so 8-9% difference

I also had one heart extracystole at the end of the ride, and here the DFA Alpha 1 from alphaHRV app drops immediately from 1.0 to 0.4… so the “artefact” isn’t corrected.
This doesn’t happen in runalyze (Garmin + BLE), it’s corrected here.

How did you get the DFAAlpha1 chart to show in Runalyze, and is it Runalyze analysis of Garmin HRV data or just the data field data from IQ Connect?

if the fit file records HRV data (must be enabled on the garmin device) then you can see it in runalyze, an runalyze analysis it itself.

This is RunAnalyze analysis of

  1. Garmin recorded HRV data (via ANT+)
  2. BreakAway App Recorded HRV Data (via BLE)

I’ve not played around w/ DFAAAlpha1

Pick an activity, then on the right hand side, the “magic marker(?)” icon.
See the “aerobic threshold estimation”

That’s what you click. (took me a while to search for it as well as I don’t use this site)

I had a very similar result last Thursday with version 0.9.6. DFA-a1 was overall about 0.1 lower then what Fatmaxxer displays and 4 artefacts detected by Fatmaxxer were not detected by the app. Fatmaxxer ECG strips showed 3 of them as movement artefacts and one APC.
I haven’t tested 0.9.8 yet because i got sick on Friday. Planning to test it this evening with Soft Kalman filter as suggested by the author and by Bruce Rogers. Artefact correction should work in 0.9.8 and preprocessing for detrending improved.

@MedTechCD the twitter guy is the developer?
ALso I tot I just read this (my) morning that Bruce says the “soft kalman” is not good?

Can you please help to point out where this is? I am not familiar and definitely do not know where is the 1.04 to 0.4

What is typically mentioned for Garmin/Polar H10 is that there are a lot more dropouts when using ANT+. Thus no RR at those moments. Less data is maybe the reason why it “looks” cleaner.
I’m not sure if the Alpha HRV app stores the RR series. If it does, I can send you a FIT with RR data from the H10 to Edge in BLE, and RR from H10 ANT+ to the IQ app? And even the RR csv from Fatmaxxer with H10 in BLE running simultaneously.
That should be an excellent comparison of the different RR streams.

1 Like

Post has been updated for version 0.9.8 on 14/2.

  • Update 2/14/21 - The artifact issue has been resolved! Above for historical interest only

it also states these at the bottom of the chart

  • The first attempt was too weak a filter, the second, too strong.
  • This is a work in progress - keep checking back
    which is why i tot that “soft kalman” is not the recommended

I was thinking - since the H10 has dual BLE channels, how about…

  1. H10 BLE + FatMaxxer (does it output a FIT file? it would be A LOT simpler to just plonk it down to RunAnalyze then)
  2. H10 BLE + Garmin
  3. H10 ANT+ AlphaHRV

then on another day, exchange 2 and 3 so that we get BLE+AlphaHRV and BLE+Garmin

OR… if you have another Capable Garmin Device

  1. H10 BLE + Garmin 1
  2. H10 ANT+ AlphaHRV
  3. H10 ANT+ Garmin 2
  4. H10 BLE + AlphaHRV

if really curious about ANT+ vs BLE.

Sorry for droning on… curious only since I don’t have A HRM that can do more than 1 BLE channel. lolz

1 Like

Search “colab” in this thread. It was the first implementation available to the public. Only post-ride and fixed (not rolling) measurement window of 2 min.

Fatmaxxer only has csv file output and it will not be synched automatically. I always startup Fatmaxxer first on my phone and after the initial 2 minutes of acquiring data, i start my Edge.
To align them, you would need to throw away the first 2 minutes.
Fatmaxxer stores 4 csv files. One with the RAW RR values, one with the “features” which are the HR, calculated A1, artefact % and some other stuff, one with 10sec ecg strips around every artefact and a log file.

Yeah… I’ve played around with that python code and tried to do something w/ it to plot, but at that time, I was not proficient in the python code to generate the plots so I didn’t follow thru.

The GoldenCheetah code seems to do the same thing as Marco’s Colab code.

Oh… that’s… too bad. Throwing away the 2min is not an issue. I do wonder how much work involved in throwing away and aligning them tho. (I’ve done my fair share of recording data on multiple devices and joining the data - using HR as the “1 data to sync them all” since ANT+ can connect to multiple devices)

That’s the preprocessing/detrending of the RR series and probably responsible for the overall lower output values. Artefact correction should work now.
The dev recommends Soft Kalman. There is now also a custom Kalman to experiment with. You need another good dfa-a1 app to compare with.