BikeControl Changelog — Release Notes & Version History

Track the latest updates, new features, bug fixes, and improvements to BikeControl, the app that connects physical controllers to trainer apps such as Zwift, MyWhoosh, Rouvy, and TrainingPeaks Virtual. Every entry below is a released version of BikeControl on iOS, Android, Windows, and macOS.

The most recent release documented here is BikeControl 6.4.0, released on 10 August 2026. 57 releases are listed below, newest first.

BikeControl 6.4.0 — released

Features:

  • Added a guided setup on first launch
  • Zwift Click V2: a new full-screen explainer lets you choose your unlock mode when the controller is first discovered — right side only (no Zwift unlock and no restarts, ever) or unlock with Zwift (both controllers, re-unlock every 24 hours). Picking the right side also remaps it so + shifts up and B shifts down, since one puck now covers both directions.
  • Trainer connection: a new "Help me decide" link explains the connect modes before you pick one.

Fixes:

  • Accessories (Headwind, KICKR Climb) now appear on the main screen, so one that isn't yours — a neighbour's fan picked up through the wall — can be opened and put on the ignored list.
  • Windows: connection issues with virtual trainers are solved for MyWhoosh & Rouvy
  • SRAM AXS: the shifter no longer disconnects after about three minutes of coasting.
  • Windows: Bluetooth advertising fixes when switching the Virtual Shifting transport.

BikeControl 6.3.0 — released

Features:

  • SRAM AXS: After a lot of tinkering, SRAM AXS levers are now fully supported - all individual buttons are supported now. Read more in our blog!
  • WHEELTOP EDS shifters (beta): use your EDS OX or TX shifter as a controller — top/bottom buttons shift up/down by default and are fully remappable.
  • The Strappo Trainer app is now officially supported

BikeControl 6.2.0 — released

Features:

  • Virtual front derailleur: adds a second chainring (2× drivetrain) for more realism. The new assignable "Front Shift (Chainring)" action toggles between your small and large rings, changing resistance by the exact chainring ratio while staying on the same rear cog.
  • SRAM style shifting: when you click shift up & down at the same time, the front chainring switches
  • iOS / iPadOS: Floating gear overlay (Picture-in-Picture): your current gear can now show in a floating window over your trainer app during a ride.
  • Screen recording: a new assignable "Record Screen" action starts a screen recording from a controller button.

BikeControl 6.1.0 — released

Features:

  • WiFi enabled Smart Trainers are now supported
  • Zwift Click V2: the new unlock handling is now available to everyone. A new "Use new unlock method" setting lets you switch back to the classic single controller at any time.
  • To conserve battery, Bluetooth Controllers are disconnected after a few minutes when BikeControl is no longer connected to your trainer app (e.g. training session ended)

BikeControl 6.0.0 — released

TrainingPeaks has now partnered with BikeControl, supporting a whooping number of 28 mappable controller actions!

Read more in our blog.

Features:

  • Zwift Click V2: Pro users will now no longer require unlocking with Zwift every 24 hours – hooray! Once some feedback is collected, it will be available for Base users as well :)

BikeControl 5.6.0 — released

  • Zwift Play firmware 2.0.1 is now supported

Connection overhaul:

  • Network connection to Zwift is now improved: only connect to a single device in Zwift, instead of two (one for the trainer and one for the controller).
  • lots of internal changes to make the connection process more reliable and robust.

BikeControl 5.5.0 — released

Features: Virtual Shifting overlay:

  • on macOS, Windows, and Android you can now show the Smart Trainer gear & more on top of your trainer app, when using the virtual shifting functionality introduced in 5.4.0
  • on iOS the gears can be shown as part of the Dynamic Island / Live Activity functionality

Virtual Shifting:

  • Support for virtual shifting for devices without FTMS:
    • FE-C over BLE devices (e.g. Tacx trainers)
    • fix for Zwift ready Smart Trainers
  • new Cadence filter setting to suppress sensor spikes that cause resistance pulses

BikeControl 5.4.0 — released

You can now connect your smart trainer directly to BikeControl. Connect your trainer for:

  • Fully customize Virtual Shifting gears to your liking
  • Add virtual shifting capability if your trainer app doesn't support it
  • Direct gear / intensity / mode changes via your controller
  • Start a mini workout
  • Proxy Bluetooth devices to WiFi
  • and much more – read more in our blog!

Other new Features:

  • In-app chat support: reach out from the app with attachments and diagnostics
  • Redesigned controller visualization with per-device contours: adjust buttons right from the main screen
  • Android: broadcast a custom Intent on button press – connect your controller to automation apps like MacroDroid or Tasker to turn your phone into a ringbell, trigger Shortcuts, toggle lights, and more

