[TouchPad General] woodvale:
POTENTIAL OPENMULTI FAILED FIX

First up, many thanks to HP_Touchpad for producing this updated tpdebrick-v005 image as I was struggling with the old original v004 image. I know these problems started in 2013 and it is now 2021 but my TP has had light usage, being only used while out and about with wifi coverage for mail and web browsing, and overseas travel. I ditched WebOS when the certificates got out of date, initially using CM then Lineage. Then Covid struck and lockdowns and indoor restrictions meant that it hasn't been used until about two weeks ago when I couldn't switch it on by any combination of buttons, chargers and heating methods, so enter Tpdebrick about a week ago and this is where I've got to so far:-

So I know from reading loads of different forums' tpdebrick threads that a common error is the dreaded Open multi failed error while writing tz.mbn...

Checking QDL mode...

Writing file tz.mbn ...

Sending MAGIC...

MSG: Qfprom Fuse List: Blowing FAILED

MSG: Failed Fuse addr:

MSG: 0x00000000

MSG: Error Status:

MSG: 0x00000000

Sending secureMode...

Sending openMulti ...

MSG: Open multi failed, unknown error

ERROR: Open multi failed, unknown error

Invalid openMulti response.

Cannot write file tz.mbn

Aborted.

This is seen as terminal with no workaround apart from some who have said put it in a loop script especially while charging (hah!) on a hot water bottle or similar, and you may get lucky. Well I didn't. I was convinced if I could somehow get the A6 firmware reflash I could get it back as the tp had been sitting on a phone charger I've used for years with the tp switched off for a very long time. With tpdebrick-v005 I'd finally got to the above error. Now for all I know the early bootloaders in the tp are fine anyway so all I wanted was for the script to carry on if the above error occured.

And I believe I have found a workaround for it. First up you need to comment out two lines in tpdebrick's load_files function, the 'echo "Aborted."' and 'exit 1' by putting # at the beginning of those lines as below:-

load_files()

{

local cfgf=$1

while read fname pos md5

do

if [ "${fname}" = '#' ];

then

continue;

fi

echo "Writing file ${fname} ... "

addr=$(($pos * 512))

perl qdload.pl --laddr ${addr} --lfile ${fname}

if [ $? -ne 0 ];

then

echo "Cannot write file ${fname}"

# echo "Aborted."

# exit 1

fi

done <${cfgf}

echo "Done writing files."

}

Imagine my surprise when I ran the modified tpdebrick script and got the following output:-

Checking QDL mode...

Writing file tz.mbn ...

Sending MAGIC...

MSG: Qfprom Fuse List: Blowing FAILED

MSG: Failed Fuse addr:

MSG: 0x00000000

MSG: Error Status:

MSG: 0x00000000

Sending secureMode...

Sending openMulti ...

MSG: Open multi failed, unknown error

ERROR: Open multi failed, unknown error

Invalid openMulti response.

Cannot write file tz.mbn

Writing file appsboot-moboot.mbn ...

Sending MAGIC...

Sending secureMode...

Sending openMulti ...

Uploading file 'appsboot-moboot.mbn'...

Writing 1024 bytes to 0x10000000; 77944 bytes left.

Response: ACK 0x10000000 (outstanding: 0)

Writing 1024 bytes to 0x10000400; 76920 bytes left.

Yes, the openMulti failed as expected on tz.mbn, but I got no blown fuse or failed openMulti for the second file, appsboot-moboot.mbn, or any subsequent file in that phase. Now looking at the code, all the files in that phase use the same invocation of qdload.pl (which has many different uses) and the same code is being used for each file in that phase so the inference is that it is only the first invocation of sending MAGIC and openMulti that fails, all subsequent tries work!

So all we need to do is to try and send tz.mbn twice and the easiest way to do this is as follows:-

You need to locate the configuration file in the tpdebrick-v005 directory that is being used for your particular tp. The file is named tpxxnobootie.cfg where xx is 16, 32 or 64, so in my case, tp16nobootie.cfg. Open it with gedit and duplicate the tz.mbn file as follows:-

# HP Touchpad 16GB Wifi Bootloader Restore Configuration for TPDebrick

# NOTE: Most of these files should be obtained from webOS 3.0.5 doctor

tz.mbn 786432 1d54ad8f441f4a6f5c87ad973fef61b3

tz.mbn 786432 1d54ad8f441f4a6f5c87ad973fef61b3

appsboot-moboot.mbn 524288 nocheck

sbl3.mbn 393216 cc7d2a040bb992aaa975735e55d09cea

rpm.mbn 262144 5593bf7a15916c51fe5e07c86c7083d9

ebr16.bin 208801 e12f1a5bba43b96b8391a2f54981daf7

sbl2.mbn 205801 3664a3928ac3dd19b99d0a8188d1f713

sbl1.mbn 204801 46c39e7485f9e903a117690db88622af

mbr16.bin 0 2eaaf24a518cc8e1df127f43f6a0ccce

and save it, thats all. Excerpt from running that script now

Checking QDL mode...

Writing file tz.mbn ...

Sending MAGIC...

MSG: Qfprom Fuse List: Blowing FAILED

MSG: Failed Fuse addr:

MSG: 0x00000000

MSG: Error Status:

MSG: 0x00000000

Sending secureMode...

Sending openMulti ...

MSG: Open multi failed, unknown error

ERROR: Open multi failed, unknown error

Invalid openMulti response.

Cannot write file tz.mbn

Writing file tz.mbn ...

Sending MAGIC...

Sending secureMode...

Sending openMulti ...

Uploading file 'tz.mbn'...

Writing 1024 bytes to 0x18000000; 97896 bytes left.

Response: ACK 0x18000000 (outstanding: 0)

and I get what I want, the first attempt fails, the second one works!!!!

So I hope the above will help all those tp owners who gave up with the "unfixable" openMulti failed error who have tucked their tp away, get it out now and give it a try!

Me, I'm not rejoicing. Yes I've gotton through all the file loads in QDL mode but I'm now stuck at waiting for Fastboot mode whatever I do.

Done writing files.

Reseting device...

Requesting Reset...

Waiting for fastboot mode...

fastboot mode not found

Aborted.

]0;ubuntu@ubuntu: ~/tpdebrick-v005 ubuntu@ubuntu:~/tpdebrick-v005$ lsusb

Bus 001 Device 003: ID 0951:1624 Kingston Technology DataTraveler G2 4GB Pen Drive

Bus 001 Device 018: ID 05c6:9008 Qualcomm, Inc. Gobi Wireless Modem (QDL mode)

I've tried manually putting it in this mode using Power + Home for 20 seconds, both with keeping the usb cable in and reconnecting it, but no go. In fact testing under Windows 10 (my main system) using Device Manager, I always get Qualcomm HS-USB QDLoader 9008 (COM3) under Ports whatever button combination I use.

I can't force it with ADB as ADB does not recognise QDL mode as a device.

As I understand it this means that my TP has residual charge, but not enough to enable any other mode than QDL until I can get some more charge into it, which I cannot do.

UNLESS SOMEBODY KNOWS OTHERWISE?

The tp has served me well and unless there is some soft way to proceed, that's it. I do not want to proceed and do the obvious and open it up and replace the battery as it will only be destroyed with my advancing age and imperfect eyesight.