Skip to main content

pycycling

A Python package for interacting with Bluetooth Low Energy (BLE) compatible bike trainers, power meters, radars and heart rate monitors.

The package uses Bleak (Bluetooth Low Energy platform Agnostic Klient) behind the scenes to connect and communicate with bike trainers. Bleak is cross-platform with support for Windows, MacOS, and Linux. Please refer to the Bleak repository for more information about supported platforms.

Disclaimer

I take no responsibility if the use of this package breaks your turbo trainer or stationary bike. Use at your own risk!

The package has been tested with (tested protocols in brackets):

  • a Tacx NEO trainer (ANT+ FE-C over BLE, CPS, CSCS)
  • a Tacx NEO 2T trainer (ANT+ FE-C over BLE, CPS, CSCS)
  • an Elite Sterzo Smart steering plate (STERZO)
  • a pair of Garmin Vector 3 power meter pedals (CPS)
  • a Garmin RVR315 rear view radar (RDR)
  • a Magene S3+ Speed/Cadence sensor (CSCS)
  • an Elite Suito-T smart trainer (CPS, CSCS, FTMS)
  • an Elite Justo smart trainer (CPS, CSCS, FTMS)
  • an Elite Rizer grade simulator (RIZER)

Please let me know if you have used it with another device, and I will add it to the list.

Supported protocols

  • Battery Service (BAS)
  • Cycling Power Service (CPS)
  • Cycling Speed and Cadence Service (CSCS)
  • Elite Sterzo Steering Service (STERZO)
  • Elite Rizer Steering Service (RIZER)
  • FiTness Machine Service (FTMS)
  • Heart Rate Service (HRS)
  • Rear View Radar (RDR)
  • Tacx Trainer Control (ANT+ FE-C over BLE)

Installation

Clone this repo and then run the following command from the root directory

python setup.py develop

Documentation

Please refer to the documentation and the examples folder for basic usage of the package.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/zacharyedwardbull/pycycling. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.

In terms of contributing code, pull requests increasing the features supported in each protocol are especially welcome. If you would like to add support for another cycling related protocol, that would also be appreciated!

Useful documentation

Projects using pycycling

Release files for pycycling 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pycycling 0.4.1
File Size Uploaded
pycycling-0.4.1.tar.gz 158.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pycycling 0.4.1
File Interpreter ABI Platform
pycycling-0.4.1-py3-none-any.whl Python 3 none any Details

Total release size: 319.7 kB

Release files / pycycling-0.4.1.tar.gz

Download URL pycycling-0.4.1.tar.gz
Size 158.1 kB
Tags Source
SHA-256 checksum
How to use checksums
eef3a391767f22bb09f49caa91b69e35c079f59c9f1d024b8ade723c7a01507e
BLAKE2b-256 checksum
How to use checksums
95ae11c177399ba4e044c0ce765080194202153623f0d47a078ce138dcdf0735
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.21

Release files / pycycling-0.4.1-py3-none-any.whl

Download URL pycycling-0.4.1-py3-none-any.whl
Size 161.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
05581ae053db8ae824d4a9528338a8e10276076ffdffaf6f575ef542baf323ba
BLAKE2b-256 checksum
How to use checksums
a7ee3ee88bd17060f6b8c8c4445b538e03538f1b5570cc479cf21891524ca731
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.9.21

Release history Release notifications | RSS feed

This release

0.4.1 This release

2 release files

0.4.0

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page