Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation


What is it?

A program for feeding data from a serial port to a virtual joystick. Currently these virtual joysticks are supported:

The data coming through the serial port should be structured in a specific way in order for the feeder to recognize it. Currently several protocols are supported:

  • IBUS - used by FlySky radio controllers.
  • SBUS - used by FrSky, Futaba radio controllers.
  • DSM - used by Spektrum radio controllers.
  • MultiWii Serial Protocol - used by RC Flight Controllers running MultiWii, CleanFlight, BetaFlight, iNav, etc.
  • KISS serial protocol - used by KISS RC Flight Controllers.
  • PPM (converted to IBUS) - see Use case 8.
  • CrossFire - thanks to @CapnBry #49
  • DJI Phantom 3 Controller - thanks to @cmyip #52

After data is received it can be mapped to any virtual joystick axis or button in very flexible and configurable way.


Use cases

  1. Use Arduino to read data from any device and send it to your PC - basic sketch in the Arduino directory. See example on using old RC controller for simulators.
  2. Read RC controller (FlySky) directly from any IBUS capable receiver. How-to.
  3. Read RC controller (FrSky, Futaba, etc.) directly from any SBUS receiver. How-to.
  4. Read RC controller (Spektrum) from a DSM receiver. How-to.
  5. Use MultiWii compatible Flight Controller (MultiWii, CleanFlight, BetaFlight, etc.). You can use your actual RC model. How-to.
  6. Use KISS Flight Controller. You can use your actual RC model. It is pretty much the same as MultiWii, only you have to select KISS for protocol.
  7. Use as general virtual joystick feeder. Although the program has the word "Serial" in its name, it is not strictly necessary to feed the virtual joystick from the serial port. You can interact with vJoySerialFeeder in different ways and feed your own data to the virtual joystick or you can get the serial data and use it for your own purposes other than controlling a virtual joystick. How-to.
  8. Feed over network. You can use pairs of virtual serial ports provided by com0com and com2tcp for the TCP/IP transport. Another option is HW VSP3 which combines the virtual serial port and the TCP/IP transport but the free version allows only one COM port.
  9. If you have older RC receiver that only supports PPM you can use Arduino and this sketch to convert PPM -> IBUS. Thanks to wdcossey!
  10. If you have older RC receiver that only supports PWM you can use Arduino and this sketch to convert PWM -> IBUS.

How to get it?

You can download binaries from the releases section or you can build it yourself. Development is done with SharpDevelop 4.4

How to use it?

Check out the Manual.

Like it?

If this software brought a smile on your face, you may shine back if you feel like it: Donate
Thank you!!!