bkerler / edl

Inofficial Qualcomm Firehose / Sahara / Streaming / Diag Tools :)
GNU General Public License v3.0
1.49k stars 360 forks source link

Onyx Boox Kon-Tiki 2 issues #125

Closed mergen3107 closed 2 years ago

mergen3107 commented 2 years ago

Hi! I have problems with using edl.py on Onyx Boox Kon-Tiki 2. Platform is Qualcomm SDM636.

Let me describe in detail what I did. I attached an archive with two --debugmode logs and the generated rawprogram0.xml file, which I will refer to: edl_log_xml.zip

1) Drivers. a) Qualcomm QDLoader did not work for me. I had to boot into Windows 10's mode with no driver signature check to make the exclamation mark. It connected to COM port, but edl.py did not see device properly, with Unknown mode, aborting. b) So by suggestions from MobileRead Forum, I ditched all Qualcomm drivers and installed Zadig's WinUSB (v6.1.7600.16385), after fresh edl boot. The device was recognized correctly. First command in sahara mode, any other in firehose.

2) Cannot write partitions. a) First I tried python edl.py --loader=QC_SDM636.bin --memory=eMMC rl dumps --skip=userdata --genxml. QC_SDM636.bin is the copy of respective file I found in Loaders/ directory after git submodule update --init --recursive, as per your instructions on the GitHub main page.

It complained that it cannot divide by zero, most probably because it cannot select partitions. It created xbl.bin, gpt_main0.bin', andgpt_backup0.bin. However according to generatedrawprogram0.xml` (in the attached archive), these should have different sizes.

b) Then I just tried to loader the loader first and dump partitions one by one by name (refer to edl_1.txt log):

python edl.py --loader=QC_SDM636.bin --memory=eMMC

and to read the partition (edl_2.txt):

python edl.py r boot 1boot.img

but it again complained about division by zero.

Thank you!

BudDeuce commented 2 years ago

Edl can have unexpected bugs under windows.

Try using Ubuntu, it's more stable with Edl: https://ubuntu.com/download/desktop NOTE: If the download takes a long time, you can press the download button again.

Using a virtual machine is recommended because you can switch between your main OS and your virtual OS more efficiently. I personally recommend VMware workstation: https://download3.vmware.com/software/wkst/file/VMware-workstation-full-16.1.2-17966106.exe

The license key is: ZF3R0-FHED2-M80TY-8QYGC-NPKYF

mergen3107 commented 2 years ago

@BudDeuce Thank you for your suggestion!

However, the problem was different. Thanks to Renate on MobileRead Forums, it worked after replacing the show_progress function in edl/edl/Library/firehose.py by this:

    def show_progress(self, prefix, pos, total, display=True):
        if display:
            prog = round(float(pos) / float(total) * float(100), 2)
            print_progress(prog, 100, prefix='Progress:', bar_length=50)

Out of all things that can (and did) break, this was of the least expected xD

All commands now work.

bkerler commented 2 years ago

Thanks, i will fix this ;)