DJI Mavic, Air and Mini Drones
Friendly, Helpful & Knowledgeable Community
Join Us Now

Concept: Mavic LTE controller with no physical mod

jjohnson23112

Member
Joined
Jul 24, 2020
Messages
18
Reactions
12
Age
45
Location
Philadelphia, PA
Hey guys - I know there are a few posts on LTE possibilities, but I have a concept for a velcro-on LTE interface that would work with virtually all Mavic models and doesn't require any mods to the actual drone.

Curious if you guys have any thoughts on why this wouldn't work:

The design would be to have a Rasberry Pi Zero W (with wifi) computer with add-on LTE modem running android strapped onto the actual drone. Running on the Rasberry Pi Zero would be a small android app that consumes the DJI Android SDK. The app would be listening on the internet via the LTE connection and sending virtual stick commands to the WIFI of the drone (which is only 1 inch away because the whole thing is strapped to the drone).

For those Mavic drones (Mavic mini) that don't support direct Wifi communication, it might be possible to rip out part of the Mavic Mini controller that handles the USB interface between the device and the controller and bolt this on.

To control it, you have a simple iOS or Android app that presents virtual sticks and a FPV and communicates via LTE to the Rasberry Pi strapped to the drone.

All of this stuff together should be pretty lightweight and easy for all Mavic drones to lift (even the Mavic Mini)

LMK what you think
 
LMK what you think
I am currently experimenting on that use case with this software - but not with DJI equipment.
That is due to the fact it's impossible to inject control commands in the Enhanced WiFi signals a Mini is using.
The only way to do so is using the onboard SDK of DJI, but that's only available for Matrice series.
 
I am currently experimenting on that use case with this software - but not with DJI equipment.
That is due to the fact it's impossible to inject control commands in the Enhanced WiFi signals a Mini is using.
The only way to do so is using the onboard SDK of DJI, but that's only available for Matrice series.
Yeah for the Mini I am not proposing to mimic the enhanced wifi but rather to dissect a spare MM controller and pull out the board that interfaces with the USB cable and connects to the antennas - i am imagining we can lift that out and stick it on the drone along with the other components that I'm describing.

See the transmitter processor board shown in this blog post by RC Geeks: DJI Mavic Mini Teardown : What's inside?

It's very small - I think that's all you need to solve the issue of the wifi interface.
 
Last edited:
Yeah for the Mini I am not proposing to mimic the enhanced wifi but rather to dissect a spare MM controller and pull out the board that interfaces with the USB cable and connects to the antennas - i am imagining we can lift that out and stick it on the drone along with the other components that I'm describing.
Understood.

You are facing multiple problems:
- Power. How are you powering the attached RC board on the AC?
- How are you powering the Raspberry on the drone?
- How are you powering the LTE modem or whatever device you are using to link to an LTE network?
- Have you thought about the MTOW of the drone?
- What about the interference of the onboard DJI enhanced wifi and Raspberry WiFI?
- How are you emulating the stick commands? (throttle, yaw, elevator and roll)and sending it from your 'new' ground control' station using LTE to the drone?
- And finally, don't forget the legal side of the use of such a device (VLOS)

As I said, there are working devices on the market, but none work with DJI equipment.
Even DJI silently dropped the LTE control device (was announced at the introduction from the Inspire 2) which should control an Inspire 2.
 
Understood.

You are facing multiple problems:
- Power. How are you powering the attached RC board on the AC?
- How are you powering the Raspberry on the drone?
- How are you powering the LTE modem or whatever device you are using to link to an LTE network?
- Have you thought about the MTOW of the drone?
- What about the interference of the onboard DJI enhanced wifi and Raspberry WiFI?
- How are you emulating the stick commands? (throttle, yaw, elevator and roll)and sending it from your 'new' ground control' station using LTE to the drone?
- And finally, don't forget the legal side of the use of such a device (VLOS)

As I said, there are working devices on the market, but none work with DJI equipment.
Even DJI silently dropped the LTE control device (was announced at the introduction from the Inspire 2) which should control an Inspire 2.
Great questions. Let me answer each one:
- Power. How are you powering the attached RC board on the AC?
Unsure on this one - need to research what the power requirements are of the RC board

- How are you powering the Raspberry on the drone?
PSugar battery should give it 4hrs and only weights 44g Pisugar Portable Power Module with 1200 mAh Lithium Battery for Raspberry Pi-Zero Power Supply, Board Kit W/WH Model Accessories (Not Include Raspberry Pi) (1200 mAh): Amazon.co.uk: Computers & Accessories

- How are you powering the LTE modem or whatever device you are using to link to an LTE network?
Raspberry Pi 3G/4G-LTE Base HAT seems like we can maybe use same power source from the Pi

- Have you thought about the MTOW of the drone?
yes - Even the Mini can carry this weight -the components are very lightweight and small the powersource being the heaviest part and can probably keep that under 50g. MM appears to be able to carry 180g See this demo:

- What about the interference of the onboard DJI enhanced wifi and Raspberry WiFI?
we dont' actually need the rasberry wifi unless we are communicating with a mavic model that supports direct wifi communication. For example, in the case of the MM we would turn off the rasberry wifi.

