- Faust Control flies one mission: take off to 1 m, fly the points, hover, return and land on the Base marker. It enforces the safety rules: a 4 m limit indoors, a battery check, land on any error, and the radio always wins.
- Base Control runs the Base. It collects inputs, scores possible targets, proposes a mission with a plain reason and waits for Approve, unless Auto is on.
- The mission passes between them as a JSON file, so the flight code stays fixed and tested while the decision side grows.
| Language | Python |
| Link | MAVLink, over WiFi through the Pi |
| Testing | ArduPilot SITL before any real flight |
| Landing | ArUco marker detection on the Pi |
| Code | Private GitHub repo |