flyMS - Flight Stack for Quadrotor Drone
Check out the full flyMS Documentation!
Introduction
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)
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.
Required Hardware
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 Webserver
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