Guide: How to Start Programming Your Drone

Assembling a drone and getting it off the ground is a pretty complicated process. However , assembling a drone, connecting it to the Flyver SDK, making it programmable and letting it perform autonomous functions is nigh impossible without some help, so we decide to create this nifty guide for the enthusiasts and developers out there who want to start creating and using drone apps.

Getting a drone

There are several possible configurations that work with the Flyver SDK. Depending on what equipment you already have and how much tinkering you’re willing to do, you should decide which one is best for you:

1. The Flyver Devkit

IMG_2154 (1)

This is probably the best option for anyone who wants to start using the Flyver SDK immediately with minimal setup. The kit consists of a DJI Flamewheel F440 ARF Kit, a IOIO OTG Board and a case to attach your phone to the drone. The kit comes at a relatively low cost and you just need to connect all the parts in order to get your SmartDrone off the ground and ready to run apps. Here is a detailed article on how to set up the Flyver Devkit to work with the SDK.

2.  Any Commercially Available Quadcopter

DJI-Phantom2-Vision-plusParrot_AR.Drone_2.0_-_indoor_hull

If you already own a quadcopter and you don’t feel like investing in another one, just to work with drone apps, you’re in luck . Because radio controlled copters have a common base, we decided to benefit from that and create an easily hackable solution for building a software independent layer with the SDK. Any copter that has the following elements is compatible with the SDK:

  • Frame
  • Brushless DC motors
  • Electronic speed controllers (ESCs)
  • Power supply board
  • Radio Control (Transmitter and receiver)
  • Control Board, sensors and GPS
  • Lipo Battery

 

If all those elements are present, you can use the following guide to FlyverHack your copter.

Note: for this configuration you will need a IOIO OTG Board which you can purchase on Sparkfun or Aliexpress.

Smartphone Requirements

These configurations use an android phone as the autopilot that runs all the drone’s apps. The requirement for the phone on which the Flyver SDK runs are as follows:

  • Sensors:
    • accelerometer, gyroscope, compass
      • Recommended MPU-6050 – InvenSense or better
    • recommended: barometer
  • GPS, Wifi, 3G
  • Min Android 4.2
  • Refresh rate of sensors: min 100Hz

Some things to keep track of when using the phone with the drone:

  • is well attached to the drone
  • points at the right forward direction
  • Does not run other intensive applications or services on background
  • Does not allow calls, push notifications and other disturbing services
  • Is NOT in debug mode

In the current state of the Flyver SDK these are the only available configurations, but in the future an external autopilot such as Pixhawk as well as a proprietary SDK configuration will be supported.

The setup is extremely easy.
All the instructions could be found in Flyver’s github

Final Preparations & Taking Flight

Laws

Once you have the drone and SDK set up it’s time to start writing apps, field testing them and teaching your drone to perform autonomous functions. There are many factors to keep in mind when using your drone, however arguably the most important one is legislation. Each country has its own specific set of laws regarding UAV use and its important to know them. Drones already have a bad image in the media, so let’s not make it worse by creating newsworthy accidents.

Flyver already has this nifty guide to UAV laws and regulations in the USA, UK and Canada. Additionlly, a quick Google search about the UAV laws in your country will usually yield satisfying results. Keep in mind however that drone laws are a shifting landscape and have to be kept track of as they undergo major changes relatively often.

For the US-based pilots and developers, here is this convenient map of all the no-fly zones in the country. 

Safety

Safety first! We can’t stress this enough. With all these fast moving parts and the relative difficulty in operating them, drones can create a real danger. When testing apps, you don’t even have that much direct control over the drone, so please whatever you do, make sure that there is no chance of anyone being harmed in the process. Too often we see cases of people with too much enthusiasm and too little information and skill causing serious accidents with their drones.  Some general guidelines to follow:

  • avoid days with strong winds
  • do not fly in bad weather (storms, rain, etc.)
  • always have visual contact with the drone
  • Do not fly in crowded areas
  • avoid flying your drone over people as much as possible
  • if there are protectors for the propellors.. Use them!

 

If you’ve followed through on the guide above, then all your bases should be covered and you’re ready to create apps for drones. Any feedback, comments or ideas are welcome. Leave them in the comments below!

 

 

 

 

Recent Posts
Showing 4 comments
pingbacks / trackbacks

Leave a Comment

Contact Us

We're not around right now. But you can send us an email and we'll get back to you, asap.

Not readable? Change text. captcha txt
Screen Shot 2015-05-05 at 16.18.51b-unstoppable-tank-quadcopter-2