[ZTE Axon 7 Questions & Answers] dennis96411:
So let me tell you the dumb things I did.

1. I thought I saw an update for TWRP in Tapatalk, so I downloaded it and flashed it in TWRP. Turned out it was for the OnePlus One... Tapatalk didn't sync with my XDA subscribed threads correctly...

2. Rebooted into recovery, and we all know what happened here.

3. No problem, I can use fastboot to flash recovery. Booted into bootloader, and did this:

Basically, it saw the device, I tried to flash the TWRP image file, but it got stuck waiting for the phone. That was the last time it ever saw it.

4. Rebooted into Android just fine. Everything work exactly the way they should.

5. I figured the only way I can flash recovery now is by using dd over ADB shell.

6. I grabbed the last log written by the recovery, and found the following information by doing "cat /cache/recovery/last_log":

/recovery | /dev/block/sde14 | Size: 64MB
Flags: Can_Be_Backed_Up IsPresent Can_Flash_Img
Primary_Block_Device: [B]/dev/block/sde14[/B]
Display_Name: Recovery
Storage_Name: recovery
Backup_Path: /recovery
Backup_Name: recovery
Backup_Display_Name: Recovery
Storage_Path: /recovery
Current_File_System: emmc
Fstab_File_System: emmc
Backup_Method: dd

[B]<truncated>[/B]

[IMAGE FLASH STARTED]
Image to flash: '/sdcard/Download/TWRP+3.0.3-2-TugaPower.img'
Calculating restore details...
I:Image filename is: TWRP+3.0.3-2-TugaPower.img
I:Reading '/sdcard/Download/TWRP+3.0.3-2-TugaPower.img', writing '[B]/dev/block/sde14[/B]'
[IMAGE FLASH COMPLETED]
I:Set page: 'action_complete'
I:operation_end - status=0
I:Set page: 'clear_vars'
I:Set page: 'flashimage_confirm'
I:Set page: 'clear_vars'
I:Set page: 'install'
I:Set page: 'main'
I:Set page: 'clear_vars'
I:Set page: 'main2'
I:Set page: 'reboot'
I:Set page: 'rebootcheck'
I:Copying file /cache/recovery/log to /cache/recovery/last_log
Rebooting...
I:InfoManager saving '/data/media/0/TWRP/.twrps'
I:Saved settings file values

So the recovery partition is /dev/block/sde14.

7. I first made a backup of the partition just to make sure.

root@ailsa_ii:/ # dd if=/dev/block/sde14 of=/sdcard/badrec.img
dd if=/dev/block/sde14 of=/sdcard/badrec.img
131072+0 records in
131072+0 records out
67108864 bytes transferred in 1.281 secs (52387871 bytes/sec)

8. Then I "flashed" the right TWRP image file.

root@ailsa_ii:/ # dd if=/sdcard/TWRP.img of=/dev/block/sde14
dd if=/sdcard/TWRP.img of=/dev/block/sde14
35824+0 records in
35824+0 records out
18341888 bytes transferred in 1.552 secs (11818226 bytes/sec)

9. I rebooted into recovery, and it worked.

In conclusion, Android and recovery themselves work fine now. I'm just worried because fastboot won't see my device in bootloader. That's a fail-safe that I can't

not

have. I'm not flashing anything else until I get to the bottom of it.

EDIT: I noticed in the backup section of TWRP, fastboot is listed as having 0 MB. Did it get wiped? I'm not sure how to get it back.

Within Android:

Within TWRP:

