Elinext was contacted by the French startup that needed an application intended for controlling mini-drones produced by the company from a mobile device.
The Initial Task
The application ought to allow users to control the flight of drones using the on-screen buttons and menus. The app should also allow the use of a gamepad, have a VR mode, and give users a convenient way to work with media that can be created during the flight.
The app had to:
- provide the control of the flight with the help of joysticks depicted on the screen and an external gamepad;
- allowed live video-streaming during the fight;
- give the opportunity to record a video or take a photo;
- give a convenient way to work with media that can be created during the flight.
The quality of the streaming video should be transmitted with minimal possible losses. That had to be achieved with the most reliable connection via BLE or Wi-Fi. VR mode should have been included in the app.
Solutions and Features
The app gives the users the ability to control the flight of the drone. It's done with the help of an interface that consists of two joysticks drawn on the screen and several buttons and menus. They allow the use of some additional features of the drone (such as the flashlight, the micro grabber tool, the Wi-Fi camera, the micro cannon, and aerobatic moves).
Among the app features, there is an opportunity to recognize devices connected earlier and auto-connect to them.
The application also allows the use of an external branded gamepad that could be connected to the phone with the help of Bluetooth Low Energy.
The app allows displaying a real-time video from the phone camera and streaming video from the drone’s attachable Wi-Fi camera on the screen during the flight with the possibility to record a video or take a photo from the specified source.
Additionally, the application has the ability to stream video from the Wi-Fi camera directly to YouTube/Facebook. The authorization via social networks is also enabled.
The application gives a convenient way to work with media created during the flight (photo, video) and to update firmware on the drone, the gamepad, or a Wi-Fi camera.
It also provides the system with flight statistics stored on the server.
The application had a Virtual Reality mode which was developed specifically for the drone’s Wi-Fi camera. In this mode, the phone screen is divided into two separate sub-screens with slightly different images that allow using it with the VR Cardboard to get a 3D experience.
The Elinext developers completed the task of developing the app for both Android and iOS operating systems.
Virtual Reality mode was enabled via Google VR SDK and OpenGL ES 2.0.
The video streaming process uses the Real-Time Messaging Protocol (RTMP). To handle it, the developers used some open-source solutions with in-house customizations and improvements for this specific application.
The solution is up and is running for our client.