General 🛑❗⚠️ WARNING! Read this before your initial upgrade to Android 13!⚠️❗🛑

Search This thread

V0latyle

Forum Moderator
Staff member
I've read all the posts and watched some youtube videos and hope I have the procedure right, this time, Could someone please confirm the following is correct?

-Extract the contents of the factory ROM .zip file for the Android 13 build in the current slot
-Copy the bootloader image in the extracted file to Platform-Tools
Don't really have to copy anything, you can drag and drop the file into your command window. Useful for keeping files segregated to keep your platform tools folder clean.
(This would be the img file 'bootloader-oriole-slider-1.2-8895132.img', not 'boot.img' in image-oriole- tp1a.221005.002.zip, correct?)
Correct. The boot image contains the recovery and system kernel. The bootloader image is completely separate and is in the root folder.
-With USB debugging on connect phone to PC
-Initiate CMD prompt in Platform-Tools folder
Execute the following commands:

adb reboot bootloader(enter)
fastboot --slot=other flash bootloader bootloader-oriole-slider-1.2-8895132.img(enter)
Yep, or type fastboot flash bootloader --slot=other <leave a space, then drag and drop the bootloader image into the command window>
fastboot set_active other(enter)
fastboot reboot bootloader(enter)
fastboot set_active other(enter)
fastboot reboot bootloader(enter)
I'm not sure what you're trying to do here. All you should need is
fastboot flash bootloader <bootloader image> #Flashes current bootloader slot fastboot flash bootloader --slot=other <bootloader image> #Flashes inactive slot fastboot reboot bootloader #Reboot to ensure the version shown on the screen is updated
fastboot reboot(enter)
You can also use fastboot continue which instructs the bootloader to continue normal boot.
 

Lughnasadh

Senior Member
Mar 23, 2015
4,948
5,708
Google Nexus 5
Huawei Nexus 6P
Can someone try this and see if it works to check the bootloader version on the alternate slot without having to change slots?

fastboot getvar version bootloader_a fastboot getvar version bootloader_b
 

in_dmand

Senior Member
Dec 1, 2010
671
66
Greenville, SC
Quick question... So if I want to update to android 13 couldn't I just Uninstall magisk and reboot (to basically make it factory android 12 again without root) then I could go through the official update that is default on my phone. After that I could simply root android 13 correct? I would have an unlocked bootloader the whole time
 

V0latyle

Forum Moderator
Staff member
Quick question... So if I want to update to android 13 couldn't I just Uninstall magisk and reboot (to basically make it factory android 12 again without root) then I could go through the official update that is default on my phone. After that I could simply root android 13 correct? I would have an unlocked bootloader the whole time
If you're asking about updating and re-rooting, please ask this question in the guide I linked at the top of the OP.

This thread specifically concerns the anti rollback. If you are updating to Android 13 for the first time, you want to ensure you flash the new bootloader to both slots.
 

in_dmand

Senior Member
Dec 1, 2010
671
66
Greenville, SC
If you're asking about updating and re-rooting, please ask this question in the guide I linked at the top of the OP.

This thread specifically concerns the anti rollback. If you are updating to Android 13 for the first time, you want to ensure you flash the new bootloader to both slots.
Thanks, I guess that's my question... Why would I need to flash the new bootloader to both spots, shouldn't that happen naturally when doing the native Android 13 update?
 

in_dmand

Senior Member
Dec 1, 2010
671
66
Greenville, SC
No. Please read the OP again. This has been explained ad nauseam.
Thanks, ok I did and followed the instructions. Now I'm basically just trying to follow instructions you posted on verifying that it's been updated on both slots, but when I use ADB to reboot the bootloader into fastboot mode and get to the correct fastboot screen (red triangle w/ an exclamation point in the middle and says 'Fastboot Mode' w/ info underneath) the fastboot commands don't work. such as when I enter 'fastboot getvar current-slot', it just keeps saying 'waiting for any device'.

Any ideas? maybe I need to update my platform tools or something.

*Edit* nvm I'm good I just updated my USB drivers for the Pixel 6 and it's working now so I'm all set
 
Last edited:

2Wires

Member
Aug 7, 2007
21
6
I was on 0905 and wanted to update to 1205 with the Pixel Flasher. I patched the boot.img and let it do its magic.
After the update my P6 was boot looping. Since that happened before with the Pixel Flasher, I decided to manually flash 1205 again. I think it got interrupted at some point and couldn't finish. I tried flashing 0905 again but no luck. I got some corrupted data errors and after a while the phone didn't boot anymore.
It's a brick now. I've tried all kinds of button combinations for different amounts of time, up to hours. With USB, without USB, no change. No sign of life.
Could that have happened because slot A and B may have different bootloaders?
I assume the device can't be recovered? I don't live for from Google, maybe I should visit them :)
 

