Check out the full flyMS Documentation!
flyMS is a flight stack used to control a quadrotor drone. It is run on a Beaglebone Blue, or Beaglebone Black equipped with the RoboticsCape. The stack is written in C++ (except for front-end tools), and the scope is sm
This project can serve as a platform for prototyping technologies which use quadrotor drones as a vehicle. This can include:
- Control strategies
- Digital filter design
- Autonomous navigation
- Visual-inertial odometry (VIO)
- Simultaneous localization and mapping (SLAM)
- GPS based navigation
- Collision avoidance systems
- Route planning
By default, you can fly the drone in the standard Stabilized flight mode with a Remote Controller commanding the roll/pitch/yaw values. Acro Mode is also supported, and with externally provided navigation data, Position Mode is supported.
The most common open source flight stack is arguably the PX4 Auto Pilot. It is fully featured, supports many sensors and hardware platforms. At the time of this writing, beaglebone support is still experimental.
Another common platform is Ardupilot which supports many vehicle types, including: fixed wing aircraft, helicopters, drones, boats, submarines, and more.
flyMS is a platform much smaller in scope, allowing users with a Beaglebone & quadrotor hardware an alternative way to install and develop autonomy systems at a reduced learning curve.
- Beaglebone Blue, or Beaglebone Black equipped with the RoboticsCape.
- A Linux PC
- A Spektrum Remote Controller (DX5+) with the DSM Remote Receiver
- Standard quadrotor hardware:
- Frame
- Motors
- Electronic Speed Controllers (ESCs). The standard 3-Pin servo connector is supported by the Beaglebone
- Battery
- (Optional) A smartphone, for rapid PID tuning during outdoor testing
flyMS includes a webserver that is used for interfacing with the flight configuration and system state. It can update PID constants, run calibration routines, and inform you of errors. It can be accessed at http://beaglebone.local:5001/ from any device on a shared network.
NOTE: If flight testing away from a local WiFi connection, you can use a smartphone to connect to the WiFi network broadcasted by the beaglebone itself to access this webserver. The network name is
BeagleBone-XXXX
with a default password ofBeagleBone