Skip to content

Android app that bridges ANT+ Cycling Speed/Cadence/HR sensors as Bluetooth LE sensors

License

Notifications You must be signed in to change notification settings

nieko-nera/CSC_BLE_Bridge

This branch is 3 commits behind starryalley/CSC_BLE_Bridge:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

87e4070 · Jan 19, 2022

History

79 Commits
Feb 19, 2021
Jan 19, 2022
Jan 24, 2021
Jan 18, 2022
Jan 26, 2021
Apr 21, 2020
Jan 19, 2022
Jan 18, 2022
Apr 21, 2020
Apr 21, 2020
Apr 21, 2020
Apr 21, 2020

Repository files navigation

What

This is an Ant+ to BLE (Bluetooth Low Energy) Bridging app for ANT+ Cycling Speed and Cadence (CSC) sensors, ANT+ heart rate sensors, and ANT+ Stride based speed and distance sensors. The app will act as a Cycling speed/cadence and/or HR BLE sensor and/or BLE Running speed/cadence so other BLE device (phone, PC, Mac, tablet) can reads data from ANT+ sensors.

V1.3 screenshot pre V1.3 screenshot (old original version)
Screenshot v1.3 Screenshot

Install

Or you can download the apk in release and use adb to install:

adb install -r /path/to/app-release.apk

Details

This is an Android app which reads ANT+ cycling speed/cadence (CSC), heart rate sensors, and/or stride based speed and distance (SDM) sensors in the background (actually in an Android foreground service), and advertises itself as a Bluetooth Low Energy (BLE) device which implements Cycling Speed and Cadence Profile (CSCP), Heart Rate Profile (HRP), and/or Running Speed and Cadence (rsc) so that other devices can see this Android device as a Cycling Speed & Cadence Bluetooth, Heart Rate BLE sensor and/or Running foot pod sensor.

This is useful when you only have ANT+ CSC/HR sensors but you want to connect to them as BLE sensors (provided that you don't have an USB ANT+ stick around but happen to have an ANT+ enabled Android device like a Samsung phone).

Long hold on the sensors name on top of the screen to rescan for Ant+ devices after the "Start BLE bridging" button has been pressed. All sensors will automatically scan for Ant+ sources when the "Start BLE bridging" button is pressed.

Why

I want to try out Zwift desktop version but I can't get a USB ANT+ Stick anywhere now in my country (due to the C-19 pandemic). So I decided to write one.

I can now sees my speed and cadence coming from ANT+ sensors on Zwift Mac without the need of extra hardware.

Special thanks to pinkemma who implements Heart Rate sensor profile so that this app also reads heart rate from ANT+ sensor and bridges it to bluetooth. (see PR #5 since 10/2020)

Tested devices

ANT+ and BLE enabled Android devices

  • Samsung Galaxy S8 (Android 9)
  • Samsung Galaxy J5 2016 - Thanks louisJ20
  • Samsung Galaxy S9 (Android 10) - Thanks pinkemma
  • One Plus 7 Pro (Android 10) - Thanks michaelrhughes
  • Nokia 7 Plus (Android 10) - Thanks leaskovski
  • Nexus 5 (CyanogenMod 13 and Ant+ Enabler) - Thanks leaskovski
  • OnePlus 5T (Android 10) - Thanks philharle
  • Galaxy Note 9 - Thanks larryb84
  • Samsung Galaxy S10 (Android 11) - Thanks Chris

ANT+ Speed/Cadence sensors

ANT+ Heart Rate sensors

  • Garmin HRM-Run
  • Garmin HRM3-SS - Thanks philharle
  • Garmin Fenix 5s with broadcasting mode on (ANT+ signal) - Thanks pinkemma
  • Garmin 935 with broadcasting mode on (ANT+ signal)
  • Garmin Fenix 6 with broadcasting mode on (ANT+ signal)
  • Garmin HRM2 - Thanks larryb84
  • Garmin Fenix 5 with broadcasting mode on (ANT+ signal) - Thanks Chris
  • Garmin HRM Tri - Thanks Chris

ANT+ Stride-based Speed and Distance Monitor (SDM) sensors

  • Garmin Foot Pod

Apps that use BLE sensors

  • Zwift (Mac/iPad/Windows version)
  • The Sufferfest (Mac version)
  • Zwift (iPad Pro)
  • theoretically all other apps that use Bike Speed/Cadence or Heart Rate or Run Speed/Cadence BLE sensors

Known issues

  • On my Samsung S8 sometimes the bluetooth PHY is messed up (for unknown reason). I have to reboot the phone to get it working. (When it doesn't work, the advertising reports success but actually you can't see any).

Reference

Code samples:

Spec and Document

About

Android app that bridges ANT+ Cycling Speed/Cadence/HR sensors as Bluetooth LE sensors

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Kotlin 100.0%