Drones are now matured as a technology and are better understood by developers and users alike. We at FlytBase, have made efforts to provide you with some open source drone applications. These drone apps provide a base platform for your app development and can be customized as and when needed. We invite interested developers to contribute to this repository and help us grow this resource. So without further ado, here is a list of the 10 open source apps for drones you can use.
1. Joystick App (Download Mobile App, Source code)
This simple Mobile/Web App allows the user to control the drone using a joystick interface. You can take off/land your drone with the press of a button and fly it in any direction.
This app uses FlytBase Drone Navigation APIs to send velocity setpoints to your drone and eventually control Roll, Pitch and Yaw movements of the vehicle. You can find the source code and download the Joystick web app here.
2. Video Streaming App (Download app, Source code)
Live video streaming is a must have feature in almost any drone application. This Drone App allows the user to view live video feed from the drone camera. The video is streamed is done over Wi-Fi from a camera attached to the Companion Computer mounted on your drone. You can find the source code and download the app here
3. GPS Follow Me App (Download app, Source code)
GPS Follow Me mobile app enables your drone to follow you around.
This is a sample mobile app using GPS-based positioning. When the follow-me mode is turned on, the GPS coordinates of the device (running the app) are used to send position commands to drone and it starts following the person carrying the device.
Visit here for detailed information and source code.
Check out this video to see how GPS Follow Me App works:
4. AprilTag Detection App (Source code)
AprilTags are 2D barcodes developed for robotics applications and are now being used in various drone applications. This project integrates AprilTags detection with FlytOS. FlytOS takes input image from the camera and publishes processed image with detected AR tags. It can be used with any AprilTags family. You can find detailed information and source code here.
The video below shows a demo on detecting AprilTags with FlytOS:
5. Obstacle Detection using Sonar (Source code)
This Obstacle detection app uses Sonar connected to Arduino to detect obstacles from 6 directions and publish the distance data into ROS. The app also gives you the option to visualize live data received from the distance sensor.
You can write your own custom onboard application that consumes the sonar data and produces an obstacle avoidance behavior. Download the app and check out the source code here.
6. Visual Servoing (Source code)
This app uses gimbal APIs to control a 3-axis gimbal in order to keep the camera(mounted on gimbal) focused on an object of interest in the vicinity. FlytOS vision APIs are used to detect and track the object. Read the full blog on Drone API for Gimbal Control [How to do Visual Servoing]
Check this GitHub link for instructions and source code to setup this app for your drone.
Also, check out the video explaining how to do visual servoing using your companion computer:
7. Search and Rescue App (Source code)
Search and rescue drones are dedicated to find missing people. They are very useful for disaster management and covert operations.
This app provides you with the base layer so that you can customize it for your own use.
It surveys a rectangular area, set by the user in a zig-zag fashion. It looks for campsites and detects their AprilTags.It sends GPS coordinates to the command center, when it finds a particular ID. Command center receives locations of multiple camp sites and deploys rescue drone to one with the highest priority.
FlytConsole is a web-based application that eliminates the need of downloading any GCS Software, as the GCS is directly served from the CC over WiFi. So you can use your laptop, mobile phone or tablet without downloading any application.
You can configure, calibrate, tune, do waypoint missions and stream video real-time with your drone over WiFi using FlytOS web based GCS – FlytConsole.
Find instructions to connect to FlytConsole and different widgets here. You can get access to source code once you install FlytOS.
Also, check out this detailed overview of FlytConsole:
9. Visual Follow Me App
Visual Follow Me is an onboard web app that performs object tracking using computer vision. It comes bundled with FlytOS. This app talks to the onboard Object Tracking module using its FlytAPIs. You can select an object in the video feed and then the drone will start following it.
Also See: Computer Vision for Drones – Part 2
To open this app, connect to your Companion Computer running FlytOS from a browser and go to URL <ip>/followme. You can find detailed instructions to use this app here.
10. Your own custom App
If any of the above drone apps don’t help, you can always build your own custom application. FlytOS provides users with developer tools, SDKs, and APIs which are more than enough to build your own app.
You can also share your app on our GitHub repository and contribute to the open source resource we are building.
To help you get started, here is an instructable guide on how to build your own mobile application.