Drones are awesome. There's so many things you can apply them to. FPV and DIY setups are lots of fun, but they are just hobbies. There are some examples of commercial uses for drones, but they're quite limited at this point. Why? Because you always need a real person piloting the drone. Until drones can perform autonomous functions, they will be little more than toys. There are some drones which can work autonomously but they are usually built with a specific purpose in mind and have a limited non-expandable set of functions. For drones to become truly practical, they need to be programmable and capable of performing various tasks.
To solve this problem we set out to create Flyver - an SDK and marketplace for drone apps. By making our work open-source, we hope to jump-start the development of drone apps and make people see the commercial potential of applying drones to various industries.
The SDK should act as a hardware abstraction layer for building drone applications. The applications built with the SDK can run on the drone itself (Android) or remotely (RC, cloud services, etc.).
Because we want the SDK to be as universal as possible we've developed it to run on 3 types of configuration:
1. Android Smartphone + IOIO OTG board. The smartphone takes care of everything including stabilization. This solution targets developers on a budget who want to start working with drones
2. Android Smartphone + External Autopilot. For building applications which run on the drone itself and/or remotely but require a more stable autopilot. We are currently working on Pixhawk support.
3. External SDKs support. Applications can be built using Flyver SDK that will work on top of a drone's proprietary SDk such as the DJI SDK or the Parrot SDK
SDK functions include:
* Support of various drones
* Message Queue which is extremely easy to use and allows you to send and receive messages (sensors, commands, data) from absolutely anywhere. 3G/LTE is also supported.
* Logger, with which could log all data locally or in the cloud (logger.flyver.co). It could also directly load images to OpenCV.
* Support for various external sensors and additional devices.
* Video streaming and restreaming locally and to the internet.
* Flyver Autopilot is an android based autopilot and flight controller
* along with various lesser functions
We are also selling a simple dev kit which people could buy and start programming the drone and testing different algorithms and apps.
There are a few commercial applications we are already working on as a showcases that this model works and developers can earn money by building drone apps. Demos will be coming in the next months.
A marketplace is planned for the near future. It will allow for the publishing and monetisation of apps developed using the Flyver SDK.
Our SDK is far more powerful than proprietary SDKs shipped with drones in the sense that on top of all the functions they already include, which are usually pretty basic, you also have the ability to use our SDK's extra functions when the drone is connected to the internet. Moreover, the Flyver SDK supports Message Queue, which allows the drone to work with many pieces of external equipment and be used for applications beyond the abilities of the drone itself. In the end, our goal is to give developers the tools to develop apps for any function they want and not limit them to what the drone is capable of on its own.
We are currently looking for enthusiasts and developers to start playing around with the system and get it off the ground. The SDK can be forked or downloaded from GitHub. Most questions about how to get it up and running should be answered in the wiki. Our website has examples of apps which can be built with the current capabilities of the Flyver SDK. Please keep in mind that the SDK is still under development and all the functions have not been completely integrated. Any and all feedback is welcome! If you have any questions you can email us at dev@flyver.co or ask in the forums, subreddit or on Twitter.
Expect published apps very soon,
Cheers!
Comments
Hi Anton, generally the more permissive the license the happier I am. At my company we have a blanket rule that allows us to use any MIT/BSD or Apache license. We need special clearance to use LGPL. And the GPL is almost forbidden.
LGPL strikes a nice balance between ensuring the code is open source and enabling use in commercial software.
Hi Peter, good question.
My name is Anton and I am co-founder in Flyver.
We created Flyver as an opensource initiative. We chose the GPL as one of the most popular licenses among this community. We believe that by linking to GPL we will encourage developers to contribute and enhance the open source project rather than closing their source and hence discontinuing the initiative.
As it comes to proprietary apps (which could be legally separated from the SDK itself), recent feedback from app developers (like yours) are pushing us into less demanding licenses and we are seriously considering switching to GPL v2, GNU Lesser General Public License or even BSD license.
What would be your thoughts?
Anton
Question about licensing, by licensing your SDK under the GPL, aren't you making it impossible to integrate it into proprietary applications?