- How are you emulating the stick commands? (throttle, yaw, elevator and roll)and sending it from your 'new' ground control' station using LTE to the drone?
From the ground to the LTE receiver: that is simple programming - just sending TCP/IP messages over LTE to an ip address

From the LTE receiver on the drone to the drone:
These are all features of the DJI Android SDK (virtual sticks) you write a piece of code in android studio to call the DJI sdk and send all the virtual stick commands to it. This will just be running headless here and listening on the internet for the commands and then echoing them to the RC controlller board using the normal DJI SDK

- And finally, don't forget the legal side of the use of such a device (VLOS)
Yes for sure - this is out of the scope of the conceptual discussion.
 
Last edited:
These are all features of the DJI Android SDK (virtual sticks) you write a piece of code in android studio to call the DJI sdk and send all the virtual stick commands to it. This will just be running headless here and listening on the internet for the commands and then echoing them to the RC controlller board using the normal DJI SDK
What Android version are you trying to use on the AC's side?

I am not sure if I understand you correctly - you are trying to use the Mobile SDK on the Raspberry with Android installed?

Is this the setup you have in mind?
1597008922826.png
 
Yes nice diagram. That is exactly what I'm talking about. And yes - use DJI's android SDK (same SDK used by dronelink / litchi etc.) running on android on the Pi. Might have to use a Pi 4 instead of a Pi Zero to support Android 19 which is what DJI MObility requires

Also- ground station RC in your diagram is just a smart phone with virtual sticks that are sending commands to the AC
 
Last edited:
Yes nice diagram. That is exactly what I'm talking about. And yes - use DJI's android SDK (same SDK used by dronelink / litchi etc.) running on android on the Pi.
Do you have a reliable Android implementation on the Raspberry?

You are aware that the Mobile SDK talks to the RC via USB only? So the Air unit can work.

What about the Ground unit? How are you sending the 'Virtual Stick' commands to the Raspberry (via LTE)
You cannot use the Mobile SDK on the Ground side and 'extend' the Mobile SDK commands to the Air unit.
 
Do you have a reliable Android implementation on the Raspberry?

You are aware that the Mobile SDK talks to the RC via USB only? So the Air unit can work.

What about the Ground unit? How are you sending the 'Virtual Stick' commands to the Raspberry (via LTE)
You cannot use the Mobile SDK on the Ground side and 'extend' the Mobile SDK commands to the Air unit.

I *think* Pi 4 can run the version of android we need to support DJI Mobile SDK

Yes - mobile SDK would talk to the RC via USB since it is on the AC that is no prob. In your diagram the AC side would have the controller USB cable connecting the controller transmitter board to the PI.

Ground side is a custom iOS or Android app running on a tablet that has simple virtual sticks on it (No RC needed). As you click the virtual sticks they send TCP/IP commands to the ip address of the Pi sitting on the AC. Consider how a game works on your smart phone they send info to a server and then the server sends info down to the device using some kind of realtime listener like websockets or signalr etc. We can eliminate the server in the cloud to reduce latency and just hit the endpoints exposed by the Pi directly (as an over simplification consider the PI running a webserver and listing on port 80 accepting simple REST commands (like a web service) and directly invoking the DJI SDK based on those commands.)
 
Video of a guy installing Android 9 on Pi
OK, LineageOS - that'll do it.

If you have a working prototype, let me know - I stick with my LTE project based on the PI and a Pixhawk FC.

Good luck
 
  • Like
Reactions: jjohnson23112
Looking as though the RPi4 can have otg over the USB-C port (the same port for power), maybe with android on pi there could be a way to talk directly to the RC just like a regular android otg using DJI Go or Fly?

OMNIROM is a 64-bit version of android for RPi4.
 
Hey guys - I know there are a few posts on LTE possibilities, but I have a concept for a velcro-on LTE interface that would work with virtually all Mavic models and doesn't require any mods to the actual drone.

Curious if you guys have any thoughts on why this wouldn't work:

The design would be to have a Rasberry Pi Zero W (with wifi) computer with add-on LTE modem running android strapped onto the actual drone. Running on the Rasberry Pi Zero would be a small android app that consumes the DJI Android SDK. The app would be listening on the internet via the LTE connection and sending virtual stick commands to the WIFI of the drone (which is only 1 inch away because the whole thing is strapped to the drone).

For those Mavic drones (Mavic mini) that don't support direct Wifi communication, it might be possible to rip out part of the Mavic Mini controller that handles the USB interface between the device and the controller and bolt this on.

To control it, you have a simple iOS or Android app that presents virtual sticks and a FPV and communicates via LTE to the Rasberry Pi strapped to the drone.

All of this stuff together should be pretty lightweight and easy for all Mavic drones to lift (even the Mavic Mini)

LMK what you think
did you ever get a working concept ?
 

DJI Drone Deals

New Threads

Forum statistics

Threads
130,601
Messages
1,554,309
Members
159,608
Latest member
carlos22