3.1.3) MAVLink Filter

Overview

The MAVLink filter is one of the fundamental safety pieces for the AERPAW vehicles. The fundamental approach for vehicle control in AERPAW is that the experimenter can do any control moves with the vehicle as long as they pass the MAVLink filter filtering criteria. The main reason for implementing a filter is that MAVLink is extremely powerful to the point where an experimenter could take control away from the safety pilot and stop all the motors in mid-flight. Obviously, allowing this level of control is excessive and violates the FAA Part 107 rules.

The MAVLink Filter is interposed between the vehicle control application and the vehicle autopilot. In the direction from the autopilot to the vehicle control application (the blue arrow shown in the figure), none of the status messages are filtered out. On the contrary, the commands from the vehicle control application to the autopilot are severely limited.

Filtering Criteria

The filter limits the types of commands allowed, as well as imposing movement restrictions on the vehicles.

Commands

The set of commands allowed is different for drones and for rovers: 

Rovers

Rovers are allowed to:

Drones

Drones are allowed to:

Movement Restrictions

Similar to the case of commands, drones and rovers have different sets of movement restrictions:

Rovers

Each movement from a rover has to:

Drones

Each movement from a drone has to:

Other Restrictions

If any of the conditions above is violated, the MAVLink filter stops any subsequent commands from reaching the autopilot, and it further informs the operator experiment oversight (OEO) system of the violation, leading to an experiment abort.

Furthermore, the MAVLink filter is monitoring the change of modes at the vehicle. If the mode of the vehicle changes for any other reason than a command from the vehicle script, the MAVLink filter also aborts the experiment (and prevents subsequent commands to the autopilot). This allows for an immediate override by the pilot at any time during the experiment, or a automatic failsafe event (e.g., low battery, loss of GPS lock, etc.).