Skip to content

Use your Taranis QX7S or other OpenTX bluetooth trainer as a macOS joystick

Notifications You must be signed in to change notification settings

garyjohnson/opentx-ble-joystick

Repository files navigation

OpenTX BLE Joystick

Use your OpenTX Blueooth Trainer as a virtual joystick on macOS.

Video in action

Notes

  • foohid (which lets us mount a virtual joystick via IOKit) doesn't work with all games & sims and is no longer supported.
  • I built this specifically to use with Liftoff -- which stopped functioning after an major update. It still works really well for plenty of games & sims. So, if this works for your needs, great, otherwise I recommend checking out the FrSky USB dongle or making use of Betaflight's HID joystick support. Anything that interfaces as a HID joystick via USB is going to have better / broader support.

Requirements

foohid must be installed: foohid-0.2.1.dmg

This is a copy of the last release of foohid, which the original author has stopped hosting. Note the author's message:

The foohid driver is currently unsupported and lacks proper thread-safety (leading to security problems), please do not use it in production unless you want to sponsor the project contacting info at unbit dot it

It's unclear what the specific risks are here, so install foohid at your own risk.

Latest Release

Download the latest release

Supported Devices

Currenly tested with Taranis Q X7S. Expected to work with Horus devices and other OpenTX devices that support Bluetooth Trainer.

Model Configuration

Create a model for simulator use. Under model setup, set Internal RF and External RF to OFF, set Trainer Mode to Slave/BT and Ch. Range to CH1-8.

Usage

OpenTX BLE Joystick will appear in the system tray and will show Searching... until connected. When it finds the radio it will prompt for connection. Use pin 000000 to connect.

Coming Soon

Currently only supports mapping channels to joystick axis. PPM range calibration and mapping to buttons coming soon.

Development

Dependencies can be installed via carthage:

brew install carthage
carthage bootstrap

Packaging requires create-dmg:

npm install -g create-dmg

Build tasks are defined using fastlane. Install using bundler:

gem install bundler
bundle

To build:

fastlane build

To build DMG:

fastlane package

About

Use your Taranis QX7S or other OpenTX bluetooth trainer as a macOS joystick

Resources

Stars

Watchers

Forks

Packages

No packages published