I'm already at least 3 days on this and can't find a way out. I'm still unsure if it fits here, but here we go!
I have 3 A50 Allwinner tablets (HOW HT-705XT) that I wanted to root. Since the only way was patching a boot.img
obtained from the web, I found one that someone suggested that was apparently "compatible" with this tablet, with minor issues, so I did.
I flashed the firmware using PhoenixSuit with the checkbox "multiple" partitions disabled and it in fact flashed the whole system. It booted with another logo, into another Android version and even Magisk was patched, meaning that the bootloader was flashed too.
On the second tablet I wanted to preserve the original ROM, so I did all of it again but selected "multiple partitions" and checked only "BOOTLOADER" and "BOOT".
To my surprise, the tablet restarted with the screen completely gray-ish, as if the resolution or sync were mismatched.
I flashed the firmware again using the default option, which doesn't use the "multiple partitions" checkmark, like I did on tablet 1, but it restarted with a gray screen again. At this point I knew I messed up.
Strange thing is: The tablet with the bricked screen is still starting up. It reacts to button presses and luminosity changes. It is probably booted up, I just can't see it.
At this point I have:
- A working, rooted tablet
- A screen with a bricked screen
- A new, unmodified, tablet
I can't simply restore the original firmware, since it is not available on the internet. The only one available is this "compatible" firmware. Both are for the A50 chip, and one worked, so...
I tried to backup all partitions using the rooted tablet using dd if=/dev/block/by-name/boot of=/sdcard/boot.img
and all others, shown below:
ML-SO06-M7sLite:/dev/block/by-name # ls
UDISK bootloader dto env media_data misc recovery vendor
boot cache empty frp metadata private system
I repacked boot and bootloader into the extracted firmware on my PC and repacked it using imgRePacker. After that I tried to flash it, but it still didn't fix the screen.
At this point I was convinced that the file sys_config.fex
or config.fex
contain an invalid lcd_driver entry and therefore it doesn't work, shown below:
[lcd0]
lcd_used = 1
lcd_driver_name = "fx070"
lcd_if = 0
lcd_x = 1024
lcd_y = 600
The problem is that I cannot find those files, for comparison, on the running system. Furthermore, the config.fex
appears to be a binary representation of the first file, which (afaik) must also be changed, and I wouldn't even know how. I tried reading /dev/block and grepping "lcd", but at certain blocks the device simply rebooted.
I shut the device down and tried to enter FEL mode and built the sunxi-tools
binaries to attempt and read the whole NAND, which also didn't succeed. FEL gives read errors at certain adressess and I don't know which ones to skip, since I don't have a partition reference. I tried to enter FES mode but also failed due to missing pointers.
The goal here is just to trying to fix the screen, and, at this point any clue to what is going wrong is greatly appreciated. All info above is greatly shortened to avoid a page-long question, but I think most of the important informations were given. If something is missing, just let me know.
And yes, at this point all my links on Google are already purple (and my head, too)