Skip to content

Repository files navigation

iPhone Drone Scanner
Drone Controller

The official iPad application for planner‑driven UAV flight control and real‑time telemetry streaming in the Autonomous Scanning Drone project.

Swift 5.x SDK: DJI Mobile SDK Platform: iPadOS License: MIT


An iPad controller app for UAVs (DJI) for our indoor autonomous scanning pipeline. It receives current pose and goal pose from an external mapping/planning stack, computes control commands, and drives the drone accordingly.

This repository is part of the DART open-source / open mechanical design project.

Original code by She456.


Third-party & Upstream

This app is based on dbaldwin/Mobile-SDK-iOS (a fork of DJI’s iOS sample projects).
DJI Mobile SDK usage follows DJI’s EULA / Developer Policy: https://developer.dji.com/policies/eula/
FFmpeg (LGPL v2.1) is used dynamically and unmodified via DJI SDK/Widget:
License & source/build info — https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html , https://github.com/dji-sdk/FFmpeg
Not affiliated with or endorsed by DJI.


Requirements

  • Xcode 15+, iPadOS 17+ (physical device required)
  • DJI Mobile SDK and DJIWidget (installed via CocoaPods)
  • DJI Developer account & App Key
  • Provisioning profile / Team ID for code signing

Quick Start

  1. Install CocoaPods Open Terminal and install CocoaPods: (If CocoaPods is already installed on your machine, you can skip this step.)

    sudo gem install cocoapods

    The installation may take a long time, please wait. For detailed steps and troubleshooting, please check this guide.

  2. Clone

    git clone https://github.com/wrlab/DART-Drone-Controller.git
    cd Drone-Controller
  3. Install dependencies (CocoaPods)

    pod install
    open DroneController.xcworkspace
    

Run Sample Code

Developers will need to setup the App Key by editing the sample code's info.plist, after generating their unique App Key.

the DJISDKAppKey is present in the Info.plist - developers just need to add their unique key. In both cases developers will still need to update the Bundle Identifier.

⚠️ Safety Notice: Indoor flight is inherently risky. Use at your own risk. Follow local regulations, maintain safe distances, and prepare emergency procedures (hover/land, RTH).


Sample Projects & Tutorials

Several iOS tutorials are provided as examples on how to use different features of the Mobile SDK and debug tools includes:

Learn More about DJI Products and the Mobile SDK

Please visit DJI Mobile SDK Documentation for more details.

SDK API Reference

iOS SDK API Documentation

About

Drone remote controller (DJI) + Mobile (iPad)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages