stevechan1993 / DankDroneDownloader

A Custom Firmware Download Tool for DJI Drones Written in C#

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DankDroneDownloader

Giving DJI (and now, others!) the D ;)

A custom written firmware download tool for popular drones. Also now available in your (Chrome, Firefox or Edge) web browser over at http://dankdronedownloader.com/DDD2/app for non windows based users!

Currently Supplying Files For:
DJI Aircraft: AGRAS MG-1P, AGRAS MG-1S, Inspire 1, Inspire 1 Pro, Inspire 2, Matrice 100, Matrice 200, Matrice 200 V2, Matrice 600, Matrice 600 Pro, Mavic Air, Mavic Air 2, Mavic Mini, Mavic Mini 2, Mavic Pro 1 - Incl Platinum and Alpine, Mavic Pro 2 - Enterprise, Mavic Pro 2 - Enterprise Dual, Mavic Pro 2 - Incl Zoom, Phantom 3 4K, Phantom 3 Advanced, Phantom 3 Professional, Phantom 3 Standard, Phantom 4 Advanced, Phantom 4 Pro 2.0, Phantom 4 Professional, Phantom 4 RTK, Phantom 4 RTK - China Only Version, Phantom 4 Standard, Spark
Remote Control: Crystalsky 5.50 Inch, Crystalsky 7.85 Inch, Smart Controller
Goggles: Racing Edition, Standard, FPV System
Other: A3 Flight Controller, D-RTK GNSS, Ocusync Air System, FPV System - Air Unit, N3 Flight Controller, Osmo - Incl Pro Raw and Standard, Osmo Action, Osmo Pocket

Autel Aircraft: Evo, Evo II


Release Notes
Version 2.0
Build 7638.2078
SHA256 7C6B1FFF2F123A3C08A253E7E8773B4F1733BFE0CA84278C1C1C19B7FACB2F1B

  • Added the DJI Anti Rollback version number below the SHA256 hash of the firmware so you can easily see if downgrading will be blocked for your desired firmware. THis will be coming to the web version soon.
  • Re-addition of the Drone-Hacks lock to the top bar of the app. Go visit these guys for your drone hacking needs!

Version 2.0
Build 7636.41342
SHA256 1E98577A021A94910E676E170626407E16AA3117C30643B7805DADB8933E6BED

  • Update of the Copyright date, seems i slipped behind with this!
  • Re-addition of the Drone-Hacks lock to the top bar of the app. Go visit these guys for your drone hacking needs!

