Skip to content

Basic example to explore what is needed to be able to create a service that a garmin watch can connect to.

License

Notifications You must be signed in to change notification settings

rikard-engstrom/esp32-ble-hrm-garmin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

Heart rate service that a garmin watch can connect to

It was easy to create a heart rate service and to connect to it with nrfConnect

I started with implementing the bare minimum. Since most parts of the hrm specifications are optional, the first step was to do these parts.

 Service: Heart Rate UUID: 180D
    Characteristic: Heart Rate Measurement UUID: 2A37
        Descriptor: Client Characteristic Configuration UUID: 2902

Examin the service with nrfConnect it looks like it was working fine with working notifications.

My Garmin FR935 could discover the service but failed to connect to it.

I tried different things with advertising and descriptors. I eventually started to explor what a Wahoo TICKR exposed and implemented the services one by one. Nothing changed until i added body sensor location. With that in place the watch could use the service.

I haven't done any tests by removing things again to se what is needed but i think the only thing needed is.

 Service: Heart Rate UUID: 180D
    Characteristic: Heart Rate Measurement UUID: 2A37
        Descriptor: Client Characteristic Configuration UUID: 2902
    Characteristic: Body Sensor Location UUID: 2A38

About

Basic example to explore what is needed to be able to create a service that a garmin watch can connect to.

Topics

Resources

License

Stars

Watchers

Forks

Languages