DJI firmware contains multiple modules for different functions. For example one for the camera, one for the ESCs, one for the flight controller and so on. The important one is the flight controller module(s) because the modified parameters are stored and used within this part of firmware. These are modules 305 and 306.
DJI have made changes that prevent parameter changes in some of their recent firmware. To get all benefits from more recent firmware, without the downside of losing parameter changes, you will need to delete modules from recent firmware.
NOTE: At this time, DO NOT FLASH 1.04.0100 TO YOUR MAVIC. This version has anti roll-back code, for which there are currently no published methods to allow you to revert to an earlier version. EDIT: As of 1-1-18 there is an option to now downgrade from 1.04.0100! See DUMLRacer here https://github.com/CunningLogic/DUMLRacer
The last tweakable firmware versions that allows all parameter changes are:
So. What is it we want to do here? If you are upgrading beyond the firmware versions listed above, you will need to remove module 305 and 306 from your firmware file before flashing. You can read about the different module components here.
The basic idea is to remove modules 305 and 306 from your target firmware file before flashing, in order to prevent those modules from being upgraded to a higher version that doesn't allow all parameter changing. You can read about the different module components here.
NOTE: You can't mix firmware module versions into the same .bin You must downgrade, then upgrade.
Use 7-zip to open the firmware file you want to mod. Simply delete the 305 and 306 modules in the firmware you want to remove. Close 7-zip. You don't need to save as.
Start by installing a tweakable firmware file on your aircraft using DUMLDore (win) or DroneZBreak (mac), then simply flash like normal.
CAUTION - when flashing with modded .bin files and monitoring progress with Assistant, you may get a firmware failed message. Be patient. It didn't fail, only the module you deleted did, since the flash procedure expects that module to be present in the firmware. Its on the bird already, so that module gets skipped, keeping the older module. Let it do it's thing and be patient.
Install your custom firmware file on your aircraft using DUMLDore (win) or DroneZBreak (mac), then simply flash like normal.
Note: Even though you have removed modules from the more recent firmware, Dji GO and Assistant will show the new firmware version. To make use of the new flight modes, you will also need to use the latest GO app.
Now you can mod the parameters you want to change with Assistant, or use nolimitdronez.com or DroneZBreak.
I want 1.04.0000 firmware on my Mavic but still want to modify all parameters.