[Q] not booting recovery

Search This thread

GloriousDJ

Senior Member
Apr 6, 2011
65
5
Las Angeles
I flashed Lightspeed_4_beta3 after that came out and I finally made the time to try and update to the newest version 4.3 today, but I can't get into recovery, I have Acer Recovery app and I re-installed CWM but it still wont load recovery... any ideas why? and how to fix it?
 

ultramag69

Senior Member
Nov 6, 2007
5,996
1,080
Waratah
Go to market and get the app called "Rebooter". It gives the option to boot into recovery, dowload, reboot or power down. This needs root to work though...
 

GloriousDJ

Senior Member
Apr 6, 2011
65
5
Las Angeles
I know how to boot into recovery, that's not the problem, the problem is it wont load CWM recovery at all, it says loading recovery and it should only take a few seconds but I left it for 5 minutes and still said the same thing.
 

Moscow Desire

Retired Senior Moderator
I know how to boot into recovery, that's not the problem, the problem is it wont load CWM recovery at all, it says loading recovery and it should only take a few seconds but I left it for 5 minutes and still said the same thing.

Welcome to corrupted data. You know how to use ADB? You might be able to push a recovery image, but you'll need to format the devblk first I suspect.

Hope you have a backup copy of your UID number. I think you will probably need it.

I;ll say, go back to stock. Run Timmy Deans tools. It'l put a rooted stock 3.2, then install acer recovery with thor.

In the future, I would install RA Recovery. You can flash it from CWM.
 

GloriousDJ

Senior Member
Apr 6, 2011
65
5
Las Angeles
Welcome to corrupted data. You know how to use ADB? You might be able to push a recovery image, but you'll need to format the devblk first I suspect.

Hope you have a backup copy of your UID number. I think you will probably need it.

I;ll say, go back to stock. Run Timmy Deans tools. It'l put a rooted stock 3.2, then install acer recovery with thor.

In the future, I would install RA Recovery. You can flash it from CWM.

I have used ADB for my phone before, I'll look and see if I can push RA Recovery on without going back to stock, because I don't think I have my UID number anymore. Thanks for the idea, I guess I can try that see if I can get it working that way.
 
Last edited:

Moscow Desire

Retired Senior Moderator
I have used ADB for my phone before, I don't have a copy of my UID number but the I can still get on the beta3 so its not stuck in a boot loop or something so I think I could get it. Thanks for the idea, I guess I can try that see if I can get it working that way.

I believe Thor has instructions for pushing the CWM image on his site at tegraowners. As now you cannot flash an install.

I also suppose, you might try AcerREcovery from the market, and see if it would flash CWM again. Might be a little easier.
 
  • Like
Reactions: GloriousDJ

eppeP

Senior Member
Nov 29, 2011
127
75
Hope you have a backup copy of your UID number. I think you will probably need it.

Unless I have misinterpreted something, this should not be that much of a problem. Maybe a bit inconvenient if you don't know USB programming though.

If you can get the device into APX mode it will answer the first read request with the UID.
So if you open the device (955:7820) and initiate a bulk transfer on endpoint 0x81 and you should get 8 bytes that is the UID.

Something like:
Code:
#include <libusb-1.0/libusb.h>
#include <stdio.h>
#include <stdint.h>

int main(void)
{
    unsigned char data[64];
    int received_length;
    int r = 1;
    libusb_context* ctx = NULL;
    libusb_device_handle* dev_handle = NULL;

    libusb_init(&ctx);
    dev_handle = libusb_open_device_with_vid_pid(ctx, 0x0955, 0x7820);
    if(dev_handle)
    {
        r = libusb_bulk_transfer(dev_handle, 0x81, data, sizeof(data), &received_length, 10000);
        if (r == 0)
        {
            if(received_length == 8)
            {
                printf("uid: %#016lx\n", *(uint64_t*)data);
            }
            else
            {
                r = 1;
                printf("Error: We got %d bytes of data insetad of the 8 bytes we expected...\n", received_length);
            }
        }
        else
        {
            printf("Error: USB read failed!\n");
        }
        libusb_release_interface(dev_handle, 0);
    }
    else
    {
        printf("Error: Failed to open device!\n");
    }
    libusb_exit(ctx);
    return r;
}
 

coder_for_life22

Senior Member
Jan 28, 2012
74
12
I have been sooo fustrated trying to get my iconia rollback from the ics leak.

I tried SEVERAL methods including this one http://xdaforums.com/show...2#post23850482 in a thread i just posted.

