src.bluetooth_sig.gatt.characteristics.fitness_machine_status

Fitness Machine Status characteristic (0x2ADA).

Classes

Name

Description

FitnessMachineStatusCharacteristic

Fitness Machine Status characteristic (0x2ADA).

FitnessMachineStatusData

Parsed data from Fitness Machine Status characteristic.

FitnessMachineStatusOpCode

Fitness Machine Status operation codes per FTMS specification.

Module Contents

class src.bluetooth_sig.gatt.characteristics.fitness_machine_status.FitnessMachineStatusCharacteristic

Bases: src.bluetooth_sig.gatt.characteristics.base.BaseCharacteristic[FitnessMachineStatusData]

Fitness Machine Status characteristic (0x2ADA).

org.bluetooth.characteristic.fitness_machine_status

Notifies the client about status changes of the fitness machine, including target setting changes and machine state transitions.

allow_variable_length = True
min_length = 1
class src.bluetooth_sig.gatt.characteristics.fitness_machine_status.FitnessMachineStatusData

Bases: msgspec.Struct

Parsed data from Fitness Machine Status characteristic.

The parameter field contains opcode-specific data as raw bytes, or None for opcodes with no parameters.

op_code: FitnessMachineStatusOpCode
parameter: bytes | None = None
class src.bluetooth_sig.gatt.characteristics.fitness_machine_status.FitnessMachineStatusOpCode

Bases: enum.IntEnum

Fitness Machine Status operation codes per FTMS specification.

CONTROL_PERMISSION_LOST = 255
FITNESS_MACHINE_STARTED_OR_RESUMED_BY_USER = 4
FITNESS_MACHINE_STOPPED_BY_SAFETY_KEY = 3
FITNESS_MACHINE_STOPPED_OR_PAUSED_BY_USER = 2
INDOOR_BIKE_SIMULATION_PARAMETERS_CHANGED = 18
RESET = 1
SPIN_DOWN_STATUS = 20
TARGETED_CADENCE_CHANGED = 21
TARGETED_DISTANCE_CHANGED = 13
TARGETED_EXPENDED_ENERGY_CHANGED = 10
TARGETED_NUMBER_OF_STEPS_CHANGED = 11
TARGETED_NUMBER_OF_STRIDES_CHANGED = 12
TARGETED_TIME_IN_FIVE_HEART_RATE_ZONES_CHANGED = 17
TARGETED_TIME_IN_THREE_HEART_RATE_ZONES_CHANGED = 16
TARGETED_TIME_IN_TWO_HEART_RATE_ZONES_CHANGED = 15
TARGETED_TRAINING_TIME_CHANGED = 14
TARGET_HEART_RATE_CHANGED = 9
TARGET_INCLINATION_CHANGED = 6
TARGET_POWER_CHANGED = 8
TARGET_RESISTANCE_LEVEL_CHANGED = 7
TARGET_SPEED_CHANGED = 5
WHEEL_CIRCUMFERENCE_CHANGED = 19