Although this may seem to be an obscure topic to cover, the subject of heart rate monitor sample rate and R peak detection is of paramount importance to accurate DFA a1 computation. Since this index is one of "correlation" properties and fractal patterns, having inaccurate beat to beat time measurement will lead to loss of pattern detail and an erroneous a1 value. If we recognize that having an accurate pattern measurement is of importance, two factors in monitoring device function should have significance. First, and perhaps easiest to understand is the "sample rate" of the device. This is the frequency of signal measurement in Hz. In other words a device that samples at 1000 Hz, measures the signal across the chest belt electrodes at 1000 times per second. Obviously, if a device sampled at a much lower rate, the waveform would not be as distinct and the peak of the R wave not as precise. Here is an example of a 125 Hz waveform vs a 500 Hz sample:
Although the 125 Hz peak seems pretty sharp, if it was sampled a bit later on it could look like this:
Kubios is "guessing" where the peak is and puts the red X in the center, but it could be elsewhere.
If sample rate can alter the accuracy of the R peak, can other factors do so as well? Here we have to consider the "black box" of how RR times are reported by the HRM device such as the Polar H10. The unit is measuring the ECG signal, but more importantly, using internal software algorithms (and maybe hardware as well) to transform that into the RR interval data series (like Kubios is doing to the raw ECG above). Therefore it is certainly possible that one or both of the two "systems" (sample rate and RR transformation) can be problematic and produce erroneous RR correlation patterns (hence DFA a1).
In the following post, we are going to take a closer look at these issues and discuss some fascinating findings.
The simplest "test comparison" is using sample rate "downsampling" to produce near identical time duration sequences of exercise ramp data. For instance, I recorded a 2 hour ramp and HIT session with the Movesense Medical ECG (across the upper L chest to optimize waveform) at 500 Hz, then down-sampled the data sequence to 250 and 125 Hz. How is this done - simple - just remove every other data point. Warning, Excel has trouble doing this and is limited to just over a million records anyway.
Here is a plot of DFA a1 over time during a ramp, followed by active recovery then 5 minutes at VO2 max power (the last third of the session was not shown due to excessive artifact):
- The black arrow is the ramp (130 to 230w, 5w per min) the blue circle is the HIT interval. Yellow is HR.
- All three sample rates produce similar looking values over time! Even though the low sample rate 125 Hz has waveform loss of definition, the end result a1 appears not to be affected.
A zoomed view of both the ramp and HIT interval confirms this:
If we look at a Bland Altman plot of the differences per point, the 125 and 500 Hz are very close, with some scatter at low DFA a1 values:
Is this real or a fluke? I was very surprised at these results, therefore took a look at another ramp recorded at 500 Hz, and compared to a 125 Hz downsampled version. This ramp was done almost to failure, well past the VT2/LT2/RCP/MLSS.
- We see again the close tracking of both 500 and 125Hz sample rates.
- There was some deviation (blue circle) at very low DFA a1, that may or may not matter for physiologic analysis.
- The Bland Altman difference plots also reflect the above - close agreement in the DFA a1 .5 to 1.0 range. Part of the scatter at DFA a1 near .3 is that section circled above.
Conclusion:
- Manipulation of sample rate via downsampling appears not to affect DFA a1 to a major degree in the range we are interested in. There may or may not be some issues at very low a1 values.
Next problem - do device related algorithms play a role?
To introduce this topic, I'm going to go back to an old ramp comparison I did between the Movesense HR+ in RR mode vs the Polar H10. By way of some background info, the Movesense unit use 125 Hz sample rates when transmitting RR data to a Garmin watch or head unit as opposed to the Polar H10 which uses 1000 Hz. The Movesense unit had stock firmware (not the Medical module version). I wore the HR+ module on a gel pad strip high on the chest so as to get a clean signal and not bump into the H10.
Here is a comparison of heart rate values for each data point. The correlation coefficient was above .999 - showing that the match up of each ramp was very, very close (important to show since they are different devices)
The DFA a1 values over time:
- The Movesense HR+ markedly underestimates the DFA a1 at all time points.
- If we were to use this for HRVT training information, a gross error would have been produced in power or heart rate.
I had originally thought that the issue with the underestimated DFA a1 data out of the HR+ device was caused by a low sample rate. That's in part why I wanted to see what happened to downsampling the ECG data - to show that's what caused the issue, and encourage Suunto to boost the sample rate. It now appears that this underestimation of DFA a1 is caused by an issue of internal signal processing of the time sequence data rather than sample rate.
To fully put the sample rate question to rest, we are going to look at ramp data using a Polar H10 in RR mode (sample rate 1000Hz) vs a concurrent Polar H10 ECG recording (same device, same session) done at a sample rate of 130 Hz recorded simultaneously and compare both to the Movesense HR plus module with updated firmware (as opposed to the stock version used above).
- H10 in RR mode (1000 Hz)
- H10 in ECG mode (130 Hz)
- Movesense in RR mode with new firmware (125 Hz)
For the recording of the Polar H10 ECG, an android app called Polar Sensor logger is recommended. Recording with this was covered in a previous post. Data is saved to your android device storage for later analysis. It can now be read by Kubios (premium) with waveform display and proper time stamps (no more guessing what the sample rate was).
Exercise protocol was a near "full ramp" - 100 to 330w, at 10w/min rise using Zwift as the control for the smart trainer.
Entire session - with ramp, then active recovery, then Wingate 60s, then near VT1 power for 7 minutes.
Zoomed Ramp:
Zoomed Wingate and near VT1 x 7 min:
Observations:
- Although the H10 RR and H10 ECG are close especially after the HIT session, there appears to be some divergence in the ramp data values.
- The Movesense unit, even though it has the same sample rate as the H10 in ECG mode, reads lower during the ramp and the HIT interval. But it seems much improved with the newer firmware! Therefore, software implementation can make a huge difference even with the same hardware in regards to DFA a1 tracking.
These observations are confirmed with a look at the Bland Altman difference plots:
Same device (H10) but comparing RR mode (sample rate 1000Hz) vs ECG mode (sample rate 130 Hz)
- The mean difference is near zero, although the scatter is higher at low a1 values.
Different devices but near equal sample rates - H10 in ECG mode (sample rate 130 Hz) vs Movesense in RR mode (sample rate 125 Hz)
- The Movesense, even with newer firmware, is reading lower than the similar sample rate Polar H10 in ECG mode.
Final Summary:
- Although precision in RR timing is of paramount importance for "correlation properties" and fractal patterns, it appears that limited downsampling of ECG tracings does not lead to major inaccuracy of DFA a1. This is not what I expected. However this is N=1 data, so YMMV.
- Although many current recommendations for HRV research state that the recording device sample rate should be above 250 Hz, data with a lower recorded rate may still be valid for DFA a1 purposes.
- The Polar H10 in RR mode (sample rate 1000 Hz) also appears to provide similar DFA a1 values to the H10 in ECG mode (130 Hz). This is very fortuitous for users who wish to look for cardiac arrhythmia and DFA a1 metrics in their exercise data. Using the android recording software above with a Polar H10 and Kubios premium, provides a reasonable HRV/ECG/arrhythmia detection solution.
- HRM device software seems to play an important role in RR detection and interbeat time related precision. Two different devices (H10 in ECG mode vs Movesense in RR mode) have similar sample rates but divergent DFA a1 values. Prior posts have shown good DFA a1 concordance of the Movesense ECG with the H10 where Kubios decides on the RR timing of the Movesense ECG, therefore the issue could be in the RR computation of the Movesense unit when in direct RR mode.
- In both cases (device and sample rate), although the mean differences may be small, the scatter is relatively large at very low DFA a1 values. This could present a problem at high exercise intensities, well above the HRVT.
- Finally, runners with the "low a1 while running" situation can use their Polar H10 in ECG mode to record a session for further analysis of waveform changes, other potential issues in the hopes of figuring out this problem.
Heart rate variability during dynamic exercise
- Firstbeat VO2 estimation - valid or voodoo?
- Heart rate variability during exercise - threshold testing
- Exercise in the heat and VO2 max estimation
- DFA alpha1, HRV complexity and polarized training
- HRV artifact avoidance vs correction, getting it right the first time
- VT1 correlation to HRV indexes - revisited
- DFA a1 and Zone 1 limits - the effect of Kubios artifact correction
- HRV artifact effects on DFA a1 using alternate software
- A just published article on DFA a1 and Zone 1 demarcation
- DFA a1 vs intensity metrics via ramp vs constant power intervals
- DFA a1 decline with intensity, effect of elevated skin temperature
- Fractal
Correlation Properties of Heart Rate Variability (DFA a1): A New
Biomarker for Intensity Distribution in Endurance Exercise
- Movesense Medical ECG V2.0 Firmware brief review
- Movesense Medical ECG - improving the waveform and HRV accuracy
- DFA a1 and the aerobic threshold, video conference presentation
- DFA a1 - running ramp and sample rate observations with the Movesense ECG
- DFA a1 calculation - Kubios vs Python mini validation
- Frontiers in Physiology - Validation of DFA a1 as a marker of VT1
- Real time Aerobic thresholds and polarized training with HRV Logger
- Active Recovery with HRV Logger
- DFA a1 and exercise intensity FAQ
- DFA a1 agreement using Polar H10, ECG, HRV logger
- DFA a1 post HIT, and as marker of fatigue
- DFA a1 stability over longer exercise times
- DFA a1, Sample rates and Device quirks
- DFA a1 and the HRVT2 - VT2/LT2
- Low DFA a1 while running - a possible fix?
- Runalyze vs Kubios DFA a1 agreement