~ # [6nls -al /dev/block/platform/soc
ls -al /dev/block/platform/soc
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
drwxr-xr-x 4 root root 80 Mar 16 1970 .
drwxr-xr-x 3 root root 60 Mar 16 1970 ..
drwxr-xr-x 4 root root 1100 Mar 16 1970 624000.ufshc
drwxr-xr-x 3 root root 100 Mar 16 1970 74a4900.sdhci
~ # [6nls -al /dev/block/platform/soc/624000.ufshc/by-name
ls -al /dev/block/platform/soc/624000.ufshc/by-name
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
drwxr-xr-x 2 root root 940 Mar 16 1970 .
drwxr-xr-x 4 root root 1100 Mar 16 1970 ..
lrwxrwxrwx 1 root root 16 Mar 16 1970aboot -> /dev/block/sde11
lrwxrwxrwx 1 root root 16 Mar 16 1970 apdp -> /dev/block/sde21
lrwxrwxrwx 1 root root 16 Mar 16 1970 bluetooth -> /dev/block/sde16
lrwxrwxrwx 1 root root 16 Mar 16 1970 boot -> /dev/block/sde12
lrwxrwxrwx 1 root root 15 Mar 16 1970 cache -> /dev/block/sda2
lrwxrwxrwx 1 root root 15 Mar 16 1970 cdt -> /dev/block/sdd2
lrwxrwxrwx 1 root root 16 Mar 16 1970 cmnlib -> /dev/block/sde19
lrwxrwxrwx 1 root root 16 Mar 16 1970 cmnlib64 -> /dev/block/sde20
lrwxrwxrwx 1 root root 15 Mar 16 1970 cryptkey -> /dev/block/sda8
lrwxrwxrwx 1 root root 15 Mar 16 1970 ddr -> /dev/block/sdd3
lrwxrwxrwx 1 root root 15 Mar 16 1970 devcfg -> /dev/block/sda5
lrwxrwxrwx 1 root root 16 Mar 16 1970 devinfo -> /dev/block/sde15
lrwxrwxrwx 1 root root 15 Mar 16 1970 dip -> /dev/block/sde9
lrwxrwxrwx 1 root root 16 Mar 16 1970 dpo -> /dev/block/sde23
lrwxrwxrwx 1 root root 15 Mar 16 1970 dsp -> /dev/block/sde8
lrwxrwxrwx 1 root root 16 Mar 16 1970 echarge -> /dev/block/sde25
lrwxrwxrwx 1 root root 15 Mar 16 1970 [B]fbop -> /dev/block/sda6[/B]
lrwxrwxrwx 1 root root 15 Mar 16 1970 frp -> /dev/block/sda7
lrwxrwxrwx 1 root root 15 Mar 16 1970 fsc -> /dev/block/sdf3
lrwxrwxrwx 1 root root 15 Mar 16 1970 fsg -> /dev/block/sde4
lrwxrwxrwx 1 root root 15 Mar 16 1970 hyp -> /dev/block/sde3
lrwxrwxrwx 1 root root 16 Mar 16 1970 keymaster -> /dev/block/sde18
lrwxrwxrwx 1 root root 15 Mar 16 1970 keystore -> /dev/block/sda4
lrwxrwxrwx 1 root root 16 Mar 16 1970 lksecapp -> /dev/block/sde17
lrwxrwxrwx 1 root root 16 Mar 16 1970 mdtp -> /dev/block/sde10
lrwxrwxrwx 1 root root 15 Mar 16 1970 misc -> /dev/block/sda3
lrwxrwxrwx 1 root root 15 Mar 16 1970 modem -> /dev/block/sde7
lrwxrwxrwx 1 root root 15 Mar 16 1970 modemst1 -> /dev/block/sdf1
lrwxrwxrwx 1 root root 15 Mar 16 1970 modemst2 -> /dev/block/sdf2
lrwxrwxrwx 1 root root 16 Mar 16 1970 msadp -> /dev/block/sde22
lrwxrwxrwx 1 root root 15 Mar 16 1970 persist -> /dev/block/sdf5
lrwxrwxrwx 1 root root 15 Mar 16 1970 pmic -> /dev/block/sde6
lrwxrwxrwx 1 root root 16 Mar 16 1970 recovery -> /dev/block/sde14
lrwxrwxrwx 1 root root 15 Mar 16 1970 reserve -> /dev/block/sdd1
lrwxrwxrwx 1 root root 15 Mar 16 1970 rpm -> /dev/block/sde1
lrwxrwxrwx 1 root root 15 Mar 16 1970 sec -> /dev/block/sde5
lrwxrwxrwx 1 root root 16 Mar 16 1970 splash -> /dev/block/sde24
lrwxrwxrwx 1 root root 15 Mar 16 1970 ssd -> /dev/block/sda1
lrwxrwxrwx 1 root root 16 Mar 16 1970 sti -> /dev/block/sde26
lrwxrwxrwx 1 root root 16 Mar 16 1970 system -> /dev/block/sde13
lrwxrwxrwx 1 root root 15 Mar 16 1970 tz -> /dev/block/sde2
lrwxrwxrwx 1 root root 15 Mar 16 1970 userdata -> /dev/block/sda9
lrwxrwxrwx 1 root root 15 Mar 16 1970 xbl -> /dev/block/sdb1
lrwxrwxrwx 1 root root 15 Mar 16 1970 xblbak -> /dev/block/sdc1
lrwxrwxrwx 1 root root 15 Mar 16 1970 ztecfg -> /dev/block/sdf4

fastboot is now a partition to pick from when I choose an image to flash. Huh? Is that the fbop (/dev/block/sda6) partition? When I run cat on it I still see data on it.

EDIT 2: I see this in the recovery logs:

/fastboot | /dev/block/sda6 | Size: 0MB
Flags: Can_Be_Backed_Up IsPresent Can_Flash_Img
Primary_Block_Device: /dev/block/sda6
Display_Name: fastboot
Storage_Name: fastboot
Backup_Path: /fastboot
Backup_Name: fastboot
Backup_Display_Name: fastboot
Storage_Path: /fastboot
Current_File_System: emmc
Fstab_File_System: emmc
Backup_Method: dd

Using dd to grab it gives me a 128 KB image. Seems normal compared to the ones uploaded here. It's mostly empty data, though, it seems.

==========FIXED==========

You're not going to believe this. I think Windows decided to update the ADB device driver right after I plugged it in (refer to the screenshot above where it just stopped working for no reason).

I went into Device Manager and saw this:

Seems normal, right? Well, if I try to update it using Windows' list of known devices, I see these:

I checked afterward; the one that's currently installed is the top one. So, I chose the second one (the supposedly outdated one).

And now we are presented with result.

I hate you, Windows.