Thursday, July 30, 2020

Movesense Medical Module and dynamic heart rate variability

Over the past several weeks I have been testing both the Movesense Medical module as well as the Heart rate plus device to see if they can track the non linear HRV index, DFA a1 accurately during a 20 minute incremental ramp.  The ramp protocol has been discussed before - after a 20 minute warmup, begin with a starting power at 130 watts then a 5 watt per minute rise up to 230 watts ending at 20 minutes (100 watts over 20 minutes).  In the past my DFA a1 .75 value has been consistently in the 170-180 watt range with a heart rate about 130.  My intent here is to compare the Polar H10 to the Movesense Medical as well as the "Heart rate plus" modules to see if they are in that ballpark.  Although it is difficult to wear two chest belts simultaneously, it can be done - but be prepared to throw out some results if they slide into each other (and cause too many artifacts).

First off, it's been an interesting journey.  The initial results with the Medical module were not consistent,  occasionally having corrupted output files, abnormal ECG wave structure and HRV results that did not make sense.  Some of the difficulties involved using too high a bluetooth sample rate.  Although I have been able to get 500 Hz to work, it is less reliable than 250 Hz.  However, even with a good sample rate and bluetooth transmission, the ECG waveforms were not normal originally. 

Here is an example of what the QRS should look like (taken from a medical grade 1000 Hz ECG):
  • The waveform is smooth and symmetrical.
  • There is a sharp peak.

Now for some samples of the Medical module:
This is a bad waveform with a deviation to the right recorded at 500 Hz:

This is a good waveform with a sample rate of 500 Hz:
  • Better, but still not as sharp as the first sample form the 1000 Hz device.

Does sample rate matter?
There have been several publications examining the importance of sample rates for HRV and even DFA a1.  They do not indicate huge disparities in results comparing rates of 128 and 1000 Hz.  But, they have been done at rest and no study has looked at what happens during exercise.  The problem with lower sample rates is that the waveform loses some smoothness and definition.  Remember, with the lower sample rate, less information about the wave structure is present.

Here is a 200 Hz sample from the Medical module:
  • Notice that the wave is composed of straight line sections.

Here is a Hexoskin sample taken form the .wav file using Audacity:
  • This is a great example of a low-ish sample rate (256 Hz). Each data point that makes up the waveform structure is now exposed

Of course, if we zoom out (on the 200 Hz Movesense above), the structure looks fine:

My concern was that the lower sample rates could affect an index of self similarity (DFA a1) if the level of fine detail was lost.  In addition, the distortion of the wave (tilt left or right) could also lead to some change in the RR timing.

The software engineer in charge of the Movesense Medical device was kind enough to work with me on this issue.  After some adjustments in preprocessing filters (new firmware), both the waveform and bluetooth transmission seem better.

One of the interesting subjects I was introduced to was the effects of pre processing on the final wave or RR.  Depending on the device, internal software, hardware filtering, and processing, the final result could be quite different.  For starters, the Heart rate plus device, although capable of ECG display, does not have the on board hardware and software that the Medical Module has.  This leads to a potential issue in HRV accuracy as we are about to see.

Ramp results:
DFA a1 curves generated from each device as a pure RR sequence to a Garmin watch:
Both devices may have similar RR acquisition and processing (when not in ECG mode) with an internal sample rate of 125 Hz.  The following was recorded using each module as just a heart rate unit with a Garmin watch receiving the bluetooth signal of RR time (like a Polar H10).

Heart rate plus:

Here is the same ramp done using the Medical Module:

  • The results are very close, DFA a1 .75 at: 191 vs 187 watts and 133 vs 131 bpm.
  • This is near my historic averages
The nice thing about both ramp recordings was the absence of any lost beat artifact:
  • Zero artifacts in the 20 minute ramp.

For comparison, here is a Polar H10 recording session (on a different day):

The artifacts were about 1.5% overall, but more prevalent toward the middle - end:

  • This artifact rate was actually very low for the Polar device (I usually get 2-4%).
  • The DFA a1 power and heart rate at a .75 value were also close to both Movesense devices.  Some of the discrepancy could be from artifact.
  • DFA a1 = .75 at 195 watts/135 bpm for the Polar vs 191/187 watts and 133/131 for the Movesense units.
  • Very close indeed despite not being a validation study using multiple ramp trials

ECG recording from both the Medical module and Heart rate plus:
As opposed to RR times series, the following uses the ECG waveform to determine HRV

Heart rate plus, ECG recorded with a sample rate of 500 Hz:

  • Wow, this is really off the mark. 
  • The DFA a1 was below .75 from the start and dropped to very low values right away.  I did repeat this and it was the same.
  • The Heart rate plus module does not seem to accurately measure DFA a1 during exercise.

Lets look at the raw waveforms in Kubios:

  • There are absolutely no artifacts or arrhythmia in the 20 minute ramp.
  • The waveform appears fine.
  • However, apparently, the heart rate plus device does not have the necessary hardware (and software) to reproduce a precise ECG derived timed signal.

Movesense Medical module as ECG recorded at 500 Hz:

  • DFA a1 .75 was reached at 188 watts/131 bpm heart rate.  This was about the same as the Movesense RR series above.  There were no artifacts.
  • I was wearing the Polar H10 at the same time this was done (note the Polar H10 date from the above) which showed 195 watts/135 bpm heart rate at the DFA a1 .75 value.
  • The numbers were close.

Movesense Medical module - Waveform in Kubios:

Here is a closeup.  The waveform is smooth and has a sharper peak than the Heart rate plus unit.

Ability to identify arrhythmia or artifact:

  • This is where having the actual ECG comes in handy.  Both benign (like the above APC) or potentially harmful arrhythmia can be identified in an athlete's tracing.  In addition, a missed beat due to noise could be corrected manually.

Usage under extreme body motion:
I decided to torture test the Medical module.  In this scenario, I performed 3 sets of body weight push ups, 45 seconds per set, only 15 seconds rest between sets (total 3 minutes).  Since the overlying muscles will be very active with their own EMG related electrical activity, this should provide some information on how good the signal filtering mechanism is in the Med module.

Here is the start of the series of push ups (the orange line, red arrow)

Notice how the background noise appears on the baseline signal:

But despite this, the entire series does not have any missed beat artifact:
  • I have tried this with a Polar H10 and the series is essentially unusable due to missed beat artifact.
For instance, here is a 3 minute cycling interval at VO2 max power, followed by some easy pedaling:
  • Over the 3 minute interval the artifact rate was over 7%!

Back to the Medical module during push ups - Arrhythmia identification
There was one APC in the series, easily identified:

  • Both the Movesense Medical module and Heart rate plus are able to record a single lead ECG.  From the standpoint of arrhythmia identification, both are comparable.
  • Simple RR transmission to a Garmin watch or other headunit is done with both devices using a sample rate of 125 Hz.  I have been told that the Medical module may be able to go higher with a firmware change.  Both seem to track DFA a1 well during one of my typical ramps, making them potentially useful for zone 1 identification.  I was extremely impressed with the lack of missed beat artifacts compared to the Polar H10
  • For bare bones HRV using RR values only, the Heart rate plus is a reasonable choice at a very attractive price.
  • The Medical module operating in ECG mode at 500 Hz, will record a single lead ECG with good precision, excellent DFA a1 tracking and is extremely resistant to body motion artifact.  Even significant usage of the chest wall muscle group does not markedly interfere with the ECG nor HRV.  The Medical module can also transmit simple RR values to a bluetooth head unit (even a smartphone or trainer) with what appears to be good precision, despite a sample rate of 125 Hz.  Ideally, a sample rate of at least 250 Hz would be preferable.  The Medical module with it's current form factor, range of abilities, artifact rejection and price are unbeatable.  The development team has been extremely helpful and informative.  I have very high hopes for the role of the Medical module in HRV research during exercise.
  • One last comment - each bluetooth device can only transmit to one other receiver unit at a time.  For instance, recording the Medical module RRs to a Garmin watch will disable the ability to record the ECG series to a smartphone.  You would need to stop the watch recording session, then open the smartphone app for ECG recording.

