This project named "Macros For DJI" is one I have started in order to design and create an application that allows for the creation of "macros" that can be used to carry out a set of tasks using a drone made by "DJI". The application is optimised for use with the DJI Phantom 4 Pro but is compatible with all of DJI's current generation consumer-level drone running firmwares compatible with DJI's SDK 4.0 for Android.
The application uses an API I have created to connect to a MySQL database running on Linux using Amazon Web Services' for hosting in order to allow for safe, fast and efficient cloud based storage.
Android Studio: Android studio is a powerful IDE used to develop Android applications in Java. I used this tool as it is commonly used and has a lot of support available online. It is based on IntelliJ IDEA which is a professional tool for writing code in various languages.
Java: I wrote the application in Java due to the fact that Java is the common programming language used by Android app developer all over the world. It is the most commonly known programming language and allows me to integrate the DJI 4.0 SDK (for Android) allowing for full control over DJI consumer level drones.
MySQL: MySQL was used to create relational database that is structured in a way that allows for information from different tables which hold rows and columns of data to be linked using things called keys. MySQL is the second most popular relational database system in use today and is efficient when used with my application and offers many useful features.
Operating Systems: I used Ubuntu for hosting my MySQL database. Ubuntu is a flavour of Linux that is ideal for hosting as it is feature rich and free.
Drone/ Hardware: The hardware I used for my project included various Windows based & Mac OS based computers due to Java being universal. The Android device I used to compile to and test my application was a "Tesco Hudl 2", chosen for its "low specification", ensuring that even low end devices will be compatible with my application. The drone used in order to run simulations was a DJI Phantom 4 Professional.