mirror of
https://github.com/cagnulein/qdomyos-zwift.git
synced 2026-02-17 16:07:43 +01:00
master
* Add HRV (Heart Rate Variability) support from HR belt - Parse RR-intervals from Bluetooth Heart Rate Measurement packets - Calculate RMSSD (Root Mean Square of Successive Differences) as HRV metric - Add HRV tile to display live HRV value in ms - Save HRV data to FIT file as custom developer field - Add tile_hrv_enabled and tile_hrv_order settings Fixes #4194 * Add standard FIT HRV message support with RR-intervals - Store all RR-intervals in SessionLine for FIT file saving - Add getRRIntervalsAndClear() method to bluetoothdevice - Write fit::HrvMesg with RR-intervals in standard FIT format - Each HrvMesg contains up to 5 RR-intervals in seconds This makes HRV data compatible with Garmin Connect and other tools that read standard FIT HRV records. * Remove non-standard hrv_rmssd developer field from FIT file Keep only the standard HrvMesg format with RR-intervals. The hrv field in SessionLine is still used for the HRV tile display. * Fix missing hrv and rrIntervals params in gap-fill SessionLine The gap-fill SessionLine constructor was missing the hrv and rrIntervals parameters that were added to support HRV data from heart rate belts. * Add missing HRV parameters to SessionLine in mainwindow.cpp The SessionLine constructor in mainwindow.cpp was also missing the hrv and rrIntervals parameters added for HRV support. * Add HRV tile setting to settings-tiles.qml Added the tile_hrv_enabled and tile_hrv_order properties and UI component to allow users to enable and configure the HRV tile that displays heart rate variability from compatible HR belts. * Add HRV tile properties to settings.qml Added tile_hrv_enabled and tile_hrv_order properties to the main settings.qml file to mirror the settings-tiles.qml definitions. * Fix HRV RMSSD calculation window size Reduced RMSSD calculation window from 120 to 30 samples. The larger window was including heart rate transitions (rest to exercise), causing artificially high RMSSD values during exercise. A 30-sample window (~20-30 seconds) provides more accurate real-time HRV measurements. * Revert "Fix HRV RMSSD calculation window size" This reverts commitfd3611298e. * Reapply "Fix HRV RMSSD calculation window size" This reverts commitf7951b4562. * Update homeform.cpp * Increment allSettingsCount to 861 --------- Co-authored-by: Claude <noreply@anthropic.com>
qdomyos-zwift
Zwift bridge for Treadmills and Bike!
QZ is not affiliated with or endorsed by any subscription service or maker of exercise equipment.
|
|
|
|
|
|
Features
UI Features
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Tiles Customization | X | X | X | X | Order and visibility of each tile |
| Profiles | X | X | X | X | Different user or different fitness device profiles |
| UI Zoom Customization | X | X | X | X |
Peloton Features
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Bike metrics on the peloton app | X | X | |||
| Power zone with auto resistance | X | ||||
| Peloton real-time resistance conversion | X | X | with the possibility to customize it | ||
| Peloton real-time auto-resistance | X | X | with the possibility to customize it | ||
| Peloton auto speed and auto inclination | X | X | with the possibility to customize it |
Heart Rate Features
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Heart Rate support | X | X | X | X | Apple Watch, ANT+ devices and Bluetooth devices |
| Heart Rate Zones Customizations | X | X | X | X | |
| Ability to calculate Wattage from HR and Cadence | X | for the bikes that doesn't have a power sensor |
3rd Apps Compatibility
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Zwift Compatibility | X | X | X | X | |
| Zwift Auto resistance | X | X | |||
| Zwift Auto inclination and speed | X | X | https://www.youtube.com/watch?v=KTQ2n7yeDbo | ||
| Wahoo RGT Compatibility | X | X | X | X | |
| VzFit Compatibility | X | X | X | X | |
| Rouvy Compatibility | X | X | X | X | |
| IFIT app Compatibility | X | ||||
| Echelon app Compatibility | X | ||||
| Wahoo Dircon Compatibility | X | X | X | X | in order to send data to Zwift or RGT with Wifi only! |
| One device only support for Zwift and Wahoo RGT | X | X | X | X | using Wahoo Dircon https://www.youtube.com/watch?v=gYYUXNWFAok |
| BitGym Compatibility | X | X | X | X |
Training Program
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Builtin video support (Kinomap like) | X | X | X | X | Files could be local or on the cloud! |
| GPX auto following | X | X | X | X | |
| 2D/3D maps for GPX | X | X | X | X | |
| ZWO (Zwift workout file) compatibility | X | X | X | X | |
| XML Workout file compatibility | X | X | X | X | |
| Auto follow workout based on your heart rate | X | X | X | X | |
| Random workout | X | X | X | X |
Statistics
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| E-Mail report | X | X | X | X | at the end of the workout |
| Strava integration | X | X | X | X | press stop at the end of the workout to auto upload it |
Misc
| Feature | Bike | Treadmill | Elliptical | Rower | Notes |
|---|---|---|---|---|---|
| Resistance shifting with bluetooth remote | X | X | |||
| TTS support | X | X | X | X | |
| Zwift Play & Click support | X | ||||
| MQTT integration | X | X | X | X | |
| OpenSoundControl integration | X | X | X | X |
Installation
You can install it on multiple platforms. Read the installation procedure
Tested on
The QDomyos-Zwift application can run on Macintosh or Linux devices iOS, and Android. It supports any FTMS-compatible application software and most bluetooth enabled device.
No GUI version
run as
$ sudo ./qdomyos-zwift -no-gui
Reference
=> GitHub Repository: QDomyos-Zwift on GitHub
=> Treadmill Incline Reference: What Is 10 Degrees in Incline on a Treadmill?
=> Icon Attribution: Icons used in this documentation are from Flaticon.com
Blog
=> Related Blog: Roberto Viola's Blog
Languages
C++
61.1%
C
13%
QML
7.5%
Makefile
6.9%
Java
2.5%
Other
8.9%


