Drone Connection

Easy setup flow

Drone Connection Setup

Connect your drone in 3 simple steps using either a mobile bridge or an onboard computer.

Secure

Fast

Live data

1

Copy endpoint

Use this in your bridge app

2

Add auth token

Required in every request

Authorization header

Bearer YOUR_TOKEN
3

Start streaming

Your dashboard updates live

Send telemetry every 1 second
Mobile Bridge App
Easiest option for iPhone or Android connection
Step 1

Create DJI developer account

Sign up at developer.dji.com and enable SDK access.

Step 2

Install DJI Mobile SDK

Use CocoaPods for iOS or Gradle for Android.

Step 3

Paste this bridge code

This forwards live drone telemetry to your app.

// DJI Mobile SDK Integration (Swift/iOS)
import DJISDK

func sendTelemetryToBackend() {
    guard let aircraft = DJISDKManager.product() as? DJIAircraft,
          let flightController = aircraft.flightController else { return }
    
    flightController.delegate = self
}

// DJIFlightControllerDelegate
func flightController(_ fc: DJIFlightController, 
                     didUpdate state: DJIFlightControllerState) {
    let telemetry = [
        "latitude": state.aircraftLocation.coordinate.latitude,
        "longitude": state.aircraftLocation.coordinate.longitude,
        "altitude": state.altitude,
        "speed": state.velocityZ,
        "battery": fc.battery?.chargeRemainingInPercent ?? 0,
        "heading": state.attitude.yaw,
        "satellites": state.satelliteCount,
        "flight_mode": state.flightMode.rawValue
    ]
    
    sendToBackend(telemetry: telemetry)
}

func sendToBackend(telemetry: [String: Any]) {
    let url = URL(string: "https://laplant.info/api/functions/droneTelemetryReceiver")!
    var request = URLRequest(url: url)
    request.httpMethod = "POST"
    request.setValue("application/json", forHTTPHeaderField: "Content-Type")
    request.setValue("Bearer YOUR_AUTH_TOKEN", forHTTPHeaderField: "Authorization")
    
    let payload: [String: Any] = [
        "drone_id": "YOUR_DRONE_ID",
        "session_id": "YOUR_SESSION_ID", // Optional
        "telemetry": telemetry
    ]
    
    request.httpBody = try? JSONSerialization.data(withJSONObject: payload)
    
    URLSession.shared.dataTask(with: request).resume()
}
What happens after connection?
Your drone data will appear automatically in the app

Live telemetry

Altitude, speed, battery, GPS, and heading update in real time.

Flight map

Track drone position and flight path as data comes in.

Mission tools

Your dashboard and planner will use the same live session.

LaPlant Digital Herbarium

Developed by Stephen K Adjei πŸ‡ΊπŸ‡ΈπŸ‡¬πŸ‡­

CISAT, Claremont Graduate University (CGU) PhD Student

For commercial purposes, contact the developer.