Sunday, June 21, 2020

Movesense HR+ and Medical ECG review

Recently I came across a relatively new product that has the potential to be a huge advance in both heart rate rhythm and heart rate variability metric investigation.  If I had a wish list of features for a device encompassing the above purposes what would they be? 
Most importantly it would be precision of RR interval detection which is essential to accurate HRV.  I have been very frustrated with the high relative artifact occurrence (
Another function which relates to understanding artifact type is the ability to visualize the ECG tracing.  Visualization is helpful not only from the standpoint of manually correcting a tracing for more accurate HRV, but knowing if the aberrant beats are dangerous or not.  You may see large amounts of "artifact" in the RR series, not from noise but from a potentially serious cardiac arrhythmia. 
Lastly, it would be nice to have a device that is easy to put on, lightweight and inexpensive.  Although I love the Hexoskin, it is costly, each shirt has a finite lifespan (in washes) and takes some effort to gear up. 

Well, the wish list is no longer a wish.
The Suunto team have put together a fantastic, tiny device that does all the above and more.  It is officially know as the
(Edit 6/25 - see the bottom of the page for features of the Movesense HR+)

The price is about 180$ USD.
My unit arrived about a week ago and this is a short review (part 1) of it's ECG functionality so far.

The module mounts on a standard Suunto chest belt strap and is controlled by either an android or IOS smartphone.  I use a Samsung S20 to collect data.  The IOS app is in the app

Install the app, put the sensor on your chest in the standard location.
Let's go through the steps to acquire data.

First - after opening the app, connect to the module:

Click on the icon above which will change the window to either of the following:

This may come up straight away and gives you the choice of which "sensor field" you want to record.

The one below is the main menu if you hit the back button of the above screen.  To get to the sensor list choose the Movesense button option.  Ignore multi connection, DFU (firmware flash) for now.  Saved data is usually in the Movesense folder on the root level of storage, but your phone variant may be different.

You will want to scroll down the sensor list to ECG:

Choose the ECG option, then you will see the screen below:
There is only two functions - Subscribe and Rate.  The Subscribe switch starts and ends the recording.  Before doing this you can change the sample rate of the ECG from 128 up to 512 Hz.  The higher rates will tax your Bluetooth bandwidth so your success may vary.  My S20 has no trouble at the 512 option.

Once you start subscribe the following real time display occurs:

This is not a random animation - it truly is your single lead ECG.

Once you are done with your measurement session, just switch the subscribe button off.
The files are in the Movesense folder as noted above.
There is a problem (as of this date/version) where the file name contains ":" and "." which can confuse the Windows OS.  The files can copy to your Dropbox or a PC, but they won't show up (they are invisible) unless you change the file name in android first.  So get the extra characters out in android before the transfer.

The files are remarkably simple:

This data stream is going to turn into a waveform with the timestamp as the X axis and the Count as the Y axis (shape and amplitude of the wave):

This looks a lot better when imported into Kubios:
This is a section during an indoor trainer session at about 155 watts:

The red arrow on top is an APC, with the yellow marker possibly showing an inverted P wave from a more
Having the visualization is amazingly valuable.

So yes, a neat little single lead ECG system - but how does
it perform outside on a bumpy road at high intensity?  Below is a section of a ride I did yesterday on a bumpy hill with a power between 300 and 400 watts over about 2 minutes.

The tracing is remarkable for two aspects. 
One is the lack of any "drop out" artifact - a similar hill using a Polar H10 looks like this:
Notice the 7% artifact rate (yellow) with the Polar H10.  Each one of those vertical lines represent a missed beat (so a doubling of the RR interval).
The Movesense had none of this.
The second observation is the near perfect waveform despite substantial body motion.  This seems to rival the Hexoskin in both RR tracking and ability to visualize the ECG.

Relevance to HRV monitoring?
The following is an example of how a visualized waveform can help correct artifact and noise in the RR sequence.  In this case, the pre corrected series had a misplaced R peak due to some noise (yellow marker).  Kubios correctly determined that the RR sequence was out of sync (the red arrow on the bottom with the blue vertical line).

We then manually change the R peak over to the correct position as shown below (yellow, but no blue line on the bottom anymore).  Now, the bottom pane no longer has a marker of an out of sync RR series (red arrow where it was before correction).

The result is a correction of the noise artifact and improvement in HRV metric precision/accuracy.

Usage in arrhythmia?
The chest strap (bottom) tracing was quite similar to the ECG lead #2 on the top.

Importantly the quality of the P wave detection was excellent, with very few samples having a poor rating:

What about Premature Ventricular Beats.
Although way beyond the scope of this blog and post, if you do come across
Here is a flow chart from the link above:

Here is an example of 2 wide beats that I found in a tracing at rest (I've never seen any with exercise):

  • There is a full
  • The above was recorded with the Movesense module illustrating it's potential for arrhythmia detection at rest as well as during exertion.

How does it track heart rate?
The module will also record to a Garmin watch (or other head unit) as a regular HRM. Simply, do not start the Movesense app, but put your Garmin watch in search mode and it will find the module as a HRM.  Start recording on the watch and you are good to go.  To switch recording back to the phone (for ECG), stop the Garmin watch and exit the activity menu, start the Movesense app and begin the "subscribe" process.  Remember - we are still limited to one bluetooth connection at a time - you can't do both Garmin and a phone app recording simultaneously.

Here is what the Movesense module displays to the nRF connect app on android:
Therefore, you are able to use the module as you would a standard HRM, but with enhanced accuracy and potential waveform analysis.

Here is a comparison of the Movesense module recorded by a Garmin watch, with the Hexoskin worn concurrently:
  • The tracking is pretty much identical.  A scan through the RR intervals showed
  • This was far different than the H10 ever performed. 

  • Although the module is very usable at the moment, it is still a development device and there are some issues.
  • There are occasional app crashes with loss of data.  I believe stability will improve as the code is further debugged.  If you need a section for analysis - keep the recording as short as possible.  Or, split up the recording into separate files by start and ending the subscribing.
  • File name forbidden characters as above.  Edit before transfer to a PC
  • Some files can't be opened by Kubios - an error is thrown.  However, the file can be read by Excel and I am in contact with tech support for a fix.

Bottom line:
  • The Movesense Medical module is a lightweight, single lead ECG in a chest belt form factor.
  • It has an amazing ability to accurately track both the RR series as a simple HRM as well as showing a stable ECG waveform despite body motion during intense exercise
  • An advantage over the Hexoskin (besides cost, ease of use and longevity) is that the
  • The cost is competitive
  • The development team has been very helpful and cooperative.  One of the programmers went to the trouble to fix a bug in the android app within 24 hours of me asking (thank you, Petri).
  • In a future post, dynamic HRV during exercise intensity will be evaluated.
  • This is potentially "game changing" technology for both research groups, sports teams, amateur athletes and health care investigation.

The modules little brother (or sister):

I decided to order one as well, on the chance it would record the ECG waveform (even though it was not in the specs).  Well, guess what - it does.  The sensor recording option appears similar to the Medical sensor (in the showcase app).  Below are examples of the waveform from the HR+.  The appearance is not optimal since I was wearing the other Movesense module next to it and there was possible chest strap interference.

Here is a normal series of QRS complexes:

This may represent two APCs where the second is not conducted fully:

  • The HR+ is definitely capable of a good single ECG waveform.
  • The device is a steal at the list price.