🇷🇺 Русский

DJI Mavic Mini CE boost

Disclaimer

This is an experiment solely for educational purpose.

Please do not attempt it as this can void your warranty and may possibly violate local regulations on radio usage. Fly Safe.

On my drone this hack was applied on v01.00.0500 firmware both in RC and the aircraft.
Later I upgraded both to v01.00.0600 and all is fine: hack works, drone flies. However I never had to re-pair the drone and he remote controller.
I fly using DJI Fly v.1.6.9 on Android v.10 phone.


Overview

This hack allows Mavic Mini CE drone and remote controller to bypass local regulation limitations, enabling all WiFi channels and maximum transmission power. After applying this hack use your drone as usual.

  1. Step 1. Make the drone "think" it is in USA or Bolivia, where both 2.4 GHz and 5.8 GHz ranges can be used;
  2. Step 2. Permanently prevent the Remote Controller from resetting the drone back to local limitations.

How-to video

Required parts

That's it. No special adapters, cables, programming environments or paid software. Free and simple!

* iPhone, iPad

With iOS device it is said to be quite easy to implement this hack, too. They used 3u tools to fake location, and it worked perfectly fine even with the up-to-date version of DJI Fly app - no need to downgrade to an older version.

Step 1

We will install old version DJI Fly App 1.1.2 and an app called "Fake GPS Location" on your Android phone.

Fake GPS Location

Fake GPS Location app helps simulate our locaion in USA or Bolivia. Do this at home, under a roof, so that drone does not receive GPS signal from satellites.

Install Android app Fake GPS Location from Google Play.

Enable Developer mode on your Android phone. Go to Settings menu, About phone, locate the "Build number" or "MIUI version" and tap it 7 times. An alert will show that "You are now a Developer".

Now go to Settings again and locate "Developer options" menu at the bottom or under "Advanced settings". In the Developer Options there is an item "Select mock location app" where you can select the Fake GPS Locaion app.

Back to the Fake GPS Location, on the map select any point in the USA or Bolivia and click the "Play" triangle button. Now your phone will think that it is in that position. You can check that in your Gogole Maps app or any other location app.

DJI Fly 1.1.2

Take your phone and remove current DJI Fly App. Download an older DJI Fly App 1.1.2 on your phone. Find downloaded file, open it and install.

Turn it on

Connect the Remote Conrtoller to the phone and switch it on. Launch the DJI Fly App 1.1.2
Switch on the drone.
Wait till it connects to the remote.

The app should display a message:

  Aircraft resetting wireless network settings
  to match local laws and regulations. Wait
  and connect again later.

That's our goal! Click the three dots in the upper right corner and select the "Transmission" menu.
There you should see that frequency is now 5.8 and the chart below displays WiFi channels 1..13 and 149..165
Switch off the drone, and the remote controller. Disconnect the remote controller.

Step 2

Patch the Remote Controller to permanently freeze the changes made in step 1.

Will need:

  1. Computer with USB port and fresh modern browser: Chrome, Opera or Edge.
    Safari, FireFox not supported;
  2. Your Mavic Mini remote controller;
  3. USB cable to connect the remote controller to this computer.

Action plan
  1. Enable Experimental features in your browser and relaunch the browser
  2. Connect the Remote Controller
  3. Click the button below
  4. Select the Remote Controller in the list of serial ports.

Enable your browser

At this moment you need to enable Experimental Web Platform Features. Copy the right URL below and paste it in new tab Address bar:

chrome://flags/#enable-experimental-web-platform-features

opera://flags/#enable-experimental-web-platform-features

edge://flags/#enable-experimental-web-platform-features
    

Enable the Experimental Web Platform Features there. Browser will ask to relaunch.

Boost the Remote Controller

  1. Connect your Remote Controller with USB cable to this computer.
  2. Turn the Remote ON.
  3. Click the button below. In the popup window select the Serial port of the Remote ("Gadget Serial v2_4") to apply the patch:

Undo the patch (just in case)

Return your Remote Controller to the original "stock" state.

  1. Connect your Remote Controller with USB cable to this computer.
  2. Turn the Remote ON.
  3. Click the button to select the Serial port of the Remote ("Gadget Serial v2_4") and undo the patch:

Cleanup

  1. Uninstall Fake GPS Location app
  2. Uninstall outdated DJI Fly App
  3. Install a fresh DJI Fly App from Google Play

FAQ – frequently asked questions

Can I use this for DJI Mini 2?
No. This is only for DJI Mavic Mini.
Can I update DJI Fly App?
Yes. The old 1.1.2 version was only required once in Step 1. After applying the hack remove that old version and install a fresh DJI Fly App from Google Play. Update it as usual.
How does this work?
Trick with Fake GPS Location makes it all: countries like USA or Bolivia permit the most radio transmission power and more WiFi channels, than most other countries. This hack sends a few bytes to the Remote Controller that patch it so that it does not transmit the country update command further to the drone anymore. It does not affect GPS positioning or anything else.
How does this work, technically?
It modifies a single setting disable_country=0 to disable_country=1 in a config file wifi.conf in the RC. Special byte sequence sent to a USB serial port of the RC updates the settings. Search "DJI DUML" and "0x55 sequences" for more details.
Sequence to lock the setting:
0x55 0x0e 0x04 0x66 0x2a 0x1b 0x07 0x27 0x40 0x06 0xfb 0x02 0xac 0x35
Sequence to unlock to original setting:
0x55 0x0e 0x04 0x66 0x2a 0x1b 0x25 0xf9 0x40 0x06 0xfb 0x03 0x9c 0x37

Credits

Hack idea and magic byte sequences: Telegram chat @mavicminirus (in Russian)

In-browser JavaScript version and explainer video: Sergei Sokolov (Telegram @sergiks)