The flight monitor system is a C# WPF application on WIN10. It does not quite follow the MVVM design pattern but there is a nice enough separation from the view and the view model.
The flight monitor system is used to send system configuration parameters (e.g. PID constants, turn on/off of the motors, set heading, start calibration routines) to the flight controller and receives flight status report from the flight controller (e.g. gps data, altitude, roll and pitch angle)
This is the protocoll used to communicate between flight controller and the flight monitor System:
command start: #
cammand: three letters
command data lenght: 2 = 2 Bytes; 4 = 4 bytes
cammand end: /