Update
zwoTrainer 1.1.0
- FTP tests count only completed efforts, with live pacing and auto ramp cool-down
- Ride FIT files include the planned workout, so Garmin names the activity
- New zone-block app icon and logo assets for the zwoTrainer app and website
and 15 more changes in the original
Read the full notes on github.comAll about zwoTrainer
Summarized by AI from the published release notes (GitHub release); the link has the original. Checked 14 Nov 2026.
More from zwoTrainer
- zwoTrainer 1.4.1
Native installers for zwoTrainer. They are unsigned:
- macOS (_aarch64.dmg for Apple silicon, _x64.dmg for Intel): right-click the app → Open on first launch (or System Settings → Privacy & Security → Open Anyway), then allow Bluetooth access.
- Windows (-setup.exe or .msi): SmartScreen may warn — More info → Run anyway.
- Linux (.deb, .rpm or .AppImage): needs BlueZ (bluetoothd) running.
Already installed? zwoTrainer offers the update itself (Settings → App → Check now); the .app.tar.gz and latest.json files are for that.
Changes since v1.4.0
- Add an optional chime at the end of a workout (4fe989b)
- Add rising and falling countdown notes for power changes (a2b9d63)
Full diff: https://github.com/steffenr/zwo-trainer/compare/v1.4.0...v1.4.1
- zwoTrainer added OpenBikeControl supportzwoTrainer added OpenBikeControl support over Bluetooth in version 1.4.0, and compatibility with BikeControl
- zwoTrainer 1.4.0
Native installers for zwoTrainer. They are unsigned:
- macOS (_aarch64.dmg for Apple silicon, _x64.dmg for Intel): right-click the app → Open on first launch (or System Settings → Privacy & Security → Open Anyway), then allow Bluetooth access.
- Windows (-setup.exe or .msi): SmartScreen may warn — More info → Run anyway.
- Linux (.deb, .rpm or .AppImage): needs BlueZ (bluetoothd) running.
Already installed? zwoTrainer offers the update itself (Settings → App → Check now); the .app.tar.gz and latest.json files are for that.
Changes since v1.3.1
- Register Zwift controller connection before its task can clean up (2ea7e21)
- Document the OpenBikeControl hold timeout in AGENTS.md (6cbda03)
- Use narrow no-break space in French OpenBikeControl tip (499cb28)
- Register OpenBikeControl connection before its task can clean up (02bb9a8)
- Use as_chunks in button_states to fix clippy warning (8546f47)
- Try every write type for the OpenBikeControl App Information (d7ed9e2)
- Recover OpenBikeControl buttons after a lost release message (64d0766)
- Disconnect OpenBikeControl controller when setup fails (fd44519)
- Add OpenBikeControl controllers (71c3484)
Full diff: https://github.com/steffenr/zwo-trainer/compare/v1.3.1...v1.4.0
- zwoTrainer 1.3.1
Native installers for zwoTrainer. They are unsigned:
- macOS (_aarch64.dmg for Apple silicon, _x64.dmg for Intel): right-click the app → Open on first launch (or System Settings → Privacy & Security → Open Anyway), then allow Bluetooth access.
- Windows (-setup.exe or .msi): SmartScreen may warn — More info → Run anyway.
- Linux (.deb, .rpm or .AppImage): needs BlueZ (bluetoothd) running.
Already installed? zwoTrainer offers the update itself (Settings → App → Check now); the .app.tar.gz and latest.json files are for that.
Changes since v1.3.0
- Bump the crates group in /src-tauri with 6 updates (0a2d229)
- Bump tokio in /src-tauri in the cargo group across 1 directory (3d8fb6e)
Full diff: https://github.com/steffenr/zwo-trainer/compare/v1.3.0...v1.3.1
- zwoTrainer 1.3.0
Native installers for zwoTrainer. They are unsigned:
- macOS (_aarch64.dmg for Apple silicon, _x64.dmg for Intel): right-click the app → Open on first launch (or System Settings → Privacy & Security → Open Anyway), then allow Bluetooth access.
- Windows (-setup.exe or .msi): SmartScreen may warn — More info → Run anyway.
- Linux (.deb, .rpm or .AppImage): needs BlueZ (bluetoothd) running.
Already installed? zwoTrainer offers the update itself (Settings → App → Check now); the .app.tar.gz and latest.json files are for that.
Changes since v1.2.3
- Mention the app languages on the features page (a1f9af0)
- Document the language setting (870d9f4)
- Describe multilingual text in the design rules (b44ad2a)
- Document the translation workflow for contributors (eb4b922)
- Check translations and i18n modules in CI (ab1f682)
- Add a translation consistency check (85f49ef)
- Copy the language to new riders like the theme (19850c5)
- Mark top bar labels for translation (e03a9be)
- Translate the app and add a language setting (c10f65a)
- Translate FTP test protocols, messages and results (0e482f7)
- Translate zone names in the diagram and zone list (a092e10)
- Add UI translations for English, German and French (a36145d)
Full diff: https://github.com/steffenr/zwo-trainer/compare/v1.2.3...v1.3.0
- zwoTrainer 1.2.3
Native installers for zwoTrainer. They are unsigned:
- macOS (_aarch64.dmg for Apple silicon, _x64.dmg for Intel): right-click the app → Open on first launch (or System Settings → Privacy & Security → Open Anyway), then allow Bluetooth access.
- Windows (-setup.exe or .msi): SmartScreen may warn — More info → Run anyway.
- Linux (.deb, .rpm or .AppImage): needs BlueZ (bluetoothd) running.
Already installed? zwoTrainer offers the update itself (Settings → App → Check now); the .app.tar.gz and latest.json files are for that.
Changes since v1.2.2
- Set the updater public key (07da556)
- Add a one-time setup script for the updater key (2661577)
- Sign update files and publish latest.json with each release (64f6fb3)
- Offer available updates in the app (6ecda76)
- Add the updater plugin and update commands (9f261c7)
Full diff: https://github.com/steffenr/zwo-trainer/compare/v1.2.2...v1.2.3