Fixes:

  • Many UI adjustments and bug fixes

BikeControl 5.3.0 — released

Rouvy is now officially supported by BikeControl! Read more about it in our blog

Features:

  • Long press now repeats the single click action by default, useful for continuous gear shifting or volume adjustments
  • Improved Gamepad support

Fixes:

  • Bluetooth Media Remotes now trigger actions correctly
  • a number of UI improvements and bug fixes

BikeControl 5.2.0 — released

Great news for MyWhoosh users: MyWhoosh has partnered with BikeControl to provide official support for controller hardware.

  • A new network-based connection method is now available on all platforms, deprecating the previous “Link” connection method
  • To use it, open the connection screen in MyWhoosh and tap the OpenBikeControl icon in the top right

This integration enables seamless and reliable controller support directly within MyWhoosh.

Read the full announcement for more details: https://bikecontrol.app/blog/mywhoosh-bikecontrol-partnership

BikeControl 5.1.0 — released

Features:

  • show latest blog posts from bikecontrol.app
  • Add two extra Wahoo KICKR headwind actions for cyclic speed increase/decrease (thanks @Tumlinh)

Fixes:

  • offer "Mark as unlocked" to mark your Click V2 as unlocked when having unlocked manually

BikeControl 5.0.0 — released

****BikeControl Pro is now available - subscribe to the Pro version to support the project and get access to newly added features. Everyone who has already purchased will keep all their functions.

Pro Features:

  • Cross Platform license: use the same subscription on all your devices (Windows, macOS, Android, and iOS) without additional charge
  • Synchronize and backup your keymap settings across devices
  • Individual actions for single, long, and double clicks, e.g. hold a button to steer, double click to perform a specific action. This means your two button devices can now have up to 6 different actions!
  • Windows, iOS, macOS: start any command/Shortcut, e.g. capture a screenshot, screen video, open a specific app, ... the possibilities are endless!
  • Windows, macOS: new screenshot action to capture a screenshot of the current screen and save it to your specified folder
  • Android: Open Assistant
  • and much more to come in the future!

Features:

  • New app design - let me know what you think about it!
  • Bluetooth media buttons are now supported on iOS
  • Shimano Di2: long press and double clicks are now supported:
    • perform steering using long presses
    • gear changes are now reflected properly without losing any button presses
  • support for Wahoo KICKR BIKE V1 & KICKR BIKE V2
  • App is now available in Spanish

Fixes:

  • macOS: Send keyboard key even if the trainer app isn't in foreground
  • You can now download BikeControl on Windows without the Microsoft Store****

BikeControl 4.7.0 — released

Features:

  • new connection method: act as Bluetooth Keyboard: Your device can now act as Bluetooth keyboard, allowing you to send keyboard shortcuts (e.g. for virtual shifting) directly to your connected device. Especially useful for tablets / iPads.
  • added new keyboard shortcuts for Rouvy (Kudos, Pause workout)

Fixes:

  • you can now finally buy the full version on Android :)
  • save "Enable Media Key detection" setting across app restarts
  • UI adjustments and fixes in the controller configuration screen
  • iOS: Remote pairing now works again

BikeControl 4.6.0 — released

Features:

  • Improve Zwift Click V2 connection and handling
  • Buttons in Configuration are now grouped by device

BikeControl 4.5.0 — released

Features:

  • Android: simulate additional actions for local connection method (Left, Down, Right, Up, Select, Back, Home, Recent Apps)
    • control your phone with your controller
    • control UI within the trainer app (if supported)
  • BikeControl now supports individual mapping when you use more than one Cycplus BC2 and ThinkRider VS200 controller
  • Windows & macOS: allow configuration of volume keys on Bluetooth HID devices

BikeControl 4.4.0 — released

Features:

  • Support for Thinkrider VS200

Fixes:

  • Android: Local connection method allows passing keyboard events to the trainer app
  • macOS: Compatibility with macOS Tahoe
  • Windows: send keyboard events to the correct window when using multiple monitors or when another app is focused
  • Windows: fix media key detection

BikeControl 4.3.0 — released

Features:

  • Onboarding for new users
  • support controlling music & volume for Windows, macOS, and Android
  • App is now available in Italian (thanks to Connect_Thanks2613)

Fixes:

  • Vibration setting now available for Zwift Ride devices

BikeControl 4.2.0 — released

BikeControl now offers a free trial period of 5 days for all features, so you can test everything before deciding to purchase a license. Please contact the support if you experience any issues!