V0latyle

Forum Moderator
Staff member
I was on 0905 and wanted to update to 1205 with the Pixel Flasher. I patched the boot.img and let it do its magic.
After the update my P6 was boot looping. Since that happened before with the Pixel Flasher, I decided to manually flash 1205 again. I think it got interrupted at some point and couldn't finish. I tried flashing 0905 again but no luck. I got some corrupted data errors and after a while the phone didn't boot anymore.
It's a brick now. I've tried all kinds of button combinations for different amounts of time, up to hours. With USB, without USB, no change. No sign of life.
Could that have happened because slot A and B may have different bootloaders?
I assume the device can't be recovered? I don't live for from Google, maybe I should visit them :)
If both bootloaders are Android 13, it shouldn't matter. But yes, if the bootloader screen doesn't even come up, you're going to have to have it repaired.
 

kiwigi

Senior Member
Oct 4, 2012
182
25
LineageOS
Google Pixel 6

V0latyle

Forum Moderator
Staff member
I had an error when I wanted to change slot; "Setting current slot to 'b' FAILED (remote: 'command (set_active:) is not allowed when locked')"
Does it mean that I would have to unlock before checking the bootloader version?
Bootloader version is displayed on the bootloader screen. Since you are locked, the only way to update is via OTA, so if you have updated at least once since the August update, both slots should be OK.
 

kiwigi

Senior Member
Oct 4, 2012
182
25
LineageOS
Google Pixel 6
Bootloader version is displayed on the bootloader screen. Since you are locked, the only way to update is via OTA, so if you have updated at least once since the August update, both slots should be OK.
Thanks @V0latyle
The P6 updated itself last week during a try of GrapeneOS. I only own this phone for approx 3 weeks.
Its on TQ1A.221205.011
Eventually I like to root and stay with stock. Just have to get knowledgeable around the 2 slots and if and what image needs to be flashed to the non active one.
 

V0latyle

Forum Moderator
Staff member
Thanks @V0latyle
The P6 updated itself last week during a try of GrapeneOS. I only own this phone for approx 3 weeks.
Its on TQ1A.221205.011
Eventually I like to root and stay with stock. Just have to get knowledgeable around the 2 slots and if and what image needs to be flashed to the non active one.
You don't have to have anything in particular flashed to the inactive slot; just make sure the inactive bootloader slot is Android 13.

If you go back to a stock ROM from a custom ROM it would be wise to flash both slots simply to avoid any weirdness should a boot failure occur and the device tries to reboot to custom software
 
  • Like
Reactions: kiwigi

xabier-bo

Senior Member
Sep 17, 2014
150
29
Hi @V0latyle

What would be the best way to proceed in this situation...?

- Rooted Xiaomi Mi 11 5G NE (A/B)
- I've accepted upgrade to Android 13, thinking I was only downloading OTA, that is, expecting a confirmation before the 2 phases. But it has started automatically to install it... :(
- So I've decided the best I could do was to follow the standard procedure about Magisk & OTA (uninstall Magisk-restore stock images / wait until installation finishes / install Magisk inactive slot)
- And I've stopped here...

Is there anything that can be done before restarting?
I mean how could I flash A13 bootloader in both slots, before upgrading?
 
Last edited:

xabier-bo

Senior Member
Sep 17, 2014
150
29
Your device is not a Pixel 6, your question does not belong here. You've been a member of XDA long enough to know better, my friend.

The anti-rollback discussed in this thread applies ONLY to the Google Pixel 6, 6 Pro, and 6a.
I missed at some point the ONLY clause 😅
Said that, thanks for your answer, I was on the move, I broke out in a sweat 😂, and I didn't check anymore.
 
  • Like
Reactions: V0latyle

alexdownar

New member
Mar 3, 2011
2
0
Pixel 6. Help me figure out how to solve the problem. I installed the latest February version of your firmware to the January official one. All the works, but there is no menu for turning on Volte and Vowifi, and there is also no call recording option.
 

V0latyle

Forum Moderator
Staff member
Pixel 6. Help me figure out how to solve the problem. I installed the latest February version of your firmware to the January official one. All the works, but there is no menu for turning on Volte and Vowifi, and there is also no call recording option.
It's stock Google firmware, if you don't see those options they probably aren't available in your region
 

