App Icon

ANT+ HRM Heart Rate Monitor ❤️


Runner up in the Best New App category of 2022 Connect IQ Developer Award:</p><p></p><p>This data field connects to an ANT+ external (auxiliary) heart rate monitor in addition to the built-in OHR (optical heart rate sensor) or the sensor paired in the system settings, displays the HR and records it to a FIT file for comparison and analysis of the measured HR.</p><p></p><p>Fields saved to the FIT file: HR, min/avg/max lap/session HR, AntID, alias, HR zone.</p>

What’s New

2.2.0 (2023-01-17)</p><p> added Low / High HR Alert (newer devices only)</p><p> removed sensors from settings</p><p> added new devices</p><p> bug fixes</p><p></p><p>2.1.0 (2022-10-24)</p><p> IMPORTANT: NEED TO SET THE DISPLAY FORMAT AGAIN WHEN UPGRADING FROM EARIER VERSION!</p><p> changed format to use {.} instead of $.$ to prevent crashes because of bad settings</p>


Companion Hardware

Get the Hardware

Additional Information


This app requires access to:

  • Send/receive data via ANT radio to/from third-party sensors
  • Record additional information into activity files
  • Your Garmin Connect™ fitness profile
  • Approach® S60 Approach® S60
  • Approach® S62 Approach® S62
  • Captain Marvel Captain Marvel
  • D2™ Air D2™ Air
  • D2™ Air X10 D2™ Air X10
  • D2™ Bravo D2™ Bravo
  • D2™ Bravo Titanium D2™ Bravo Titanium
  • D2™ Charlie D2™ Charlie
  • D2™ Delta D2™ Delta
  • D2™ Delta PX D2™ Delta PX
  • D2™ Delta S D2™ Delta S
  • D2™ Mach 1 D2™ Mach 1
  • Darth Vader™ Darth Vader™
  • Descent™ G1 Descent™ G1, Descent™ G1 Solar
  • Descent™ Mk1 Descent™ Mk1
  • Descent™ MK2 Descent™ MK2, Descent™MK2i
  • Descent™ Mk2S Descent™ Mk2S
  • Edge® 1000 Edge® 1000
  • Edge® 1030 Edge® 1030
  • Edge® 1030 Plus Edge® 1030 Plus
  • Edge® 1030, Bontrager Edge® 1030, Bontrager
  • Edge® 1040 Edge® 1040
  • Edge® 130 Edge® 130
  • Edge® 130 Plus Edge® 130 Plus
  • Edge® 520 Edge® 520
  • Edge® 520 Plus Edge® 520 Plus
  • Edge® 530 Edge® 530
  • Edge® 820 Edge® 820
  • Edge® 830 Edge® 830
  • Edge® Explore Edge® Explore
  • Edge® Explore 1000 Edge® Explore 1000
  • Edge® Explore 2 Edge® Explore 2
  • Edge® Explore 820 Edge® Explore 820
  • Enduro™ Enduro™
  • Enduro™ 2 Enduro™ 2
  • epix™ epix™
  • epix™ (Gen 2) epix™ (Gen 2), quatix® 7 – Sapphire Edition
  • First Avenger First Avenger
  • ForeAthlete® 230J ForeAthlete® 230J
  • ForeAthlete® 235J ForeAthlete® 235J
  • ForeAthlete® 630J ForeAthlete® 630J
  • ForeAthlete® 735XTJ ForeAthlete® 735XTJ
  • ForeAthlete® 920XTJ ForeAthlete® 920XTJ
  • Forerunner® 230 Forerunner® 230
  • Forerunner® 235 Forerunner® 235
  • Forerunner® 245 Forerunner® 245
  • Forerunner® 245 Music Forerunner® 245 Music
  • Forerunner® 255 Forerunner® 255
  • Forerunner® 255 Music Forerunner® 255 Music
  • Forerunner® 255S Forerunner® 255S
  • Forerunner® 255S Music Forerunner® 255S Music
  • Forerunner® 55 Forerunner® 55
  • Forerunner® 630 Forerunner® 630
  • Forerunner® 645 Forerunner® 645
  • Forerunner® 645 Music Forerunner® 645 Music
  • Forerunner® 735XT Forerunner® 735XT
  • Forerunner® 745 Forerunner® 745
  • Forerunner® 920XT Forerunner® 920XT
  • Forerunner® 935 Forerunner® 935
  • Forerunner® 945 Forerunner® 945
  • Forerunner® 945 LTE Forerunner® 945 LTE
  • Forerunner® 955 Forerunner® 955, Forerunner® 955 Solar
  • fēnix® 3 fēnix® 3, quatix® 3, tactix® Bravo
  • fēnix® 3 HR fēnix® 3 HR
  • fēnix® 5 fēnix® 5, quatix® 5
  • fēnix® 5 Plus fēnix® 5 Plus
  • fēnix® 5S fēnix® 5S
  • fēnix® 5S Plus fēnix® 5S Plus
  • fēnix® 5X fēnix® 5X, tactix® Charlie
  • fēnix® 5X Plus fēnix® 5X Plus
  • fēnix® 6 fēnix® 6
  • fēnix® 6 Dual Power fēnix® 6 Dual Power
  • fēnix® 6 Pro fēnix® 6 Pro, fēnix® 6 Sapphire
  • fēnix® 6 Pro Dual Power fēnix® 6 Pro Dual Power
  • fēnix® 6 Pro Solar fēnix® 6 Pro Solar
  • fēnix® 6 Solar fēnix® 6 Solar
  • fēnix® 6S fēnix® 6S
  • fēnix® 6S Dual Power fēnix® 6S Dual Power
  • fēnix® 6S Pro fēnix® 6S Pro, fēnix® 6S Sapphire
  • fēnix® 6S Pro Dual Power fēnix® 6S Pro Dual Power
  • fēnix® 6S Pro Solar fēnix® 6S Pro Solar
  • fēnix® 6S Solar fēnix® 6S Solar
  • fēnix® 6X Pro fēnix® 6X Pro, fēnix® 6X Sapphire, fēnix® 6X Pro Solar, tactix® Delta Sapphire, quatix® 6X Solar, tactix® Delta Solar, tactix® Delta Solar Ballistics
  • fēnix® 7 fēnix® 7, quatix® 7
  • fēnix® 7S fēnix® 7S
  • fēnix® 7X fēnix® 7X, quatix® 7X – Solar Edition
  • fēnix® Chronos fēnix® Chronos
  • GPSMAP® 66i GPSMAP® 66i
  • GPSMAP® 66s / 66st GPSMAP® 66s / 66st
  • GPSMAP® 66sr GPSMAP® 66sr
  • GPSMAP® 86i GPSMAP® 86i
  • GPSMAP® 86s GPSMAP® 86s
  • GPSMAP® 86sc GPSMAP® 86sc
  • GPSMAP® 86sci GPSMAP® 86sci
  • Instinct® 2 Instinct® 2, Instinct® 2 - Camo Edition, Instinct® 2 Solar - Tactical Edition, Instinct® 2 Solar - Surf Edition, Instinct® 2 - dēzl™ Edition
  • Instinct® 2S Instinct® 2S, Instinct® 2S - Camo Edition, Instinct® 2S Solar - Tactical Edition, Instinct® 2S Solar - Surf Edition, Instinct® 2S - dēzl™ Edition
  • Instinct® Crossover Instinct® Crossover
  • MARQ™ (Gen 2) MARQ™ (Gen 2)
  • MARQ™ Adventurer MARQ™ Adventurer
  • MARQ™ Athlete MARQ™ Athlete
  • MARQ™ Aviator MARQ™ Aviator
  • MARQ™ Aviator (Gen 2) MARQ™ Aviator (Gen 2)
  • MARQ™ Captain MARQ™ Captain, MARQ™ Captain: American Magic Edition
  • MARQ™ Commander MARQ™ Commander
  • MARQ™ Driver MARQ™ Driver
  • MARQ™ Expedition MARQ™ Expedition
  • MARQ™ Golfer MARQ™ Golfer
  • Mercedes-Benz Venu® Mercedes-Benz Venu®
  • Mercedes-Benz Venu® 2 Mercedes-Benz Venu® 2
  • Mercedes-Benz Venu® 2S Mercedes-Benz Venu® 2S
  • Montana 700 Montana 700, Montana 700i, Montana 750i
  • Oregon® 7 Series Oregon® 7 Series
  • quatix® 6 quatix® 6
  • quatix® 6X quatix® 6X, quatix® 6X Solar, quatix® 6X Dual Power
  • Rey™ Rey™
  • Rino® 7 Series Rino® 7 Series
  • tactix® 7 tactix® 7, tactix® 7 – Pro Ballistics Edition, tactix® 7 – Pro Edition
  • Venu® Venu®
  • Venu® 2 Venu® 2
  • Venu® 2 Plus Venu® 2 Plus
  • Venu® 2S Venu® 2S
  • Venu® Sq. Venu® Sq.
  • Venu® Sq. 2 Venu® Sq. 2
  • Venu® Sq. 2 Music Venu® Sq. 2 Music
  • Venu® Sq. Music Venu® Sq. Music
  • vívoactive® vívoactive®
  • vívoactive® 3 vívoactive® 3
  • vívoactive® 3 Mercedes-Benz® Collection vívoactive® 3 Mercedes-Benz® Collection
  • vívoactive® 3 Music vívoactive® 3 Music
  • vívoactive® 4 vívoactive® 4, GarminActive
  • vívoactive® 4S vívoactive® 4S, GarminActive S
  • vívoactive® HR vívoactive® HR