Features:

  • support for SRAM AXS/eTap
    • only single or double click is supported (no individual button mapping possible, yet)
  • use your phone/tablet for steering by attaching your device on your handlebar!
  • App is now available in Polish (thanks to Wandrocek)

Fixes:

  • You will now be notified when a connection to your controller is lost
  • improved UI of the Keymap customization screen

BikeControl 4.1.0 — released

Features:

  • control your trainer manually without requiring a controller - just like a Companion app
  • support for Wahoo KICKR HEADWIND: control the fan via your controller

Fixes:

  • Gamepads: handle analog values correctly on Windows
  • MyWhoosh: updated default keymap to use the new A+D keys for steering

BikeControl 4.0.0 — released

  • a brand-new design
    • Accessibility Permission is now optional on Android
  • Zwift is now fully supported on all operating systems
    • you can choose between network based control or bluetooth based control
  • MyWhoosh can now also be controlled with BikeControl running on the same iPad / iPhone
  • Translations available in German and French
  • support for Wahoo KICKR BIKE PRO
  • support for the OpenBikeControl protocol for supported Trainer apps

BikeControl 3.6.0 — released

SwiftControl is now called BikeControl!

Features:

  • show a list of predefined keymaps for the selected trainer app when using a custom keymap
  • status icons so it's clear what's missing

Fixes:

  • Update Rouvy keymap to support virtual shifting in their latest version

BikeControl 3.5.0 — released

New Features:

  • Dark mode support
  • Cycplus BC2 support (thanks @schneewoehner)
  • Ignored devices now persist across app restarts - remove them from ignored devices via the menu

Fixes:

  • resolve issues during app start

BikeControl 3.4.0 — released

New Features:

  • Support for Shimano Di2
  • Support Keyboard shortcuts with modifier keys (Ctrl, Alt, Shift, ...)
  • Support cheap BLE HID remotes
  • add Keymap for Rouvy, supporting the new keyboard shortcuts for virtual shifting

Fixes:

  • fix detection of Elite Square Sterzo devices
  • recognize cheap Bluetooth device clicks also when BikeControl is in the background

BikeControl 3.3.0 — released

New Features:

  • Support for Elite Sterzo (thanks @michidk)
  • Support for Gamepads
  • Support for cheap bluetooth remotes (such as these)
  • you can now customize the Keymap right from the Customize section
  • show signal strength of connected devices (thanks @michidk)
  • Android and Windows only: simulate bluetooth controllers
    • enables gamepad and bluetooth remotes support for Zwift, Rouvy and Biketerra

Fixes:

  • fix firmware version display for Zwift Click V2 devices
  • fix touch position on some Android devices
  • Wahoo Kickr Bike Shift can now be connected
  • update default keymap for TrainingPeaks

BikeControl 3.2.0 — released

  • a brand-new way of controlling MyWhoosh:
    • device pairing no longer required as mouse emulation is no longer needed
    • BikeControl can now stay in the background
    • more devices can be controlled
    • do more, such as define Emotes, Camera angles, and steering

BikeControl 3.1.0 — released

  • new app icon
  • adjusted MyWhoosh keyboard navigation mapping (thanks @bin101)
  • support for Wahook Kickr Bike Shift (thanks @MattW2)
  • initial support for Elite Square Smart Frame
  • reconnects to your device automatically when connection is lost
  • BikeControl now warns you if your device firmware is outdated
  • BikeControl is now available in Microsoft Store: https://apps.microsoft.com/detail/9NP42GS03Z26

BikeControl 3.0.3 — released

  • BikeControl now supports iOS!
    • Note that you can't run BikeControl and your trainer app on the same iPhone due to iOS limitations but...:
  • You can now use BikeControl as "remote control" for other devices, such as an iPad. Example scenario:
    • your phone (Android/iOS) runs BikeControl and connects to your Click devices
    • your iPad or other tablet runs e.g. MyWhoosh (does not need to have BikeControl installed)
    • after pairing BikeControl to your iPad / tablet via Bluetooth your phone will send the button presses to your iPad / tablet
  • Ride: analog paddles are now supported thanks to contributor @jmoro
  • you can now zoom in and out in the Keymap customization screen

BikeControl 2.6.3 — released

  • fix a few issues with the new touch placement feature
  • add a workaround for Zwift Click V2 which resets the device when button events are no longer sent
  • fix issue on Android and Desktop where only a "touch down" was sent, but no "touch up"
  • improve UI when handling custom keymaps around the edges of the screen

