Advertisement

Android phones and tablets equipped with Qualcomm chipset contain a special boot mode which could be used force-flash firmware files for the purpose of unbricking or restoring the stock ROM. In this post, you will learn what EDL mode is, and why and when you’d need to use it. Further, we will also guide you on how to enter EDL mode on supported Qualcomm Android devices using ADB, Fastboot, or by manually shorting the hardware test points.

Table of Contents

What is EDL Mode?

EDL or Emergency DownLoad Mode is a special boot mode in Qualcomm Android devices that allows OEMs to force-flash firmware files. This special mode of operation is also commonly used by power users to unbrick their devices.

EDL implements Qualcomm’s Sahara or Firehose protocol (on modern devices) to accept OEM-digitally-signed programmer in ELF file format (or in MBN file format on older devices). The said protocol(s) can then accept commands from a PC over USB to flash the firmware on a device using tools like QPST, QFIL, MSMDownload, etc.

When in this mode, the device identifies itself as “Qualcomm HS-USB QDLoader 9008” over a USB connection.

Why and when would you need to use EDL Mode?

If you’re familiar with flashing firmware or custom binaries (like TWRP, root, etc), you’d know that it is required to boot the Android device into specific boot modes like Fastboot or Download Modes. The OEM flash tools can only communicate with a device and flash it through the said modes.

Generally if the device’s software is corrupted due to a wrong flash or any other software issue, it could be revived by flashing the firmware through Fastboot and Download modes.

However, that’s not the case always. Some times, flashing the wrong file can also potentially corrupt the Android bootloader itself. Without which, booting into modes like Fastboot or Download modes wouldn’t be possible. And thus, there would be no chance of flashing the firmware to revive/unbrick the device. We often like to refer to this device state as a “Hard-brick”.

That’s exactly when you’d need to use EDL mode. EDL itself is a part of the Primary Bootloader (PBL) on Qualcomm Devices. Unlike Fastboot, Download, and Recovery modes on Android, which reside in the Secondary Bootloader (SBL),  PBL resides within the ROM and so it could not be corrupted due to software errors (again, like a wrong flash).

To have a better understanding, please take a look at the figures below.

  • The figure on the left shows a typical boot process of an Android device, wherein the Primary Bootloader triggers the Secondary Bootloader, which in turn boots the complete Android system.
  • The figure on the right shows the boot process when EDL mode is executed. During this process, EDL implements the Firehose/Sahara protocol and acts as a Secondary Bootloader to accept commands for flashing.
Qualcomm Android Devices - Normal Boot vs EDL Boot Process
Credits: Aleph Security

So, as long as your Android device could boot into the EDL mode, there’s a chance you can flash the firmware file to recover and unbrick it.

How to Enter EDL Mode on Qualcomm Android Devices

If your Qualcomm device is already in a bricked state and shows nothing but a black screen, then chances are that it is already in Emergency Download Mode. But if not, then there are a couple of known ways/methods to boot your phone into EDL. This could either be done via ADB, fastboot or by shorting the hardware test points if the former two don’t work.

To gain access to EDL mode on your phone, follow the instructions below.

Method 1: Using ADB

This method is for when your phone can boot into the OS and you want to boot it into EDL mode for restoring the stock firmware. If it is in a bootloop or cannot enter the OS, move to the second method.

  1. Download the latest Android SDK tools package from here.
  2. Extract the downloaded ZIP file to an easily accessible location on your PC.
  3. The extracted ‘platform-tools’ folder will contain ADB and other binaries you’d need.
  4. Launch the command-line tool in this same folder. To do this:
    1. On Windows: Open the ‘platform-tools’ folder. Hold the SHIFT key on the keyboard and right-click on an empty space inside the folder. Then select ‘Open PowerShell window here’ or ‘Open command window here’ from the contextual menu.
      Enter EDL Mode using ADB - Launch PowerShell in Windows
    2. On Linux or macOS: Launch the Terminal and change its directory to the ‘platform-tools’ folder using the ‘cd’ command. For example, if the folder in the Documents directory, the command should be:
      cd Documents/platform-tools

      Enter EDL Mode using ADB - Launch Terminal in macOS/Linux

  5. Now, enable USB debugging on your Android device using the instructions here.
    Enter EDL Mode using ADB - Enable USB Debugging
  6. Connect the device to your PC using a USB cable.
  7. Finally, enter the following command in the PowerShell window to boot your phone into EDL mode:
    .\adb reboot edl
    
    

     

    Enter 'adb reboot edl' command to boot your device into EDL Mode
    In Terminal:

    ./adb reboot edl
  8. If you see a prompt on the device’s screen to allow USB debugging, press ‘Allow’.
    Enter EDL Mode using ADB - Allow USB Debugging when prompted

That’s it! Your phone should now reboot and enter EDL mode.

Method 2: Using Fastboot

