This is an old revision of the document!
About
If you have reached this website, we have to assume you are interested in DJI aircraft, and any tweaks and modifications you could possibly make for your equipment. This website is dedicated to just that topic. But first, who are we.
The OG's (Original Gangsters)
We came up with the title “The Original Gangsters” to represent the early contributors to this self organising project. The people that have contributed here have a common philosophy of collaboration through open source code to support our interests which in this case are DJI Aircraft.
For reference, our assorted repositories are listed below
Wiki | You have already found your way here. The wiki is designed to bring together all of the various components to a single hub. |
dji_rev | This repository contains tools for reverse engineering DJI product firmware images. |
deejayeye-modder | APK “tweaks” for settings & “mods” for additional / altered functionality |
pyduml | PyDUML allows you to send firmware to your DJI aircraft without using DJI assistant, or get root access using fireworks.tar |
RedHerring | RedHerring was the initial July 4th Independence Day exploit to get root access to DJI aircraft. |
dji_system.bin | Archive of bin files for to allow you to upgrade/downgrade using other tools provided here |
firm_cache | Individual module components from within bin files for analysis, or to allow creating custom packages using individual components |
DUMLrub | Ruby port of PyDUML, and firmware cherry picking tool. Make your own custom firmware images. |
DUMLdore | Windows version of the DUML firmware tools. Archive, and flash bin from windows |
DJI_ftpd_aes_unscramble | DJI has modified the GPL Busybox ftpd on Mavic, Spark, & Inspire 2 to include AES scrambling of downloaded files… this tool will reverse the scrambling |
Now that we have the introductions out of the way, its time for a story.
Once upon a time
However
DJI customers have started to distrust DJI based on a number of factors…
Control
Plagarism
Data Leakage
Based on analysis so far, it has been determined that more information than has been previously disclosed is being transmitted externally.
8)
DJI have agreed to create an offline mode.
9) However, DJI have not disclosed what data is sent when not in offline mode.
Back Doors
It has been found that the DJI GO application for both Android and IOS have back-doors allowing DJI to “hot patch” applications in a manner that breaches the rules imposed on DJI by both Google and Apple.
10)
The practice of hot patching essentially allows DJI to totally change the functionality of the DJI go application without the knowledge or consent of a pilot.
Putting this into a different context, hot patching is the equivalent of the avionics of an aircraft being totally replaced mid flight.
Censorship
Safety
DJI has recently rushing out multiple updates and patches to prevent reverse engineering.
These botched changes have caused unstable flight for many pilots.
12) 13)
Mobile phone manufacturers have failed to win a “war of attrition” with the jailbreak community.
Safety will be the loser in the war between DJI and the community.
Position
Control: We believe that DJI does not have jurisdiction to decide where and how pilots fly their aircraft. Local regulators have authority through their laws. DJI systems should not impose mandatory lockouts of aircraft, unless doing so is mandated by the laws of a country where DJI products are being used.
Plagarism: We believe that the use of open source code without attributing that code and complying with license conditions is unethical.
Data leakage: We believe that aircraft control systems need to be dedicated to the process of flying an aircraft, with external connectivity being minimised to allow the application to be free of potential security, privacy, and stability problems. Any remaining network traffic should be publicly documented to help restore community trust.
Back Doors: We believe that aircraft control systems should be free of any back-doors that allow modification of the functionality of those systems without the knowledge or consent of the pilot, including forced updates.
Censorship: We believe that censorship in DJI forums and other DJI sponsored forums is ultimately harmful to DJI and the community. Listening and responding to customer grievances and concerns can only result in a better product that meet the needs of DJI customers.
Safety: We believe that the loser in the arms race with rapidly released patches will be safety. We believe that the best approach is to be collaborative and open in future development, which will allow the community to peer review proposed changes and find problems before they cause safety issues.
Conclusion
It is fair to say that this whole community started as a result of a lack of trust in DJI. We have stated our position. It is our hope that DJI will listen to the community, and respond in a way that will benefit DJI and its clients.
Long Live the Original Gangsters