BikeControl 2.6.0 — released

  • refactor touch placements: show touches on screen, fix misplaced coordinates - should fix #64
  • show firmware version of connected device
  • Fix crashes on some Android devices
  • warn the user how to make Zwift Click V2 work properly
  • many UI improvements
  • add setting to enable or disable vibration on button press for Zwift Ride and Zwift Play controllers

BikeControl 2.4.0+1 — released

  • Windows: fix mouse clicks at wrong location due to display scaling (fixes #64)

BikeControl 2.4.0 — released

  • Show an overview of the keymap bindings
  • Allow customizing an existing keymap
  • Add more donation options

BikeControl 2.3.0 — released

  • Add support for latest Zwift Click v2

BikeControl 2.2.0 — released

  • Add Long Press Mode option for custom keymaps - buttons can now send sustained key presses instead of repeated taps, perfect for movement controls in games (fixes #61)
  • Windows: adjust key sending method to improve compatibility with more apps (fixes #62)

BikeControl 2.1.0 — released

  • Windows: automatically focus compatible training apps (MyWhoosh, IndieVelo, Biketerra) when sending keystrokes, enabling seamless multi-window usage

BikeControl 2.0.9 — released

  • you can now assign Escape and arrow down key to your custom keymap (#18)

BikeControl 2.0.8 — released

  • only use the light theme for the app
  • more troubleshooting information

BikeControl 2.0.7 — released

  • add Biketerra.com keymap
  • some UX improvements

BikeControl 2.0.6 — released

  • fix MyWhoosh up / downshift button assignment (I key vs K key)

BikeControl 2.0.5 — released

  • fix Zwift Click button assignment (#12)

BikeControl 2.0.4 — released

  • vibrate Zwift Play / Zwift Ride controller on gear shift (thanks @cagnulein, closes #16)

BikeControl 2.0.3 — released

  • adjust TrainingPeaks Virtual key mapping (#12)
  • attempt to reconnect device if connection is lost
  • Android: detect freeform windows for MyWhoosh + TrainingPeaks Virtual keymaps

BikeControl 2.0.2 — released

  • fix bluetooth scan issues on older Android devices by asking for location permission

BikeControl 2.0.1 — released

  • long pressing a button will trigger the action again every 250ms

BikeControl 2.0.0 — released

  • You can now customize the actions (touches, mouse clicks, or keyboard keys) for all buttons on all supported Zwift devices
  • now shows the battery level of the connected devices
  • add more troubleshooting information

BikeControl 1.1.10 — released

  • Add more troubleshooting during connection

BikeControl 1.1.8 — released

  • Android: make sure the touch reassignment page is fullscreen

BikeControl 1.1.7 — released

  • Zwift Ride: fix connection issues by connecting only to the left controller
  • Windows: connect sequentially to fix (finally?) fix connection issues
  • Windows: change the way keyboard is simulated, should fix glitches

BikeControl 1.1.6 — released

  • Zwift Ride: add buttonPowerDown to shift gears
  • Zwift Play: Fix buttonShift assignment
  • Android: fix action to go to next song
  • App now checks if you run the latest available version

BikeControl 1.1.5 — released

  • fix bluetooth connection #6, also add missing entitlement on macOS

BikeControl 1.1.3 — released

  • Windows: fix custom keyboard profile recreation after restart, also warn when choosing MyWhoosh profile (may fix #7)
  • Zwift Ride: button map adjustments to prevent double shifting
  • potential fix for #6

BikeControl 1.1.1 — released

  • potential fix for Bluetooth device detection

BikeControl 1.1.0 — released

  • Windows & macOS: allow setting custom keymap and store the setting
  • Android: allow customizing the touch area, so it can work with any device without guesswork where the buttons are (#4)
  • Zwift Ride: update Zwift Ride decoding based on Feedback from @JayyajGH (#3)

BikeControl 1.0.6 — released

  • Another potential keyboard fix for Windows
  • Zwift Play: actually also use the dedicated shift buttons

BikeControl 1.0.5 — released

  • Zwift Ride: remap the shifter buttons to the correct values

BikeControl 1.0.0+4 — released

  • Zwift Ride: attempt to fix button parsing
  • Android: fix missing permissions
  • Windows: potential fix for key press issues

BikeControl 1.0.0+3 — released

  • Windows: fix connection by using a different Bluetooth stack (issue #1)
  • Android: fix non-working touch propagation (issue #2)

How BikeControl updates work

BikeControl is actively developed and regularly updated with new features, device compatibility improvements, and bug fixes. The changelog above is generated from the project's CHANGELOG.md on GitHub, where you can also star the project to be notified about new releases and open issues to request device support.

Download BikeControl — free to try on iOS, Android, Windows, and macOS — or read about virtual shifting on any smart trainer.