Top Liked Posts

  • There are no posts matching your filters.
  • 15
    ***Note: THIS IS NOT A ROOT GUIDE. For updating and root instructions, check out my guide here.***

    From the Pixel Images page:
    1668631439637.png


    This applies to ALL Tensor devices, regardless of whether or not you're rooted!

    What this means:
    Once Android 13 Stable boots, it updates an anti-rollback counter in the device hardware to prevent rolling back the bootloader. This will prevent previous versions of the bootloader from starting.

    Why this is a problem: The OTA only updates one slot, then reboots into that slot. It does not update both slots at once. If there is a boot failure after updating to Android 13, the device may attempt to "recycle" back to the old slot. If this other slot has a previous version of the bootloader, the bootloader will not start, rendering the device a brick.

    How do I make sure this doesn't happen to me?
    If you updated via OTA, simply sideload the OTA again. Since you are currently on the Android 13 slot, this will overwrite your old Android 12 slot with the new bootloader.
    If you have an unlocked bootloader and prefer to update using the factory image, you can flash the bootloader to both slots:
    fastboot flash bootloader --slot=all <bootloader image> It's highly recommended you do this BEFORE updating, but if you didn't, do it as soon as possible.

    I've updated several times since the August 2022 update, am I still at risk?
    If you've updated via OTA at least once the initial Android 13 update, you should be fine. Instructions to check bootloader versions are further down this post.

    The initial Android 13 release bootloader version is slider-1.2-8739948. As long as your bootloader is equal to or higher than this, you should be fine.

    What if I was on the Android 13 Beta? Same as above - the beta did not incorporate the anti-rollback, and the beta bootloaders are still considered "old".

    Will the new bootloader prevent me from flashing and running Android 12? The short answer is YES, for now. Contrary to what the warning above says, you CAN flash Android 12 on the Android 13 bootloader, and though it will boot, it will not run properly. See this post.

    How do I check my current bootloader version?
    Code:
    adb reboot bootloader #Reboots device to bootloader.
    
    fastboot getvar current-slot #Outputs current slot, should also be visible on the device screen: "Boot slot"
    
    fastboot getvar version-bootloader #Outputs current slot's bootloader version, should also be visible on device screen "Bootloader version"
    
    fastboot --set-active=a or b #Use this to switch to the inactive slot - if current slot is A, set to B or vice versa.
    
    fastboot getvar current-slot
    
    fastboot getvar version-bootloader
    
    fastboot --set-active=b or a (set to original slot) #Set active slot back to what it was before.  If you started on slot A, make sure you switch back to slot A.
    
    fastboot getvar current-slot
    
    fastboot continue #Commands device to resume boot, same function as selecting "Start" in the bootloader menu.
    
    #So as an example:
    fastboot getvar current-sot
    >current-slot: a
    
    fastboot getvar version-bootloader
    >version-bootloader: slider-1.2-8739948
    
    fastboot --set-active=b
    >Setting current slot to 'b'
    
    fastboot getvar version-bootloader
    >version-bootloader: slider-1.2-8739948
    
    fastboot --set-active=a
    >Setting current slot to 'a'
    
    fastboot continue
    2
    Hi,my pixel 6 build is TP1A.220905.004. SO do i have to sideload same TP1A.220905.004 OTA.zip build again on my device ?
    If you updated via OTA in August, then you should be fine.
    2
    I would still check both slots for the new bootloader to be safe, but I don't remember off the top of my head the commands to do that.
    Hello guys ! Since there was 2 Android 13 OTA updates, do we still need to sideload please ?

    The first OTA installed the Android 13 upgrade which I did and I got a message afterward to install the new Android 13 update (done too).

    (I'm pretty sure it's a dumb question, sorry)
    adb reboot bootloader

    fastboot getvar current-slot

    fastboot getvar version-bootloader

    fastboot --set-active=a or b (set to inactive slot)

    fastboot getvar current-slot

    fastboot getvar version-bootloader

    fastboot --set -active=a or b (set to original slot)

    fastboot getvar current-slot

    fastboot reboot bootloader

    fastboot reboot

    (There are a couple of redundancies in there just as a failsafe)

    P.S. You'll need to have an unlocked bootloader to switch/set slots.
    2
    Hello guys ! Since there was 2 Android 13 OTA updates, do we still need to sideload please ?

    The first OTA installed the Android 13 upgrade which I did and I got a message afterward to install the new Android 13 update (done too).

    (I'm pretty sure it's a dumb question, sorry)
    I would still check both slots for the new bootloader to be safe, but I don't remember off the top of my head the commands to do that.
    1
    I updated with OTA and later sideloaded the update, but my bootloader is unlocked. I'm screwed?
    No. That's is the recommended method according to Google.

    "To avoid hitting this state, if you are flashing a Pixel 6, Pixel 6a, or Pixel 6 Pro device with an Android 13 build for the first time, please flash the bootloader partition to the inactive slot after successfully updating and booting into Android 13 at least once. This can be done by following these steps:

    Option 1 (recommended): After a successful boot into Android 13 for the first time, sideload the full OTA image corresponding to that build and reboot the device to ensure that both slots have a bootable image
    ."