bkerler / Loaders

EDL Loaders
298 stars 90 forks source link

Guide on how to get loaders for my device which is not listed? #98

Closed Z9044234820 closed 4 months ago

Z9044234820 commented 4 months ago

@bkerler

RenateUSB commented 4 months ago

C'mon. Post some info at least. What's the HWID, what's the hash?

Z9044234820 commented 4 months ago

HWID: 0x000a50e100300000 (MSM_ID:0x000a50e1,OEM_ID:0x0030,MODEL_ID:0x0000) CPU detected: "SM8150" PK_HASH: 0xa92b7191e6328ed620f2b801deaed9d89fef98ae04accd89477fd2cf9203740cba2f500fb58e3f648962a872aa3f0a28

RenateUSB commented 4 months ago

Sorry, I don't see that hash anywhere.

Z9044234820 commented 4 months ago

So no loader?

RenateUSB commented 4 months ago

Unless this does not have Secure Boot enabled there are no (to us) known loaders for it. Since this is Haier, there is practically no chance that this does not have Secure Boot.

Z9044234820 commented 4 months ago

It's not a Haier it's a HTC 5G hub.

Z9044234820 commented 4 months ago

So if my device has secure boot enabled then this EDL tool is ineffective/not going to work for my device?

RenateUSB commented 4 months ago

You could have supplied the info what this is in the first post. What is this, twenty questions?

Well, some non-phones don't have Secure Boot enabled. Is this rooted? Or do you have an update? Do you have the xbl?

Z9044234820 commented 4 months ago

I booted into TWRP with fastboot boot recovery.img and within twrp I found /dev/block/by-name/xbl_a and /dev/block/by-name/xbl_b and both files are identical. I have locked bootloader, and it is not rooted but I still got into twrp with the fastboot command. Loader can be made with the xbl?

RenateUSB commented 4 months ago

I'm looking closely but I can't see that xbl from here.

Z9044234820 commented 4 months ago

I'm looking closely but I can't see that xbl from here.

What do you mean?

RenateUSB commented 4 months ago

I wanted to see this abl and I can't unless you post it.

Z9044234820 commented 4 months ago

xbl.zip

RenateUSB commented 4 months ago

Your abl has the same PK has as the EDL client is reporting. That indicates it's highly probable that Secure Boot is enabled.

There is one more test. So, try this experiment. Try to load some xbl's as if it were a Firehose loader. It's not going to work as Firehose or even be able to boot. But the original xbl that you posted should load 100% and then fail. The modified version below should fail loading at 1 to 5%.

unxbl.zip

Z9044234820 commented 4 months ago

Running edl printgpt --loader unxbl.img --debugmode (your unxbl) would return DeviceClass - [LIB]: Timed out 4 times before exiting, while running edl printgpt --loader xbl.img --debugmode (my xbl) would return infinite lines of DeviceClass - USBError(19, 'No such device (it may have been disconnected)') even when my device is properly connected. Does that mean secure boot is enabled?

RenateUSB commented 4 months ago

I can't tell anything from what you posted. It was presumed that both would fail. The question is, which completely loaded the "Firehose loader" before it died.

Z9044234820 commented 4 months ago

Could you assist on how to change the edl printgpt (maybe change printgpt to something else, or add another parameter, etc.) command so it would show if the firehose loader is loaded or not? Because currently all I have is this, which according to your comment, you cannot tell if the loader is completely loaded:

$ edl printgpt --loader ../unxbl.img 
/usr/local/bin/edl:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
Qualcomm Sahara / Firehose Client V3.62 (c) B.Kerler 2018-2024.
main - Using loader ../unxbl.img ...
main - Waiting for the device
main - Device detected :)
sahara - Protocol version: 2, Version supported: 1
main - Mode detected: sahara
sahara - 
Version 0x2
------------------------
HWID:              0x000a50e100300000 (MSM_ID:0x000a50e1,OEM_ID:0x0030,MODEL_ID:0x0000)
CPU detected:      "SM8150"
PK_HASH:           0xa92b7191e6328ed620f2b801deaed9d89fef98ae04accd89477fd2cf9203740cba2f500fb58e3f648962a872aa3f0a28
Serial:            0xb9dd48f7

sahara - Protocol version: 2, Version supported: 1
sahara - Uploading loader ../unxbl.img ...
sahara - 64-Bit mode detected.
sahara - Firehose mode detected, uploading...
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
sahara
sahara - [LIB]: Unknown response received on uploading loader.
$ edl printgpt --loader ./xbl.img 
/usr/local/bin/edl:4: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
  __import__('pkg_resources').run_script('edlclient==3.62', 'edl')
Qualcomm Sahara / Firehose Client V3.62 (c) B.Kerler 2018-2024.
main - Using loader ./xbl.img ...
main - Waiting for the device
main - Device detected :)
sahara - Protocol version: 2, Version supported: 1
main - Mode detected: sahara
sahara - 
Version 0x2
------------------------
HWID:              0x000a50e100300000 (MSM_ID:0x000a50e1,OEM_ID:0x0030,MODEL_ID:0x0000)
CPU detected:      "SM8150"
PK_HASH:           0xa92b7191e6328ed620f2b801deaed9d89fef98ae04accd89477fd2cf9203740cba2f500fb58e3f648962a872aa3f0a28
Serial:            0xb9dd48f7

sahara - Protocol version: 2, Version supported: 1
sahara - Uploading loader ./xbl.img ...
sahara - 64-Bit mode detected.
sahara - Firehose mode detected, uploading...
sahara - Loader successfully uploaded.
main - Trying to connect to firehose loader ...
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
firehose_client
firehose_client - [LIB]: No --memory option set, we assume "eMMC" as default ..., if it fails, try using "--memory" with "UFS","NAND" or "spinor" instead !
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
DeviceClass - USBError(19, 'No such device (it may have been disconnected)')
firehose - TargetName=
firehose - MemoryName=eMMC
firehose - Version=
firehose - Trying to read first storage sector...

Right after the firehose - Trying to read first storage sector... message, the below line gets printed infinitely:

DeviceClass - USBError(19, 'No such device (it may have been disconnected)')

I even tried using all --memory options (eMMC,UFS,NAND,spinor) but same error.

RenateUSB commented 4 months ago

It's clear that this device has Secure Boot enabled. The xbl says clearly "sahara - Loader successfully uploaded." The unxbl disconnects when loading. Everything after this is immaterial because I said it would not work using an xbl as a Firehose loader.

Z9044234820 commented 4 months ago

So what is next? Now that it is found out that Secure boot is enabled, and that xbl loads and unxbl does not load, that means loader cannot be made? or can it be made?

RenateUSB commented 4 months ago

You have Secure Boot. You need a Firehose loader that the hash matches. There is no such loader available now.

Z9044234820 commented 4 months ago

How to disable secure boot.

RenateUSB commented 4 months ago

You can't disable Secure Boot. You would have to buy a new, unprogrammed processor and replace the chip.

alltern commented 1 month ago

THANKS FOR THIS RENATEUSB I just tried with the XBL too and it gets past the USBError19 and the loader is able to be uploaded. I now understand its just an issue with the loader! thanks I can now close that issue.