Average Rating: (15 Ratings)

Gerhard Olsson
December 23, 2022 | Version 2.1.0

The field works as expected. You get the HR, as that is what is available and stored in the possible way. The comment I have is that it is hard to really use the data, I would appreciate if there were pointers in the field documentation (I saw some comments about a Horse ANT in another review, similar question). The data is available in Garmin Connect and, but it is hard to compare. At least the Android app allows displaying both in the same diagram, but the scales are not aligned. It would be nice if the description has some pointers to a converter that replaces the OHR with the external HR so they could be exported to an .tcx and be compared with the original activity (I still use SportTracks for that).

Nadav Fleischer
November 26, 2022 | Version 2.1.0

זה מאפשר לראות את הדופק של חבר לריצה. עובד טוב

November 14, 2022 | Version 2.1.0

It works quite well getting the orm and hrm data, but not gauge or color on my venu 2 watch, just the hrm heartrate basic info :(

Developer Reply
November 14, 2022, Gavriel

The gauge and zones can only be displayed when the app knows the zones. Go to the settings and add a User and including the Zones field. If you use it yourself then just put "u" there (User's zones), if it's someone else then "m" (automatically calculated from Max HR), or if you want to go fancy then: "z:100,110,120,130,140,150"

November 8, 2022 | Version 2.1.0

When updated to current version app did not inherited settings and ANT IDs. Also, the names of the fields look really weird on setup screens in GExpress: Display format part 1 (AntHR:'{H}', AntZone:integer(2):'{Z}',fraction(2.34):'{z}', AntName:'{N}', WHR:'{h}') {H} or Zones ('u' - use user's HR zones | 'm:[maxHR]' | 'z:[minZ1],[maxZ1],[maxZ2],[maxZ3],[maxZ4],[maxZ5]'. i.e: 'm:181', 'z:90,102,134,145,157,175') What is the difference between "------ Sensor #1 ------" field and "Name" field?

Developer Reply
November 9, 2022, Gavriel

It couldn't inherit because of some changes, I know it's not the best but it was intentional and also there is a note in the What's New section about it. The horrible, long, hard to understand field name is because there's no other way I can display the "HOWTO" for these fields in a way that it's close to where people need to see the format. I'm open to better ways if you have an idea, then please contact me via the Contact Developer link. Sensor: you can have up to 2 sensors identified by ANT ID. If you only want it to record, then this might be enough. You set a Name and you'll see in the recorded activity who you ran with. If you have partners you run with and want to coach them you can add them as User. This way you can also set their zones and you'll see a zone gauge with colors and see their zone on the gauge and also on the display as number. i.e: Z3 or if you want to be more "precise" then as Z3.45. If they have their own HRM just add their ANT ID under the user. I run with my 2 sons so I set up the 2 users with their name and zones. However they pick up a "random" HRM band, so I set it up like this: Sensor: set the Ant ID, and the Name to the actual user that use it at the moment. This way it'll know to use the Zones of the user with the same Name. I know it's complicated. The idea was to enable coaches to give their own HRM to the person they coach and not having to set their zones every time again and again. Here too I'm open to ideas how to make this easier / more user friendly / clearer.

November 6, 2022 | Version 2.1.0

Works perfectly. I contacted the developer about this, but just be aware that some services, like will take this field's data instead of the native field data. You may want this (since you'll get both OHR and HRM data recorded), but it's just something worth knowing.

Дмитрий Румянцев
September 2, 2022 | Version 1.0.2

could not add hrm pro plus because its ant+ id has 6 digit id , and polar h10 connected ant+ id 5 digit id

Developer Reply
October 24, 2022, Gavriel

This is fixed now in version 2.1.0

Siyami Altunbaş
July 25, 2022 | Version 1.0.2

Useful app, thanks developer .

July 24, 2022 | Version 1.0.2

Very useful. Easy to implement.

Greg Bradley
June 24, 2022 | Version 1.0.2

Works very well. I just want to ask if this allows the HRM to be used in conjunction with calculating lactate threshold as my fenix 5 plus says a HRM is needed, not the optical sensor. But does the watch recognise the HRM for this if it is not paired in the settings??

Developer Reply
June 24, 2022, Gavriel

No, lactate threshold and even respiratory rate is only calculated when paired to the watch. With ANT+ HRM i can only display the raw HR data sent by the strap.

June 12, 2022 | Version 1.0.2

Thanks for the field. Tried it several time with XOSS X2 attached on Polar Equine electrode set. Works fine and reliable. Now I can have my own HR and kinetics from HRM-Run and horses' from XOSS. Great. But now I want more ;) Since horses' HR is just displayed on watch or in connect.garmin and not used for any calculation, it feels like certain waste of data. Wouldn't it be nice to enter the horse mass into setup of the field and get horse's calorie spending just to know roughly how more oats to supplement in the evening?

Developer Reply
June 12, 2022, Gavriel

That's a great idea, when I'll have time I'll maybe do a HorseHRM app, but until then you can analyze the saved FIT file, i.e you can import it to I'll soon add HR zones and high HR alert as well that could be potentially also useful for horses.

May 29, 2022 | Version

Quite successful.

Nadav Fleischer
May 10, 2022 | Version

Works as expected. Now I can see the HR of my dad while running together.