This method is for when your phone cannot enter the OS but can boot into Fastboot mode (Also sometimes referred to as ‘Bootloader mode’).

  1. Download the latest Android SDK tools package from here.
  2. Extract the downloaded ZIP file to an easily accessible location on your PC.
  3. The extracted ‘platform-tools’ folder will contain ADB and other binaries you’d need.
  4. Launch the command-line tool in this same folder. To do this:
    1. On Windows: Open the ‘platform-tools’ folder. Hold the SHIFT key on the keyboard and right-click on an empty space inside the folder. Then select ‘Open PowerShell window here’ or ‘Open command window here’ from the contextual menu.
      Enter EDL Mode using Fastboot - Launch PowerShell in Windows
    2. On Linux or macOS: Launch the Terminal and change its directory to the ‘platform-tools’ folder using the ‘cd’ command. For example, if the folder in the Documents directory, the command should be:
      cd Documents/platform-tools

      Enter EDL Mode using Fastboot - Launch Terminal in macOS/Linux

  5. Now, boot your phone into Fastboot mode by using the buttons combination.
    Boot your Qualcomm Android Device into Fastboot Mode
  6. Connect the phone to your PC while it’s in Fastboot mode.
  7. Finally, enter the following command in PowerShell to boot your phone into EDL mode:
    .\fastboot oem edl

    In Terminal:

    ./fastboot oem edl

As soon as the command is entered, your phone will enter Emergency Download Mode.
Enter 'fastboot oem edl' command to boot your device into EDL Mode

Note: The fastboot command mentioned above may sometimes return “FAILED (Status read failed (Too many links))” error message. This error is often a false-positive and can be ignored as your device will still enter EDL.

Method 3: By Shorting Hardware Test Points

Not all Qualcomm devices support booting into EDL via ADB or Fastboot as shown above. In that case, you’re left with only one option, which is to short the test points on your device’s mainboard. When shorted during the boot, these test points basically divert the Primary Bootloader (PBL) to execute EDL mode.

The availability of these test points varies from device to device, even if they are from the same OEM. Phones from Xiaomi and Nokia are more susceptible to this method. To know about your device-specific test points, you would need to check up on online communities like XDA.

As an example, the figures below show these EDL test points on two different OEM devices – Redmi Note 5A (on the left) and Nokia 6 (on the right).

EDL Test Points on Xiaomi and Nokia Devices

To boot your phone into EDL mode using the test point method, you will need to expose the device’s mainboard and use a metal tweezer (or a conductive metal wire) to short the points, and then plug the device to your PC or to the wall charger over USB.

Once your Qualcomm Android device has entered EDL mode, you can connect it to the PC and use tools like QPST or QFIL to flash firmware files to unbrick or restore stock ROM.

That’s it! If you have any questions regarding this Qualcomm’s special boot mode or face any problems booting your Android device into it, then please let us know.

Credits: Aleph Security for their in-depth research on Qualcomm’s EDL programmer

Comments

  1. Hi guys currently I’m using one plus 9 Pro after I updated my mobile and it’s goes to. Qualcomm crush dumb mode can anyone respond on my issue and tried so many shops in my loca area no one resolved my issue

    1. Hey, try holding the Volume Up and Power keys together for about 10-15 seconds while your OnePlus 9 Pro is in Qualcomm CrashDump Mode. This should help force-exit the mode and then the phone will attempt to boot into the OS. If it’s really bricked, the phone will get back into CrashDump Mode.

      Let me know what happens, if it’s really a brick that needs recovering, I will guide you in the right direction.

  2. Does EDL need battery?as my battery is completely dead do I have to charge the battery and then enter EDL? I don’t think the mother board is receiving power as the battery is dead

    1. Yes, your device needs to be sufficiently charged to enter EDL mode. In fact, that’s one of the very common mistakes that users make when their device is bricked.

      Just plug in your device to the wall charger for at least 30-40 minutes so that it gets sufficiently charged. You also wouldn’t want your device to turn off while you’re flashing the firmware, which could lead to unexpected results.

  3. Hi,
    Above both of the method (method 1 & method 2) are not working for Redmi 7a, Can you please confirm if i have to use Method 3: By Shorting Hardware Test Points to enter into EDL mode?

    1. Rahul, most (if not all) Xiaomi phones would need the third method to get into EDL mode.

      Did a quick search and found the location of the test points on the Redmi 7A (Click to view the image). Of course, the credits go to the respective source.

  4. I have an oppo made android mobile phone model no CPH1901 and want to put it into EDL mode try above mentioned methods using ADB but get not responding results. please tell me the solution

    1. Amandeep, for the CPH1901 (Oppo A7, right?), you’ll need to use the test point method. Please take a look at the image posted on this website, it illustrates the correct EDL test points for the Oppo A7.

Post a Comment

Comment Policy: We welcome relevant and respectable comments. Only input your real first name and valid email address if you want your comment to appear. Read our comment policy fully before posting a comment.