This could also help if you have trouble with EDL drivers.
This has only been done and tested on an A2017U. If you're attempting this on another model, do so at your own risk! This guide is only for Windows 10!
This is not exactly noob friendly. This guide assumes you have ADB installed and everything.
I attempted this on my own whim. It was certainly a pain in the butt to get this to work for me as well because of EDL driver trouble. But if I managed to figure it out, you can too!
- First you're gonna need to download tennear's axon7tool here. Rename is to just axon7tool so it's easier to type.
- Download NFound's TWRP 3.2.1-8 for Oreo here and rename it to recovery.bin. Put it in the same directory where axon7tool is.
- Download Zadig here. This is for replacing the EDL drivers to some generic ones that this tool can use to connect to your phone in EDL mode.
- Download Magisk 16.2 here. Any newer Magisk version especially 17.1 causes a bootloop unfortunately so do NOT update. You can try different versions, but try at your own risk.
- We need to get into "proper" EDL mode. It is not recommended to do the "shut down your phone and hold both volume buttons and power on to get into EDL mode" way. This did not work for me. In order to get into proper EDL mode, make sure you're booted into Android and make sure Android Debugging is turned on. Open ADB on your computer and type Code:
adb reboot edl
- After your phone is booted into proper EDL mode, connect your usb cable into your phone and go into the Control Panel of Windows and go to Device Manager
- In Device Manager, look for either "qualcomm usb loader 9008" or "QUSB_BULK". It doesn't really matter. Once you found it, its probably not necessary but I did it anyway, right click on it and click to uninstall. If it asks to uninstall any software then click that as well.
- After it is uninstalled, unplug your phone and plug it back in. It'll probably install some drivers again but that's okay. It might reinstall as QUSB_BULK even if you had "qualcomm usb loader 9008"
- It gets kinda tricky after this part, but it should work. If it doesn't, drop a comment below and I will try to help!
Open Zadig. Click on Options and then click List all devices. Look for QUSB_BULK in the drop down menu and select it.
- After you've found it and selected it, you'll see on the bottom box it'll display what kind of driver it is loading. We need to replace it with WinUSB. Click on Replace Driver. After a few seconds it'll say it finished successfully. QUSB_BULK should read this now:
This means that we can now use axon7tool.
- Open command prompt and navigate to where you downloaded axon7tool. In this case, it is on my desktop. Let's test to see if we have a connection. First we need to backup our recovery image, so we can test that out by typing
axon7 tool -r recovery
If you get an error that says
Connecting to device... S: failed to read command S: Failed to receive hello terminate called after throwing an instance of 'std::runtime_error' what(): error: Unknown error
adb reboot edl
- If it works, it'll backup recovery and then reboot your phone as shown below.
You'll have a backup-recovery.bin saved into your directory. Now that we know this works, we can write our TWRP recovery image!
axon7tool -w recovery
- While it reboots, go into recovery by holding Volume UP and Power, or while on the unlocked bootloader message press a volume button and select "Recovery" to get into recovery. This is to make sure that the stock rom does not overwrite our custom recovery with stock recovery
- You will now be greeted with NFound's custom TWRP recovery!
- Well, backup system and data in TWRP and then flash Magisk 16.2 as you would do! Wipe cache/dalvik if you want and then reboot, you should be rooted!