Version 2.0
Build 7574.18095
SHA256 5ff5f86cc7dc1b40de9ba9b45cb574a3ff88ed9aa8b08c7b88eaabf02b7934cd

  • For the very first time, DDD will now archive firmware for other brands of drones. This release includes support for the popular Autel series of drones with the Evo and the Evo 2. Further support for new manufacturers can now be added without new app updates and will be done as and when there is a demand or need for them. So far, Autel dont seem to apply as many of the same restrictions to their owners, but i want the hacking community to begin work on unlocking the few resttictions they do have (altitude and Chinese NFZ's) along with anything else we can unlock in terms of more performance, lets see!
  • Bug Fixes.
  • In future updates, there will be a "Brand" filter at the top of the app to select between DJI and Autel.

Version 2.0
Build 7471.25679
SHA256 ca116576322e592da2240ac60a1e6ecb839157a8a4bc916c64f2ff9ae76c360c

  • Simple bug fix. Forgot to compile all required image assets causing a few GUI issues.

Version 2.0
Build 7460.19289
SHA256 f6ec20dd1d87483467eff546d774eec67c6d5da2e4289a54c36c5469cf4a7f66
Once again, i am aware of the app not functioning inside of China or anywhere else protected by the "Great Fireall". Please dont raise GitHub Issue's about this as they will just be closed. I have no desire to add extra servers and a ton of additional code to the app just to bypass the censorship from a ************ government.

  • Changes to the GUI so that the old 'AC' and 'RC' labels have now been replaced with 'Aircraft' and 'Remote' respectively, this is to make things clearer for new users.
  • DUMLDore link on the top toolbar replaced with Drone-Hacks, the new way to flash your firmware and further hack your drone. DUMLDore only supported older drones (sadly), so time to update the link.

Version 2.0
Build 7430.26169
SHA256 980386950c6135381eeefc31e4adc5b6974cebf644750e8a9185ed4e976b52e4
Nothing major in this release. Just some minor bug fixes implimented to ensure app stability.
I am aware of the app not functioning inside of China or anywhere else protected by the "Great Fireall". There is little i can do about this right now.

Version 2.0
Build 7266.24220
SHA256 0b3b82550b869582e826f83b38eaa74ca5a1046248e77e0f6affd8eab0ad9a34
Yes, its here, a major overhaul to DDD has just been released complete with a whole host of changes!
This is a significant and very important update, please accept it when prompted. The old versions of DDD (anything below 2.0) will cease to function as of 30th of November 2019 due to the backend improvements made for DDD 2.0

  • The entire of the app has been rewritten from the ground up using modern libraries to improve basically everything, but keep the app you know and love.
  • Familier, but new GUI design. The same filters are available, however we have a small splash of colour.
  • If you exit the app, it will remember which category you had selected before and take you straight back to it.
  • MUCH faster app opening, this is down from 20-30 seconds to less then 5 now!
  • The app now uses multiple backend databases to ensure firmware info is always consistant and accurite.
  • Propper automatic failover now added. All firmware and database info is held on multiple server enabling auto failover if a server, or a file goes offline on one host.
  • New accounements page from within the app. Check this regulary as brief release notes and service announcements will be posted here.

Version 1.5
Build 7221.31372

  • Added in some code in the back-end to make available for use a secondary firmware server. This is for redundancy.
  • Fixed a security issue, both client and server side, which allowed undesirable files to be provided through the Firmware Upload utility and possible privilidge escalation on the server.

Version 1.5
Build 7116.21904
SHA256 7de8dd1f650238375c2edc9299c1c13efac937a3cae46cf2ce6e92da396ec971

  • Add a new line just below the firmware list window which shows the SHA256 hash of the firmware file, this can then be verified after your download is complete to ensure the file is legitimate and a valid package.
  • Small GUI bug fixes, missed the drone icon on some of the window elements, text alignment tweaks.

Version 1.5
Build 6945.21923

  • Total rewrite of the firmware upload mechanism. Uploader is built into the app now rather than relying on a nasty PHP embedded page. Multiple firmware uploads are now supported aswell as marking partial/failed uploads.

Version 1.5
Build 6808.28756

  • Added firmware uploader so you can submit missing firmware files for addition to DDD.
    - I have to be able to figure out what drones your uploaded files are for!!! If you want them added, make sure you call them something sensible so i can identify and validate them before i add them to the DDD listings.
  • Re-Added link to DUMLDore by Jezzab.

Version 1.5
Build 6659.39278

  • Fixed a couple more GUI bugs (resizing of window elements was possible).
  • If you donate to DDD, you now get credits from within the app, check the "Donate" button to see it working.
  • Re-coded the scroller's within the app to take data from a server rather than being "baked in".

Version 1.5
Build 6650.20845

  • Fixed GUI bug introduced with previous version.

Version 1.5
Build 6649.35372

  • Fixed GUI bug introduced with previous version.

Version 1.5
Build 6648.40824

  • Altered some small elements of the GUI, added Paypal donate buttons, scene greetings and a license.
  • Small bug fixes.

Version 1.0
Build 6560.41728

  • Added link to DUMLdore by Jezzab. The people "in the know" knew this app already. But if you're new to the scene, it allows Windows users to flash the FW files they download with DankDroneDownloader. Just seemed a good idea to link mine and Jezzab's work in this way.

Version 1.0
Build 6556.25899

  • Added auto update feature. This was done to preserve the app if the host deletes the BIN files. App will prompt if there is an update.

Version 1.0

  • Initial Release

Security
I have been informed that some AV apps very occasionally trigger when DDD is ran. This is most likely due to the way it downloads the files, the files are not downloaded to disk in the standard way until the "Save As" dialogue comes up, this could be seen by some AV algorithms as being a download that the user didn’t initiate.

Rest assured nothing nefarious is going on!

https://www.virustotal.com/gui/file/7de8dd1f650238375c2edc9299c1c13efac937a3cae46cf2ce6e92da396ec971/detection


Source code has been removed to protect the app and the source files for firmware.

App should run on any windows machine from 7 upwards. You must be running Dot Net Framework 4.5 however.

These files are stored on an FTP server however the files themselves are community sourced and are untouched/unmolested.

Come join us! https://join.slack.com/t/dji-rev/shared_invite/enQtMjk5OTEyMzcyMjI3LTdlZjY4NzQ5M2M2NmE5ZWM4OTgyNThmZDVmZjdjODE4ODYyNmYwZjYxMDcyYzcxNmZlYzI5ZjI2ZGQ2NGY1ZTc

-cs2000


#DeejayeyeHackingClub information repos aka "The OG's" (Original Gangsters)

http://dji.retroroms.info/ - "Wiki"

https://github.com/fvantienen/dji_rev - This repository contains tools for reverse engineering DJI product firmware images.

https://github.com/Bin4ry/deejayeye-modder - APK "tweaks" for settings & "mods" for additional / altered functionality

https://github.com/hdnes/pyduml - Assistant-less firmware pushes and DUMLHacks referred to as DUMBHerring when used with "fireworks.tar" from RedHerring. DJI silently changes Assistant? great... we will just stop using it.

https://github.com/MAVProxyUser/P0VsRedHerring - RedHerring, aka "July 4th Independence Day exploit", "FTPD directory transversal 0day", etc. (Requires Assistant). We all needed a public root exploit... why not burn some 0day?

https://github.com/MAVProxyUser/DUMLrub - Ruby port of PyDUML, and firmware cherry picking tool. Allows rolling of custom firmware images.

https://github.com/jezzab/DUMLdore - Even windows users need some love, so DUMLDore was created to help archive, and flash dji_system.bin files on windows platforms.

https://github.com/MAVProxyUser/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

https://github.com/darksimpson/jdjitools - Java DJI Tools, a collection of various tools/snippets tied in one CLI shell-like application

https://github.com/cs2000/DankDroneDownloader - Windows based firmware download utility for all recent DJI products. Allows you to get firmware files to use with other apps such as DUMLdore, PyDuml, DUMLrub etc

About

A Custom Firmware Download Tool for DJI Drones Written in C#

License:Other