Roberto Viola

Freemotion t10.9b Reflex and QZ: Speed, Incline and Workout Control for Zwift

QZ now includes a dedicated Freemotion t10.9b REFLEX™ treadmill profile based on PR #5281. The merged profile follows the captured iFIT-family HCI sequence, reads the treadmill telemetry, and adds QZ speed, incline and workout-control handling for this model.

Freemotion t10.9b Reflex treadmill image. Source: Freemotion Fitness official product page. Image source

What was added in PR #5281?

PR #5281 adds the Freemotion T10.9B (HCI snoop) model option to QZ’s treadmill settings and routes it through the existing ProForm/iFIT-family treadmill implementation. The code is in public master through merge commit 8b2e98c.

The Freemotion t10.9b Reflex is an iFIT-connected treadmill with speed and incline-matching capability. Its official product information lists speed, time, incline, distance, pace, calories and heart rate among the console readouts. QZ’s profile is therefore a bridge for the treadmill session: it connects the captured HCI protocol to QZ’s metrics, virtual treadmill and workout ecosystem.

Freemotion-specific QZ compatibility

CapabilityWhat the merged profile does
Dedicated model selectionSelect Freemotion T10.9B (HCI snoop) in QZ’s treadmill model options. The setting is restart-required and is kept separate from the neighbouring ProForm profiles.
Captured initializationReplays the captured I_TL initialization sequence, including the HCI exchange and the recurring setup frames used before the live poll cycle.
Live speedDecodes the profile’s hundredths-formatted speed field and updates QZ treadmill speed in km/h.
Live inclineDecodes the signed hundredths-formatted incline field and updates QZ treadmill incline.
Distance, calories and cadenceQZ continues its treadmill metric pipeline: distance is accumulated from live speed, calories are calculated from the QZ workout inputs, and cadence can be calculated from speed when no separate power sensor is selected.
Speed controlThe profile adds the native Freemotion speed selector, little-endian hundredths value and checksum base used by the captured command format.
Incline controlThe profile adds the native Freemotion incline selector, little-endian hundredths value and checksum base used by the captured command format.
Start, stop and pauseQZ sends the captured Freemotion start and stop command sequences, with the pause request using the stop path already exposed by the treadmill control model.

How to set it up

  1. Install a QZ build that contains PR #5281 or a later release containing merge commit 8b2e98c.
  2. Open QZ’s treadmill model settings and select Freemotion T10.9B (HCI snoop).
  3. Restart QZ when prompted so the new profile is loaded.
  4. Turn on the t10.9b and keep other treadmill Bluetooth apps disconnected while QZ establishes the connection.
  5. Confirm that QZ receives speed and incline values from the treadmill.
  6. Enable the QZ virtual treadmill output and pair Zwift or another compatible training app with QZ’s virtual treadmill.
  7. Use the QZ controls or the compatible app’s workout targets for speed and incline when that app sends supported treadmill commands.

The main QZ feature set

QZ adds a flexible bridge and workout layer around the equipment connection. These features are app-, platform- and driver-dependent; they are listed separately from the Freemotion profile so the article does not confuse a general QZ capability with a native treadmill feature.

AreaWhat QZ can offerFreemotion t10.9b context
Live metrics and UICustom tiles, tile visibility and order, user/device profiles, zoom, charts, live values and workout recording.QZ can display the telemetry received through the t10.9b profile and expose it to the selected virtual device.
Heart rateBluetooth, ANT+ and Apple Watch heart-rate sources, with configurable heart-rate zones and heart-rate tools.Use the treadmill EKG grips or a separately paired QZ heart-rate source according to the available connection path.
Virtual treadmill bridgeVirtual treadmill/FTMS output for Zwift, MyWhoosh, Rouvy, Wahoo RGT, Kinomap, BKOOL, Fulgaz, VzFit, BitGym and other compatible applications.The Freemotion profile supplies the treadmill telemetry and can receive supported app control through QZ’s treadmill path.
Speed and incline workflowsQZ supports treadmill speed/incline workflows and app-driven control where the selected driver and target app provide the required commands.PR #5281 adds the t10.9b-specific speed and incline serializers, including the captured HCI selectors and checksums.
Peloton and training modesPeloton-oriented metric, heart-rate and auto-workout workflows, plus standalone QZ workouts where the selected device path supports the required controls.These are QZ workflows around the treadmill session, not a claim that the Freemotion console is a Peloton device.
Workout formatsVideo workouts, GPX routes with 2D/3D maps, ZWO, XML, random workouts and heart-rate-following programs.Control-driven programs require the target app and the selected QZ path to provide compatible speed/incline targets.
Health and exportsEmail reports, Strava, Apple Health/HealthKit, Google Health Connect and Garmin FIT activity workflows.These integrations export or record the QZ session; they are not Freemotion/iFIT account features.
Advanced integrationsMQTT, OSC, text-to-speech, ANT+ retransmission, Bluetooth remote, Zwift Play & Click and Wahoo DirCon.Enable only the integrations that match the phone, computer, watch or home-automation setup.

Zwift and other training apps

With QZ acting as the bridge, the Freemotion session can be presented as a virtual treadmill to Zwift and other compatible applications. QZ’s documented app ecosystem includes Zwift, MyWhoosh, Rouvy, Wahoo RGT, Kinomap, BKOOL, Fulgaz, VzFit, BitGym and additional FTMS-compatible apps. The exact controls visible in each app depend on that app’s treadmill pairing and workout protocol.

QZ can also run standalone: use its tiles and charts, start a workout, follow a video or GPX route, run ZWO/XML or random workouts, follow heart-rate targets, and save or export the resulting session through the available integrations.

A build-based compatibility guide

The PR documentation records HCI-capture, parser and source-build evidence for the profile, while physical treadmill validation remains a separate step. Use a QZ build that actually contains the merged implementation and treat the first connection as a protocol/setup workflow. This keeps the article precise while still giving Freemotion owners a concrete path to try the new compatibility.

Subscription boundary

QZ is a separate bridge and workout layer. Any iFIT, Zwift, Rouvy, Garmin, Strava or other third-party membership, paid class or premium-content requirement remains controlled by that provider; QZ does not remove another service’s billing requirements.

Troubleshooting checklist

If something does not work as expected, send an email to Roberto.viola83@gmail.com and Roberto will help you check the setup.

Sources

Exit mobile version