But still no luck =( Every time i try to boot into recovery mode i get "Recovery verified failed" in read text and it just sits there and wont boot into recovery.

Can someone PLEASE tell me how to fix this or a way to get rid of this error. I dont care if i have to go back to stock i will.

Thanks guys
 

Euclid's Brother

Senior Member
May 3, 2011
954
264
Dallas, TX
www.interphaze.com
I flashed Lightspeed_4_beta3 after that came out and I finally made the time to try and update to the newest version 4.3 today, but I can't get into recovery, I have Acer Recovery app and I re-installed CWM but it still wont load recovery... any ideas why? and how to fix it?

Had you ever flashed the stock ics leak? It sounds like you may have the ics bootloader. Does it say "0.03.11-ICS" in the upper left corner when you boot up? If so, that may be whey thor recovery wasn't booting. (just checking)
 

liftman-

Senior Member
Nov 19, 2011
461
64
Unless I have misinterpreted something, this should not be that much of a problem. Maybe a bit inconvenient if you don't know USB programming though.

If you can get the device into APX mode it will answer the first read request with the UID.
So if you open the device (955:7820) and initiate a bulk transfer on endpoint 0x81 and you should get 8 bytes that is the UID.

Something like:
Code:
#include <libusb-1.0/libusb.h>
#include <stdio.h>
#include <stdint.h>

int main(void)
{
    unsigned char data[64];
    int received_length;
    int r = 1;
    libusb_context* ctx = NULL;
    libusb_device_handle* dev_handle = NULL;

    libusb_init(&ctx);
    dev_handle = libusb_open_device_with_vid_pid(ctx, 0x0955, 0x7820);
    if(dev_handle)
    {
        r = libusb_bulk_transfer(dev_handle, 0x81, data, sizeof(data), &received_length, 10000);
        if (r == 0)
        {
            if(received_length == 8)
            {
                printf("uid: %#016lx\n", *(uint64_t*)data);
            }
            else
            {
                r = 1;
                printf("Error: We got %d bytes of data insetad of the 8 bytes we expected...\n", received_length);
            }
        }
        else
        {
            printf("Error: USB read failed!\n");
        }
        libusb_release_interface(dev_handle, 0);
    }
    else
    {
        printf("Error: Failed to open device!\n");
    }
    libusb_exit(ctx);
    return r;
}
First thanks
having a hard time compiling in ubuntu
output is:

lr@lr:~/a500$ gcc -Wall -W -Werror apx.c -o apx
/tmp/ccNiYNxr.o: In function `main':
apx.c:(.text+0x36): undefined reference to `libusb_init'
apx.c:(.text+0x4c): undefined reference to `libusb_open_device_with_vid_pid'
apx.c:(.text+0x82): undefined reference to `libusb_bulk_transfer'
apx.c:(.text+0xec): undefined reference to `libusb_release_interface'
apx.c:(.text+0x104): undefined reference to `libusb_exit'
collect2: ld returned 1 exit status

any ideas for me?
 

lcd047

Member
Nov 8, 2011
31
12
Samsung Galaxy S23 Ultra
First thanks
having a hard time compiling in ubuntu
output is:

lr@lr:~/a500$ gcc -Wall -W -Werror apx.c -o apx
/tmp/ccNiYNxr.o: In function `main':
apx.c:(.text+0x36): undefined reference to `libusb_init'
apx.c:(.text+0x4c): undefined reference to `libusb_open_device_with_vid_pid'
apx.c:(.text+0x82): undefined reference to `libusb_bulk_transfer'
apx.c:(.text+0xec): undefined reference to `libusb_release_interface'
apx.c:(.text+0x104): undefined reference to `libusb_exit'
collect2: ld returned 1 exit status

any ideas for me?
Try linking against libusb-1.0:
Code:
gcc apx.c -o apx -lusb-1.0
 

jecee

Member
Jul 1, 2012
13
4
Unless I have misinterpreted something, this should not be that much of a problem. Maybe a bit inconvenient if you don't know USB programming though.

If you can get the device into APX mode it will answer the first read request with the UID.
So if you open the device (955:7820) and initiate a bulk transfer on endpoint 0x81 and you should get 8 bytes that is the UID.

Something like:
Code:
#include <libusb-1.0/libusb.h>
#include <stdio.h>
#include <stdint.h>

int main(void)
{
    unsigned char data[64];
    int received_length;
    int r = 1;
    libusb_context* ctx = NULL;
    libusb_device_handle* dev_handle = NULL;

    libusb_init(&ctx);
    dev_handle = libusb_open_device_with_vid_pid(ctx, 0x0955, 0x7820);
    if(dev_handle)
    {
        r = libusb_bulk_transfer(dev_handle, 0x81, data, sizeof(data), &received_length, 10000);
        if (r == 0)
        {
            if(received_length == 8)
            {
                printf("uid: %#016lx\n", *(uint64_t*)data);
            }
            else
            {
                r = 1;
                printf("Error: We got %d bytes of data insetad of the 8 bytes we expected...\n", received_length);
            }
        }
        else
        {
            printf("Error: USB read failed!\n");
        }
        libusb_release_interface(dev_handle, 0);
    }
    else
    {
        printf("Error: Failed to open device!\n");
    }
    libusb_exit(ctx);
    return r;
}

Hi, eppeP,
I downloaded the drivers for lib Usb and installed, I am missing something definately as I dont know how to read the CPUID after installing the drivers
Please help....
 

srbeen

Member
Sep 6, 2010
6
38
I just did this in ubuntu with no problem. with tablet in APX mode, start an elevated command prompt (Run as admin) then run the EXE file.
it will spit back an error or the UID.
Very simple.
 

eppeP

Senior Member
Nov 29, 2011
127
75
Hi, eppeP,
I downloaded the drivers for lib Usb and installed, I am missing something definately as I dont know how to read the CPUID after installing the drivers
Please help....

Since you write drivers I assume you are using windows.
In that case you want the libusb 0.1 version, the quoted code is for libusb 1.0 which is not available for windows.
Code and a visual studio project can be found here. This thread may be of use as well.

If using Linux (or any other platform for which libusb 1.0 exist) you should be able to build the quoted code as described earlier in this thread.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 16
    Hope you have a backup copy of your UID number. I think you will probably need it.

    Unless I have misinterpreted something, this should not be that much of a problem. Maybe a bit inconvenient if you don't know USB programming though.

    If you can get the device into APX mode it will answer the first read request with the UID.
    So if you open the device (955:7820) and initiate a bulk transfer on endpoint 0x81 and you should get 8 bytes that is the UID.

    Something like:
    Code:
    #include <libusb-1.0/libusb.h>
    #include <stdio.h>
    #include <stdint.h>
    
    int main(void)
    {
        unsigned char data[64];
        int received_length;
        int r = 1;
        libusb_context* ctx = NULL;
        libusb_device_handle* dev_handle = NULL;
    
        libusb_init(&ctx);
        dev_handle = libusb_open_device_with_vid_pid(ctx, 0x0955, 0x7820);
        if(dev_handle)
        {
            r = libusb_bulk_transfer(dev_handle, 0x81, data, sizeof(data), &received_length, 10000);
            if (r == 0)
            {
                if(received_length == 8)
                {
                    printf("uid: %#016lx\n", *(uint64_t*)data);
                }
                else
                {
                    r = 1;
                    printf("Error: We got %d bytes of data insetad of the 8 bytes we expected...\n", received_length);
                }
            }
            else
            {
                printf("Error: USB read failed!\n");
            }
            libusb_release_interface(dev_handle, 0);
        }
        else
        {
            printf("Error: Failed to open device!\n");
        }
        libusb_exit(ctx);
        return r;
    }
    1
    I have used ADB for my phone before, I don't have a copy of my UID number but the I can still get on the beta3 so its not stuck in a boot loop or something so I think I could get it. Thanks for the idea, I guess I can try that see if I can get it working that way.

    I believe Thor has instructions for pushing the CWM image on his site at tegraowners. As now you cannot flash an install.

    I also suppose, you might try AcerREcovery from the market, and see if it would flash CWM again. Might be a little easier.
    1
    Hi! is it possible to obtain SBK for 16 bytes instead of 8 with this program? Thanks in advance!

    This is not giving you the SBK but the UID.
    For the Iconia A500 we know the SBK is based on the UID so once we know the UID we can calculate the SBK.

    Those calculations expect the UID to be 8 bytes to fit into a 16 character hexadecimal string.
    You can not use a 16 byte UID as it would not fit.

    You could possibly truncate it and only use 8 out of those 16 bytes.
    Do you really have an Iconia A500 giving you a 16 byte UID?

    The manufacturer can set the SBK to anything they like, it is very unlikely that they would chose to base it on the UID exactly the same way as for the A500 for anything else.
    So if you do not have an Iconia A500 you can probably disregard everything in this thread.