Inspiration
We came up with the idea for FlightSaver after reading about many tragic accidents where pilots made the wrong call by trying to abort a takeoff without enough room to stop, instead of climbing to a safe altitude and addressing the failure later.
What it does
FlightSaver is an embedded device that monitors aircraft systems for failures and keeps track of the aircraft's speed during takeoff. Before takeoff, the pilots dial in a V1 speed (the speed beyond which a takeoff cannot safely be aborted). During takeoff, if a failure is detected before V1, FlightSaver will tell the pilots to abort takeoff (in manual mode) or apply maximum braking (in automatic mode). If a failure is detected after V1, FlightSaver will tell the pilots to continue taking off.
How we built it
FlightSaver is written in C and runs on an Arduino Uno. It uses a potentiometer for V1 input and a heavy duty toggle switch for automatic/manual mode selection. It outputs aircraft status information to an LCD display and uses a buzzer and LED to indicate abort/continue information.
FlightSaver is tested hardware-in-loop with Microsoft Flight Simulator X (FSX) and the PMDG 737-800 NGX addon. A client program running on the same computer as FSX uses the SimConnect SDK to read simulation variables (such as airpseed, engine parameters, etc.), and relays those to the Arduino over a serial connection.
Challenges we ran into
We built the Arduino half of the project and the client application separately, then merged the two halves together. The greatest challenge we encountered was getting our custom 4-byte packet serial communication protocol to work between the client and the Arduino.
Accomplishments that we're proud of
We're proud that FlightSaver is fully working and can make the V1 abort/continue decision faster than a human can.
What we learned
We learned how to interface with Microsoft Flight Simulator X using the SimConnect SDK in C#. This was particularly difficult since the SDK is written in C++, and documentation for the managed .NET wrapper is seriously lacking. We also learned how to design a simple serial protocol and implement it on both a client application and an embedded device.
What's next for FlightSaver
We hope that we can implement FlightSaver as a real-world solution for avionics systems, and in turn reduce loss of life stemming from high-speed rejected takeoffs. We would also like to run trials to quantify how much FlightSaver can reduce pilot reaction time.



Log in or sign up for Devpost to join the conversation.