Skip to main content

BLE client and FTMS relay for iFit equipment

Project description

iFit BLE Client and FTMS Relay

A Python implementation of the iFit custom BLE protocol for communicating with iFit fitness equipment. This library provides a client for the proprietary iFit protocol and includes FTMS (Fitness Machine Service) relay functionality to bridge iFit equipment with standard fitness apps.

Features

  • BLE communication with iFit equipment
  • FTMS (Fitness Machine Service) relay functionality
  • Command-line interface for device interaction
  • Monitor and discovery modes

Installation

# Install with poetry
poetry install

# Install with server support
poetry install --extras server

# Install all extras
poetry install --extras all

Usage

# Run the CLI
ifit --help

Development

# First time setup
./scripts/setup.sh

# Activate virtual environment
poetry shell

# Run linters and type checks
./scripts/lint.sh

# Format code
./scripts/format.sh

# Run tests
./scripts/test.sh

See CONTRIBUTING.md for detailed development guidelines.

Documentation

See the docs/ directory for detailed documentation:

Acknowledgments

This project builds upon the work of others in the fitness tech community:

  • zwifit - For reverse engineering the iFit custom BLE protocol
  • qdomyos-zwift (QZ) - For the comprehensive activation codes list

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ifit-0.1.0b1.tar.gz (35.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ifit-0.1.0b1-py3-none-any.whl (39.5 kB view details)

Uploaded Python 3

File details

Details for the file ifit-0.1.0b1.tar.gz.

File metadata

  • Download URL: ifit-0.1.0b1.tar.gz
  • Upload date:
  • Size: 35.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.14 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for ifit-0.1.0b1.tar.gz
Algorithm Hash digest
SHA256 548e1b7042778b685c6397beecb0259aa68556ad2da2b63509049cbce047603a
MD5 63a618ef964ac95efdea8367877a5d9a
BLAKE2b-256 27fc9d790e11fdd450b072ffbaa95455c4e65a658056005a1a3319f854f0b609

See more details on using hashes here.

File details

Details for the file ifit-0.1.0b1-py3-none-any.whl.

File metadata

  • Download URL: ifit-0.1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 39.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.3.2 CPython/3.11.14 Linux/6.6.87.2-microsoft-standard-WSL2

File hashes

Hashes for ifit-0.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 fb487c8d6dbf8d373d8a9fdc38504078c0f4db0efd18f9ee260d2775e087158a
MD5 fd5027fe4505c12bb81dc6fd3f05340e
BLAKE2b-256 0d6f5ed8fa3a041afa423b6607241bc3209d45c300eca0aa66e9997b762e5bb0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page