Skip to content

Hardware-in-the-loop plugin for X-Plane for INAV flight controller firmware

License

Notifications You must be signed in to change notification settings

RomanLut/INAV-X-Plane-HITL

Repository files navigation

INAV X-Plane HITL plugin

Hardware-in-the-loop plugin for X-Plane 11 & 12 for INAV Flight Controller firmware:

IMAGE ALT TEXT HERE

Hardware-in-the-loop (HITL) simulation, is a technique that is used in the development and testing of complex real-time embedded systems.

X-Plane is a flight simulation engine series developed and published by Laminar Research https://www.x-plane.com/

INAV-X-Plane-HITL is plugin for X-Plane for testing and developing INAV flight controller firmware https://github.com/iNavFlight/inav.

Motivation

I believe that good testing and debugging tools are key points to achieve software stability.

It is not Ok when people debug autopilot by running with RC Plane on the field 😃

I hope this plugin can help to improve INAV firmware.

While not been a main purpose, plugin can be used to improve pilot skils or getting familiar with INAV settings.

How it works

X-Plane https://www.x-plane.com/ is flight simulator with accurate physics simulation.

X-Plane is extendable with plugins. This plugin connects to Flight Controller through USB cable and passes gyroscope, accelerometer, barometer, magnethometer, GPS and Pitot data from X-Plane to FC. Simulated sensors data replaces readings from physical sensors.

FC sends back yaw/pitch/roll/trottle controls which are passed to X-Plane.

X-Plane 11 or X-Plane 12?

Simulation requires at least 50, or even better 100, solid FPS without freezing.

While X-Plane 12 has better visual appearance, X-Plane 11 is still recommented choice due to better performance.

Also, small aircraft physics seems to work better in X-Plane 11.

Setup and usage

See setup.md

Development

See development.md

Special thanks

Many thanks to:

  • Sergii Sevriugin for initial implementation and a lot of testing
  • NKDesign for NK FPV SurfWing RC plane for X-Plane
  • b14ckyy for Surfwing 3D model
  • Scavanger for HD OSD and SITL integration
  • Bart Slinger for MacOs plugin compilation

Links