Developer Guide - MobiFlight/MobiFlight-Connector GitHub Wiki


This page is under construction


This Wiki is intended for all people who want to contribute to MobiFlight as a Developer. So if you are one of these people, then I right away want to say thank you for your time and effort that you will put into it.

If you are here and you are not a developer and you are just looking for general user documentation then have a look at https://mobiflight.com

Overview

The MobiFlight project helps to create low-cost flight simulator interfaces for flight simulator enthusiasts and home cockpit builders. It supports different flight simulator platforms already (MS Flight Simulator, Prepar3d and X-Plane) and could be extended to support more. For more general information visit https://mobiflight.com

The MobiFlight project consists of

All sources are available in the respective MobiFlight Github-Repositories:

Let's get started with development

Alright, please take the time and check the following tools and set up your MobiFlight Development Environment

Setup Development Environment

This is what you need to download and install:

  • .NET Framework 4.5+
  • Visual Studio Community 2022 - to edit and build the code for the Connector (UI)
  • Visual Studio Code & Platform.io Extension for Visual Studio Code - to edit and build the Firmware (Arduino Sketch)
  • Git Client for Windows - Both Visual Studio and Code come with extensions but it good to have a plain command line client.

Fork the MobiFlight Connector Repository

If you would like to review the UI source code and maybe contribute, go to https://github.com/MobiFlight/MobiFlight-Connector.git and fork the repository so that you can also later provide your Pull Requests (PR)

Fork the MobiFlight Firmware Source Repository

If you would like to review the firmware source code and maybe contribute, go to https://github.com/MobiFlight/MobiFlight-FirmwareSource.gitand fork the repository so that you can also later provide your Pull Requests (PR)

External Libraries

MobiFlight relies on a couple of publicly available libraries. We started to fork them because of the cool performance improvements by @elral

FirmwareSource/libraries

Check the https://github.com/MobiFlight/MobiFlight-FirmwareSource/blob/main/platformio.ini for the latest list of dependencies.

See how to develop your own custom devices/boards.