RC protocol to Joystick for Simulation

Hi,

I built this project so I can use my Flysky FS-i6x to learn flying Quadcopters. I tested it and it works perfectly.

The project is about turning a Raspberry Pi Pico (RP2040) into a USB HID joystick that reads an RC receiver’s serial output (iBUS or SBUS) and presents itself to a PC/Mac as a standard game controller — perfect for drone / plane simulators like Liftoff, Uncrashed, ..etc

The firmware auto-detects iBUS vs SBUS at boot from the same GP1 pin, and even re-detects live if you swap receivers without unplugging the Pico. Any receiver speaking either protocol works:

  • FlySky FS-iA6B, FS-iA10B, FS-iA8B, X6B, X8B, etc. (iBUS or SBUS)

  • Radiolink R7FG, R9DS, R12DS (SBUS)

  • FrSky X4R, X8R, R-XSR, X6R (SBUS)

  • Any generic receiver with an iBUS or SBUS port

Link for the project : GitHub - PashMohandes/xBus-to-Joystick: Pi PICO convert IBUS and SBUS signal to Joystick · GitHub

I also uploaded the UF2 so you don’t have to build the code.

4 Likes

That is quite cool ! thanks for sharing !

1 Like

Hi

For the fs i6x specifically, I think you can directly use the provided usb cable for simulators. Atleast it works on mine

It works fine and all the 10 channels get detected on the pc

Technically it works but cable is connected from below and not comfortable. You can’t simply place the Tx on a table and play.

plus you always need to be 1 meter from your PC due to short cable.

With my solution, i sit on the couch and play far away from the screen/TV