diff --git a/README.md b/README.md index 037f447..03656fe 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,15 @@ # ANT+ to Bluetooth LE Bridge -Bridge an ANT+ cycling power trainer over Bluetooth Low Energy, allowing modern devices that don't support ANT+ to receive power and cadence data. +Bridge an ANT+ cycling power trainer over Bluetooth Low Energy, allowing modern devices that don't support +ANT+ to receive power and cadence data. ## Why this exists -Modern training apps and devices (phone apps, many power meter displays) support Bluetooth LE but lack ANT+ radios. Previously, hardware-based Bluetooth-to-ANT+ bridge boxes were available for this purpose, but these have now been discontinued. This project provides a simple, software-based alternative using a standard USB ANT+ dongle. This bridge listens to ANT+ data from a wired trainer and re-broadcasts it as a standard Cycling Power Profile service over BLE. +Modern training apps and devices (phone apps, many power meter displays) support Bluetooth LE but lack ANT+ radios. +Previously, hardware-based Bluetooth-to-ANT+ bridges were available for this purpose, but these have now been +discontinued. This project provides a simple, software-based alternative using a standard USB ANT+ dongle. +This bridge listens to ANT+ data from a wired trainer and re-broadcasts it as a standard Cycling Power Profile +service over BLE. ## How it works @@ -36,6 +41,8 @@ SUBSYSTEM=="usb", ATTRS{idVendor}=="0fcf", ATTRS{idProduct}=="1008", ENV{MODALIA EOF ``` +The vendor id and product id above can be obtained from the `dmesg` output after inserting the USB dongle. + Then reload the rules and reconnect the dongle: ```bash @@ -106,4 +113,7 @@ make build # Build with ldflags (version, build time) make clean # Remove build artifacts ``` -The Makefile injects the git commit hash and build timestamp via ldflags for version information. +## Known issues + +It has been observed that during use the wattage sometimes drops briefly to 0 but then quickly recovers. +Logging will hopefully pinpoint the issue should it occur again.