Use your ExpressLRS 2.4GHz Radio as a joystick for your PC/Mac simulator using an Arduino microcontroller and the actual ExpressLRS receiver.
To connect your radio to your favourite simulator you basically limited to the following options:
- Using USB wire
- Bluetooth Joystick
- Betaflight/FC Joystick
This project provides another wireless connectivity option with the maximum rate of 500Hz (2ms).
-
Microcontroller: Seeed Studio XIAO SAMD21
-
Receiver: BETAFPV ExpressLRS Lite Receiver with Flat SMD Ceramic Antenna
Connect SAMD21 controller to the Windows PC via USB.
Install VSCode IDE and PlatformIO IDE extension:
- https://code.visualstudio.com/
- https://marketplace.visualstudio.com/items?itemName=platformio.platformio-ide
Once installed, navigate to the PlatformIO tab and run build and upload tasks
under "xaio-samd21 -> General".
Connect SAMD21 controller to the Mac via USB. Wait for the Arduino disk to mount and the yellow led to light up on the board.
Validate board interface is available:
$ ls -l /dev/cu.usbmodem*
/dev/cu.usbmodem14301The board is ready for the firmware upload.
The firmware requires platformio framework to be installed:
$ brew install platformioTo build and upload firmware use the following make commands:
$ make build
$ make uploadOnce upload is done, Arduino disk will be forcefully unmounted and yellow led power off. The microcontroller is now in the USB passthrough mode. In order to upload firmware again, it requires to put board to bootloader mode.
Firmware supports direct flashing from the ExpressLRS configurator using BetaflightPassthrough flashing method.
Based on the following projects:

