• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Development [STOCK][FULL-ROM] OxygenOS_11.3_A.16 EU DN2103 | Unbrick guide

Search This thread

jis251

Senior Member
Aug 2, 2013
174
48
This rom does not overwrite userdata. But I highly suggest to do a backup first anyway.

The most straight forward fix you could try before re-flashing the whole rom though, is to flash back the stock recovery and do a full factory reset (format data) from there.



It's a live USB, a whole OS running from a pendrive (or in a virtual machine if you prefer). You do not use it in windows.
This firmware is for A.12 EU only, I'm not able to confirm any compatibility with A.13.

This rom does not overwrite userdata. But I highly suggest to do a backup first anyway.

The most straight forward fix you could try before re-flashing the whole rom though, is to flash back the stock recovery and do a full factory reset (format data) from there.



It's a live USB, a whole OS running from a pendrive (or in a virtual machine if you prefer). You do not use it in windows.
This firmware is for A.12 EU only, I'm not able to confirm any compatibility with A.13.
HI. My System was "gone". I couldn't do anything. From Stock recovery I couldn't Update online, no network found (wifi). Fastboot told that my bootloader is locked, even I had unlocked it. Stock recovery just came by itself, I didn't restore it. I took my phone to service and they were puzzled what had happened to my phone. I guess they will give me new one. Perhaps hardware is somehow broken. Their best guess was that.
Thanks your advices. I wait service to reply.
This rom does not overwrite userdata. But I highly suggest to do a backup first anyway.

The most straight forward fix you could try before re-flashing the whole rom though, is to flash back the stock recovery and do a full factory reset (format data) from there.



It's a live USB, a whole OS running from a pendrive (or in a virtual machine if you prefer). You do not use it in windows.
This firmware is for A.12 EU only, I'm not able to confirm any compatibility with A.13.
 

Elaba

Senior Member
Jun 27, 2010
87
14
Today did a 2nd attempt to unlock the bootloader and instal Twrp. So far so good, haven't used the phone yet (pac-man edition) , Hopefully all goes well this time. I remember it probably went wrong the first time after i made a nand backup just after the rooting process . Haven't done a nand backup yet, bit scared to end up the same like before.
 
Last edited:

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
Hi
I used your method to backup my phone, and restore your OxygenOS 11.3 A.12 EU Full Stock. The process went fine, but the phone doesnt boot after that. the phones shows this message:

View attachment 5470935

fastboot flashing unlock shows "fastboot: error: Command failed"
if i want to flash any image or TWRP, i get "FAILED (remote: 'not allowed in locked state')"
fastboot getvar all tells me: (bootloader) unlocked: no
(it was unlocked before restore..?)

should i try your "For locked bootloader:" method? it sounds "funny" :LOL::eek::devilish:
Exact same boat for me as well. The included .bat seemed to work just fine, and then the phone no longer boots and gives the same error. Flashing unlock lets me press the volume up button to select "yes" but errors out, not allowed.

Whilst running the restore option in the .bat I noticed the first half worked flawless, but about halfway through it started running into the "not allowed in locked state" errors, so my theory is that the tool flashes in a LOCKED bootloader about midway through, thus practically interupting itself and half of partitions afterwards cannot be flashed.
That's odd, the rom is already unlocked by itself. I'll see if any others encounter the same issue.

The locked bootloader method should revert it back to unlocked.
Same issue as above here. So for some reason, a locked bootloader got flashed in? Not too sure why but it seems to be happening to multiple people.



Edit:

Okay so, I just followed the "for locked bootloader" steps

Successfully flashed the seccfg.img in the download link to the phone - But the bootloader is still locked.

After connecting back to my windows PC, the "fastboot flashing unlock" command still returns "operation not allowed" and trying to flash files still returns "FAILED (remote: 'not allowed in locked state')

The fastboot command "fastboot getvar all" returns message the message "(bootloader) unlocked: no"

So the bootloader is definitely still locked.

Isn't the most obvious answer to this whole situation (of several people having the same issue), is that the seccfg provided in the OP might be for a locked bootloader? So maybe a good samaritan somewhere with an unlocked bootloader can upload their seccfg, and we can check? Or maybe @Raygen can try reuploading it again? Always good to get a 2nd source so we can eliminate the possibility.
 
Last edited:

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
I am having the exact same issue after restoring (I also had unlocked bootloader before and fastboot says it is locked now). Did you manage to fix it after following the locked bootloader instructions?

i could also flash seccfg.img. But also still locked bootloader.
will try again later this week.

I done all The things also python shown falshing completed still bootloader is showing locked i dont understand what's happening

Exact same boat too! Not sure if you guys have managed a fix yet, but let me know what you guys have tried. It seems like TheWing has found a fix. Which I'm currently trying right now. I have the 12gbram 256gb storage DN2103 EU variant phone on A12.


I also tried the bootloader unlock method (after the broken boot/recovery message) and got the same result, fastboot saying it was still locked. After i messed with mtkclient flashing some images again or trying the proper mtkclient unlock method (from their github page) but no luck.

I managed to fix it today flashing with mtkclient the stock boot, recovery and vbmeta images from latest A12 ota, getting into the recovery and wiping all data, and after that the phone was finally working, and I could unlock the bootloader again and flash magisk and so.

@TheWing Thanks for sharing your fix! Could you perhaps share the vbmeta, boot and recovery images you used to flash the fix? When you say "from the A12 OTA", what do you mean? Do you mean the incremental A11 to A12 update.zip? Could you provide a link to this or point me where i can find it?

If I understand correctly, you solved your bootloop using the mtkclient's ability to flash partitions despite having a locked bootloader; So you basically did a "normal" bootloop fix and managed to correct your phone.

I'm trying it right now but it hasn't seemed to work. Tried using the Recovery/Boot/vbmeta files from my nandroid, but also files from the google drive in the OP's google drive link. Can't seem to get the phone out of it's partitions destroyed message. A link to that OTA12 update file that you mentioned would be extremely helpful.



Question, were you able to boot into recovery prior to these fixes? The recovery.img in the OP's download link seem to work for me! But using it's format data and wipe data function doesn't seem to do anything, and I've tried it a dozen or more times.



Could you also check if these files sizes look right to you? So i know if I'm in the right ballpark.

boot.img: 33,554,432 bytes (32.0 MiB)

All the stock boot images seem to be this exact size, whether it be from my nandroid backups, or the ones provided here on XDA for stock .A12 update. I've tried a bunch but none of them are working so far. I assume they're all identical.

recovery.img: 134,217,728 bytes (128.0MiB)
This is where things get a little confusing for me. The TWRP recovery image from Denniz's TWRP thread is also this exact same size. The supposedly "stock" recovery in the google link in the OP of this thread is also this exact same size.

vbmeta_vendor.img(from download link in this thread) and vbmeta.emmc.win (from nandroid): 8,388,608 bytes (8.00MiB)
Alright this is where I'm getting really confused. There's 2 different file sizes here. I assume you're flashing the ones that are 8 megabytes large? That's the vbmeta partitions in my nandroids, and also the vbmeta included in the OP's download link.
However, there's also teh vb.img file that people use for the "./fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img" command, which is only 4,096 bytes (4KB) large, which I assume is far too small to be what you're flashing.



Could you check these commands for me and see if they look right to you? And if I'm placing them in the correct location in the mtkclient?
"python mtk w boot boot.img"
"python mtk w recovery recovery.img"
"python mtk w vbmeta vbmeta.img"

I renamed files from my nandroid backups from things like "vbmeta.emmc.win" to just "vbmeta.img". I then placed the renamed files into the /opt/mtkclient directory and flashed them using the above commands. The flashes seemed to work fine. Do you think renaming the files, or that .emmc.win files from TWRP backups are incompatible somehow? (like TWRP compresses them funny or something)



Any ideas, file uploads, or file download links that any of you guys have will be appreciated.
 
Last edited:

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
After hours and hours of tinkering, I've not quite fixed the issue, but gotten the phone into a... slightly better state?

Phone now boots to (some kind of stock) recovery, and when trying to boot to system, phone gets stuck in a very short bootloop; Oneplus symbol appears, dispppears, repeats. Not your normal bootloop (which usually looks like 2 white dots spinning around larger red dot and takes longer before it reboots).

Using this stock recovery (which shows Ver1.2 at the bottom)'s Wipe data/Format Data functions do not seem to help at all. Curiously, the language menu on this stock recovery seems to be very different to the stock recovery that came with my phone; The otrder of the languages is different, and it has an extra "online update" option that I've never seen before. Otherwise it's practically the same.

This stock recovery also always prompts some kind of error like saying something along the lines of 'Kindly reminder, please connect inernet to update'. With pretty broken english and a few typo's in the popup. The "update system" button in the recovery doesn't work, as it can't find or access any wifi.

I'm wondering if I'm getting close to a fix here. I can explain steps taken to get here incase it helps others, and if anyone has seen a "short bootloop" like this before and knows how to solve it, please let me know!

Bootloader is still locked fyi, flashing unlock command does not work.

I can still use mtkclient to manually flash in any partitions. Flashing seccfg doesn't seem to help.

Still looking for the stock recovery and stock vbmeta partitions from the OTA A12 update if anyone can help me with those. I don't know where to find the stock OTA A12 update that people keep talking about, as the update.zip from teh incremental A11 to A12 update doesn't seem to be quite right.
 

Raygen

Senior Member
Feb 21, 2014
91
32
Mantova
Exact same boat too! Not sure if you guys have managed a fix yet, but let me know what you guys have tried. It seems like TheWing has found a fix. Which I'm currently trying right now. I have the 12gbram 256gb storage DN2103 EU variant phone on A12.




@TheWing Thanks for sharing your fix! Could you perhaps share the vbmeta, boot and recovery images you used to flash the fix? When you say "from the A12 OTA", what do you mean? Do you mean the incremental A11 to A12 update.zip? Could you provide a link to this or point me where i can find it?

If I understand correctly, you solved your bootloop using the mtkclient's ability to flash partitions despite having a locked bootloader; So you basically did a "normal" bootloop fix and managed to correct your phone.

I'm trying it right now but it hasn't seemed to work. Tried using the Recovery/Boot/vbmeta files from my nandroid, but also files from the google drive in the OP's google drive link. Can't seem to get the phone out of it's partitions destroyed message. A link to that OTA12 update file that you mentioned would be extremely helpful.



Question, were you able to boot into recovery prior to these fixes? The recovery.img in the OP's download link seem to work for me! But using it's format data and wipe data function doesn't seem to do anything, and I've tried it a dozen or more times.



Could you also check if these files sizes look right to you? So i know if I'm in the right ballpark.

boot.img: 33,554,432 bytes (32.0 MiB)

All the stock boot images seem to be this exact size, whether it be from my nandroid backups, or the ones provided here on XDA for stock .A12 update. I've tried a bunch but none of them are working so far. I assume they're all identical.

recovery.img: 134,217,728 bytes (128.0MiB)
This is where things get a little confusing for me. The TWRP recovery image from Denniz's TWRP thread is also this exact same size. The supposedly "stock" recovery in the google link in the OP of this thread is also this exact same size.

vbmeta_vendor.img(from download link in this thread) and vbmeta.emmc.win (from nandroid): 8,388,608 bytes (8.00MiB)
Alright this is where I'm getting really confused. There's 2 different file sizes here. I assume you're flashing the ones that are 8 megabytes large? That's the vbmeta partitions in my nandroids, and also the vbmeta included in the OP's download link.
However, there's also teh vb.img file that people use for the "./fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img" command, which is only 4,096 bytes (4KB) large, which I assume is far too small to be what you're flashing.



Could you check these commands for me and see if they look right to you? And if I'm placing them in the correct location in the mtkclient?
"python mtk w boot boot.img"
"python mtk w recovery recovery.img"
"python mtk w vbmeta vbmeta.img"

I renamed files from my nandroid backups from things like "vbmeta.emmc.win" to just "vbmeta.img". I then placed the renamed files into the /opt/mtkclient directory and flashed them using the above commands. The flashes seemed to work fine. Do you think renaming the files, or that .emmc.win files from TWRP backups are incompatible somehow? (like TWRP compresses them funny or something)



Any ideas, file uploads, or file download links that any of you guys have will be appreciated.

You can find the OTA A.12 zip file here: https://mega.nz/folder/rQhhHQpA#nNHvPlmzBXwPjmaFpuDa2Q

The partition images are extracted directly from the phone memory, so all images have the exact same dimensions of the partitions size on the phone memory, not the "real" size of the data in them.
In practice, they're filled with lot's of zeros at the end to reach all the same size.
Don't worry about it, both files, smaller ones that came in the OTA files, and the 8Mb+ ones extracted with the tool, are exactly the same.

emmc.win files should be just .img files renamed yes. You can renamed them back to .img or even flash them directly like that.

Try to flash just the vbmeta img from the OTA file and see if it works btw.
I'm about to implement @TheWing fix soon this week in the thread.
 
Last edited:
  • Like
Reactions: Zombnombs

Raygen

Senior Member
Feb 21, 2014
91
32
Mantova
After hours and hours of tinkering, I've not quite fixed the issue, but gotten the phone into a... slightly better state?

Phone now boots to (some kind of stock) recovery, and when trying to boot to system, phone gets stuck in a very short bootloop; Oneplus symbol appears, dispppears, repeats. Not your normal bootloop (which usually looks like 2 white dots spinning around larger red dot and takes longer before it reboots).

Using this stock recovery (which shows Ver1.2 at the bottom)'s Wipe data/Format Data functions do not seem to help at all. Curiously, the language menu on this stock recovery seems to be very different to the stock recovery that came with my phone; The otrder of the languages is different, and it has an extra "online update" option that I've never seen before. Otherwise it's practically the same.

This stock recovery also always prompts some kind of error like saying something along the lines of 'Kindly reminder, please connect inernet to update'. With pretty broken english and a few typo's in the popup. The "update system" button in the recovery doesn't work, as it can't find or access any wifi.

I'm wondering if I'm getting close to a fix here. I can explain steps taken to get here incase it helps others, and if anyone has seen a "short bootloop" like this before and knows how to solve it, please let me know!

Bootloader is still locked fyi, flashing unlock command does not work.

I can still use mtkclient to manually flash in any partitions. Flashing seccfg doesn't seem to help.

Still looking for the stock recovery and stock vbmeta partitions from the OTA A12 update if anyone can help me with those. I don't know where to find the stock OTA A12 update that people keep talking about, as the update.zip from teh incremental A11 to A12 update doesn't seem to be quite right.

The stock recovery present inside the stock firmware .zip is the original one directly from the A.12 update.
The differences you've listed from the old recovery are legit, and present in the stock recovery yes.

Never seen those kind of short bootloops, but try to start fresh by reflashing the stock firmware *without* the eccfg partition + flash vbmeta from the OTA file. And see where that gets you.
 
  • Like
Reactions: kkdamion

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G

Try to flash just the vbmeta img from the OTA file and see if it works btw.
Hey cheers for the link. Ahhh that explains why all the sizes match. In the OTA 12 file, there are 3 files for vbmeta which are all 4KB in size;

vbmeta.img
vbmeta_system.img
vbmeta_vendor.img

I assume I'll just flash the first one named "vbmeta.img"? What are the other 2?
 
  • Like
Reactions: kkdamion

Raygen

Senior Member
Feb 21, 2014
91
32
Mantova
Hey cheers for the link. Ahhh that explains why all the sizes match. In the OTA 12 file, there are 3 files for vbmeta which are all 4KB in size;

vbmeta.img
vbmeta_system.img
vbmeta_vendor.img

I assume I'll just flash the first one named "vbmeta.img"? What are the other 2?

Yup just the first one is enough. The others two have never been fiddled with, so you already have the stock ones flashed.
 
  • Like
Reactions: kkdamion

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
Took a bit of fiddling around, I think I erased a few partitions by accident (due to following the github page's official instructions for how to unlock bootloader)

Flashing VBmeta from the OTA 12 update file in the mega link above, along with flashing the boot.img and recovery image from the google drive link in the OP should work for most people.

If you're like me and used the "python mtk e cache[and a few other partitions]" command as instructed by the mtkclient's github page's instructions for how to unlock bootloader (which doesn't work for the oneplus nord 2, so don't bother) I found I had to reflash those erased partitions from my nandroid backup as well. Then for some reason, it seems like vbmeta has to be the LAST partition you flash. As I flashed all sorts of other things, and the phone wouldnt boot, until i flashed vbmeta as the most recent one. No idea why that matters though.


Have to step away from my computer but currently the phone seems to boot up just fine, I'm going to leave it at the "welcome setup" screen for now and I'll report back if I see anything unusual.

If anyone else runs in the same issues and got to the fix, just know that if you wiped all partitions, or used someone else's persist.img partition, you'll need to manually flash in the persist image from your own backup or your fingerprint + camera won't work.
 
  • Like
Reactions: kkdamion and Raygen

martinwildi

Member
Dec 11, 2009
11
5
i also had some sort of a victory :).
my device was also stuck (Post#13)
only flashing seccfg.img with the pendrive didnt work, still stuck, and still locked bootloader
i had to flash the correct versions of boot.img, recovery.img and vbmeta.img via mtktools (in my case A.07)
now i can start the phone, it's on the welcome screen
and it seems to have locked bootloader right now.

i have to see later, what i'm doing now :)

@All: thanks for your help!
 

kkdamion

Senior Member
Jul 31, 2011
97
15
@Zombnombs so you managed to get to the "welcome setup" screen. nicely done, so there is some hope for me too.
but first i have to figure out what to do. im not a noob but ive never messed my phone up like this
 

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
@Zombnombs so you managed to get to the "welcome setup" screen. nicely done, so there is some hope for me too.
but first i have to figure out what to do. im not a noob but ive never messed my phone up like this
If you're in the state where your phone won't boot at all, and the bootloader is totally locked; Download the live dvd iso of mtkclient from https://drive.google.com/file/d/1OoGWFSZTqWqwfU35W6UAUwc20CJrK95t/view?usp=sharing and flash it onto a pendrive aka USB stick using Rufus https://rufus.ie/en/

Once you have that, you can use the pendrive/usb stick to boot into a linux operating system which has all the tools you need ready to go. (reboot a computer with the usb stick plugged in, and make sure your computer's boot priority order prioritises booting from USB sticks before your normal SSD/HDD). You should now be running a linux OS on your computer. The password is to log into the OS is "user" as you can find in the documentation at https://github.com/bkerler/mtkclient.

Then I personally used a 2nd USB stick, copied the boot.img and recovery.img from the google drive link in the OP of this thread, and grabbed the vbmeta.img from https://mega.nz/folder/rQhhHQpA#nNHvPlmzBXwPjmaFpuDa2Q, which is the stock A12 vbmeta image. The vbmeta from this thread's google link did not work for me, as it is not stock.

So you should now have 3 files: vbmeta.img, recovery.img, and boot.img. I used a 2nd usb stick for these, as the first USB stick with the linux operating system was being used as a boot drive, but you can use the method the others described as well to get files where you need them.

Any way you do it, get those 3 .img files into the /opt/mtkclient directory (there's a Home shortcut on the left side of the desktop, go to system files, opt, mtkclient and copy the 3 .img files here)

After that, just simply open the mtkclient shortcut on the desktop, and run the commands
"python mtk w boot boot.img"
"python mtk w recovery recovery.img"
"python mtk w vbmeta vbmeta.img"

These commands only work if your files are named exactly "boot.img", "vbmeta.img" and "recovery.img", feel free to rename them if they don't match.

Also be careful as if you're using an american keyboard, the z's and y's of the linux keyboard and swapped. (EU keyboard variant)

After running each command, plug in your phone, and simply hold down all 3 buttons: vol down, vol up, and power. I didn't find it necessary to unplug the phone or do anything fancy; Just hold all 3 buttons and your phone will eventually go into the necessary BROM mode, it might enter recovery, or fastboot mode first, but it will always end up in BROM mode if you just hold the 3 buttons which lets the mtkclient flash your needed partitions.

Make sure you also read the instructions in the OP of this thread, the instructions of how to flash seccfg in the locked bootloader should give you all the information you need that I glossed over.

After you flash all 3 partitions, I personally found that if the phone didn't boot, I just had to flash the stock vbmeta again, even though I'd already flashed it. No idea why.

Afterwards you should have a phone that boots to welcome screen. From there you can do whatever you want.
 
Last edited:
  • Love
Reactions: kkdamion

kkdamion

Senior Member
Jul 31, 2011
97
15
Thank you very much. really nice mate, yesterday is was trying to run a virtual linux system under windows with virtual box.but that didnt worked out like i hoped. but these steps you telling me are golden, its going to save me(and others) some time. als good idea to put the files on a separate usb.
 

kkdamion

Senior Member
Jul 31, 2011
97
15
i got a bootanimation now but its not booting fully and not looping.
flashed mtk boot, recovery, vbmeta and seccfg but still locked state,
and can i use the mtkclient to flash stock A.07 again. because fastboot is still giving locked state
 

Zombnombs

Member
Nov 17, 2021
47
12
OnePlus Nord 2 5G
i got a bootanimation now but its not booting fully and not looping.
flashed mtk boot, recovery, vbmeta and seccfg but still locked state,
and can i use the mtkclient to flash stock A.07 again. because fastboot is still giving locked state
Ah, the boot.img is definitely unique to each version. The ones provided in this OP of this thread are for phone version .A12

Not sure if the recovery or vbmeta is unique to different version, but the boot.img most definitely is. There are stock roms provided by xda community members for each version of the OS, such as here


Grab that stock boot image for A7 and flash that, then try flashing your same vbmeta again afterwards. If you're still bootlooping then you most likely need to find a recovery and/or vbmeta image for A07 as well.

If you read my post above, I also ran into a state where only the oneplus symbol was appearing, but it never progressed into teh 2 white dots rotating around hte red dot animation. Thats what i referred to as my "short bootloop". This animation was fixed by flashing vbmeta again. So that's most likely a symptom, based onmy experience, that you have the wrong vbmeta flashed. If you flashed the vbmeta from the mega link in my reply above (thats the one that worked for me on A12), then it most likely means you need a vbmeta image for A07.

Edit:
The locked state doesn't matter when you have mtkclient; Locked bootloader means the phone won't let you flash partitions normally, but the mtkclient uses a method to bypass that. The idea here is to flash partitions to get the phone to boot normally, and once you can boot the phone up normally, you can unlock the bootloader again by going to the settings app of the functional phone, clicking the version number 7 times > Developer options > allow oem unlocking and enable USB debugging. From there you can repeat steps to root the phone again like you would with a stock phone that you just unboxed.

i also had some sort of a victory :).
my device was also stuck (Post#13)
only flashing seccfg.img with the pendrive didnt work, still stuck, and still locked bootloader
i had to flash the correct versions of boot.img, recovery.img and vbmeta.img via mtktools (in my case A.07)
now i can start the phone, it's on the welcome screen
and it seems to have locked bootloader right now.

i have to see later, what i'm doing now :)

@All: thanks for your help!
@martinwildi also had the same issues in their post as well, and seems to have recovered so we know this method works for A07 too, but as martinwildi mentioned, you need the right versions of the image files.
 
Last edited:
  • Like
Reactions: kkdamion

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    Looking through the log a little more awake I noticed a couple of errors, after mistakenly assuming that the success message at the end meant that all has gone as expected.

    From my point of view, there's three kinds of errors:



    I don't know about these, but there is an old note in the PartitionsBackupper OP about the my_* partitions, so it might not be related to my particular phone.



    These are the four partitions inside that weird super partition, right?

    I made a mistake early on, after I rebooted my phone and it went into a boot loop. I hadn't installed an Update (at least not explicitly - the update to A.14 was available, but I never explicitly installed it, so I really don't know what the boot loop was caused by. (I could imagine that it was installed when I rebooted? Don't know if OnePlus would auto-install updates on reboot?)

    Anyway, when trying to fix it I mistakenly flashed system.img into the super partition, which was obviously not a very good idea. So I did some searching on that super partition and found that it contains those four above (odm, product, system, vendor), and that I had probably destroyed those partitions.

    What I did find was that I can't easily flash odm, product, system, vendor, I get Writing 'system' FAILED (remote: 'This partition doesn't exist'). I previously thought this could be fixed by flashing super, but that was wrong, even afterwards I got that error.



    This last one is probably just because no similarly named partition exists, which is fine because vbmeta_patched.img is an alternative to vbmeta.img, right?

    The above mostly happened in the fastboot mode with the weird tiny text - the one you get into when pressing Power+VolDown. Mostly because I think I occasionally went into the other fastboot mode (using fastboot reboot fastboot, the one with the English/Asian language choices, is that OOB Recovery?) because I didn't know there were differences between the two.

    After realising that I couldn't flash system even after super anymore, I went back to fastboot reboot recovery.

    In that one, I noticed that I can flash system just fine, however, running the PartitionsBackupper_v1.4.bat failed to update super this time. See the new PBlog.txt:
    Logging started...

    Main menu
    restore
    Restore started
    flashing audio_dsp...
    audio_dsp restored.
    flashing boot...
    boot restored.
    flashing boot_para...
    boot_para restored.
    flashing cache...
    cache restored.
    flashing cam_vpu1...
    cam_vpu1 restored.
    flashing cam_vpu2...
    cam_vpu2 restored.
    flashing cam_vpu3...
    cam_vpu3 restored.
    flashing cdt_engineering...
    cdt_engineering restored.
    flashing dpm_1...
    dpm_1 restored.
    flashing dpm_2...
    dpm_2 restored.
    flashing dtbo...
    dtbo restored.
    flashing expdb...
    expdb restored.
    flashing flashinfo...
    flashinfo restored.
    flashing frp...
    frp restored.
    flashing gz1...
    gz1 restored.
    flashing gz2...
    gz2 restored.
    flashing lk...
    lk restored.
    flashing lk2...
    lk2 restored.
    flashing logo...
    logo restored.
    flashing mcupm_1...
    mcupm_1 restored.
    flashing mcupm_2...
    mcupm_2 restored.
    flashing md1img...
    md1img restored.
    flashing metadata...
    Error with fastboot command
    flashing misc...
    misc restored.
    flashing my_carrier...
    my_carrier restored.
    flashing my_company...
    my_company restored.
    flashing my_engineering...
    my_engineering restored.
    flashing my_heytap...
    my_heytap restored.
    flashing my_manifest...
    my_manifest restored.
    flashing my_preload...
    my_preload restored.
    flashing my_product...
    my_product restored.
    flashing my_region...
    my_region restored.
    flashing my_stock...
    my_stock restored.
    flashing ocdt...
    ocdt restored.
    flashing odm...
    odm restored.
    flashing oplusreserve1...
    oplusreserve1 restored.
    flashing oplusreserve2...
    oplusreserve2 restored.
    flashing oplusreserve3...
    oplusreserve3 restored.
    flashing oplusreserve5...
    oplusreserve5 restored.
    flashing oplusreserve6...
    oplusreserve6 restored.
    flashing oplus_custom...
    oplus_custom restored.
    flashing otp...
    otp restored.
    flashing para...
    para restored.
    flashing param...
    param restored.
    flashing pi_img...
    pi_img restored.
    flashing product...
    product restored.
    flashing recovery...
    recovery restored.
    flashing scp1...
    scp1 restored.
    flashing scp2...
    scp2 restored.
    flashing sec1...
    sec1 restored.
    flashing spmfw...
    spmfw restored.
    flashing sspm_1...
    sspm_1 restored.
    flashing sspm_2...
    sspm_2 restored.
    flashing super...
    Error with fastboot command
    flashing system...
    system restored.
    flashing tee1...
    tee1 restored.
    flashing tee2...
    tee2 restored.
    flashing vbmeta_patched...
    Error with fastboot command
    flashing vbmeta_system...
    vbmeta_system restored.
    flashing vbmeta_vendor...
    vbmeta_vendor restored.
    flashing vendor...
    vendor restored.
    flashing vendor_boot...
    vendor_boot restored.
    vbmeta restored.
    Restore completed
    rebooting to recovery
    exit 1

    Still, that worked, I just got greeted by a Hello! screen. Fingerprint enrols fine, Bluetooth finds devices, I'm guessing because I was lucky enough not to mess with the partition that breaks those.

    So I guess the takeaway is: Don't try to flash partitions in the tiny text fastboot mode (even if it seems to work, identifying the devices with fastboot devices and flashing some partitions without error), but always go to the English/Asian language choice screen first using fastboot reboot fastboot, where some partitions behave differently.
    Glad that worked!

    I've noticed the logs are not really useful with these level of details.. So I've updated a new version of the script with better logs for future cases.
    And about the difference between flashing in bootloader mode (with the tiny white text) vs fastboot mode (inside the recovery), I've noticed the partitions that cause the issue and also included this fix in the updated version of the script.

    hi Guys,

    can someone provide a stock EU a.13 boot, recovery and vmbeta to make unbick porcedure with locked bootloader?
    I'm still on A.12 sorry, that's why the post is not updated. I'm completely out of free time in this period.
    You could try to fully flash the A.12 and then update back to A.13 though.
    1
    Here is my backup made with Raygen's partitionsbackupper tool :
    A.16 EU Stock OnePlus Nord 2 5G Pac-Man Edition
    You can surely restore with Raygen tool.
    Then send your twrp backup file to your phone >flash recovery twrp > Boot to recovery > restore > and only check persist and persist image from your nandroid backup if you have issue with camera and fingerprint
    1
    Is this a fresh backup? (no personal settings) thx
    Raygen said that his tool doesn't keep personal data. Be sure you have your nandroid backup on your computer and keep it in a safe place cause persist and persist image are linked to your phone.
  • 8
    Code:
    /*
     * Your warranty is... still valid!
     * I am not responsible for bricked devices, dead SD cards,
     * thermonuclear war, or you getting fired because the alarm app failed.
     * Please do some research before asking or use anything on this thread.
     */

    OxygenOS 11.3 EU Full Stock Firmwares for the OnePlus Nord 2 DN2103
    A.12 - A.15 - A.16

    Specifics:

    • This rom will not overwrite your userdata partition.
    • This rom will not overwrite your IMEI, sensors calibration data, or bootloader unlock status.
      Since these partitions are not included: seccfg, nvcfg, nvdata, nvram, persist, proinfo, protect1, protect2.
    • The vbmeta partition is not stock.

    Requirements:


    Instructions:

    1. If your phone is still not completely fcked up, and even if it is, do a full backup with PartitionsBackupper.bat first + a Nandroid backup + Internal storage backup. (better safe than RMA it)
    2. Download the .zip and the latest version of PartitionsBackupper.
    3. Extract and put all files in the same directory of adb & fastboot (usually the "platform-tools" folder).
    4. Run PartitionsBackupper.bat, choosing the restore option, to flash all partitions with fastboot.
    5. I reccomend to do a full data format with the stock recovery before going back messing around. It usually wipes better than TWRP.

    1. Download and install the Re LiveDVD iso of mtkclient and flash it on a pendrive with Rufus.
    2. Download and extract the attached seccfg.img unlocked partition.
    3. Download and extract the boot.img, recovery.img, and vbmeta.img from the zip of the stock firmware.
    4. Create a new folder named "img" in the pendrive you just flashed with Rufus, and paste the 4 images there.
    5. Start the mtkclient live usb. The login credentials are "user" for both name and password.
    6. Note! the keyboard is set to german by default in the liveusb. To change it, as soon as you boot up in the desktop, click on the "DE" blue text up on the right.
    7. Copy the whole /img directory into the /opt/mtkclient directory.
    8. Disconnect the phone from the pc, and start the MTK script on the desktop of the live usb.
    9. Backup your seccfg partition first! With the command python mtk r seccfg seccfg_backup.img
    10. As soon as you press Enter, the script will start searching for an attached phone in BROM mode.
      To reboot your phone in BROM mode:
      1. Turn off your phone.
      2. As soon as it turns off, press and hold all 3 buttons (Vol+, Vol-, and Power) and connect the usb cable.
      3. The screen of the phone should remain completely black and the script should find your phone and start the backup. Release the buttons.
    11. Now, disconnect the phone, and close and reopen mtkclient.
    12. Do also a backup of your boot partition with the command python mtk r boot boot_backup.img, repeating the steps 10 and 11.
    13. You can find your backed up partitions in the /opt/mtkclient directory. Copy them to the pendrive or they will be wiped as soon as you turn off the pc!
    14. Now write all 4 partition images with the command python mtk wl img, by repeating the steps 10 and 11.
    15. If you're stuck in a bootloop after all of this, some users have reported that flashing vbmeta a second time fixed it.
    16. You should now have an unlocked bootloader

    This procedure has been successfully tested by an external user.
    1. Follow the instructions in the "locked bootloader" procedure for how to install and run mtkclient.
    2. Download and extract the attached preloader_lu1.bin image, and the boot, recovery, vbmeta, and super images from the stock firmware .zip file, and paste them in the /opt/mtkclient directory.
    3. Run the command python mtk r preloader preloader_lu1_stock.bin --parttype=lu1 to backup your existing preloader partition first!
    4. Also backup your boot, vbmeta, and super partitions as described in the "locked bootloader" procedure.
    5. Run the command python mtk w preloader preloader_lu1.bin --parttype=lu1 to flash the preloader partition.
    6. Also run the commands as described in the "locked bootloader" procedure to flash the boot, recovery, vbmeta, and super images.
    7. If you're stuck in a bootloop after all of this, some users have reported that flashing vbmeta a second time fixed it.
    8. You should now have a working fastboot connnection

    Thanks to Zombnombs, TheWing, and SeBright for the help!




    DOWNLOAD
    AndroidFileHost
    3
    i also had some sort of a victory :).
    my device was also stuck (Post#13)
    only flashing seccfg.img with the pendrive didnt work, still stuck, and still locked bootloader
    i had to flash the correct versions of boot.img, recovery.img and vbmeta.img via mtktools (in my case A.07)
    now i can start the phone, it's on the welcome screen
    and it seems to have locked bootloader right now.

    i have to see later, what i'm doing now :)

    @All: thanks for your help!
    2
    So I got successful to flash your given seccfg.img.
    Then I booted in. Fastboot mode so tried try unlock bootloader commands to. Check and it's saying not allowed.
    Means its still locked i think
    i could also flash seccfg.img. But also still locked bootloader.
    will try again later this week.

    Here's a little more detailed instruction (@Raygen you can take this to your instructions, if you want):

    Download and install mtkclient (I reccomend to download the Re LiveDVD iso and flash it on a pendrive with Rufus).
    Go to https://github.com/bkerler/mtkclient, scroll down to "Use Re LiveDVD" (https://github.com/bkerler/mtkclient#use-re-livedvd-everything-ready-to-go-based-on-ubuntu) > Download
    Download rufus from http://rufus.ie/en/
    Insert a pendrive
    Start Rufus, select your pendrive (1), click "select" (2), select "re_livedvdV3.iso", click "START" (3)
    Extract just the seccfg.img partition from the zip.
    I had to rename the File after Download from seccfg_unlocked_A12.tif to seccfg.img
    Place the seccfg.img in the same folder with the mtk executable (in the Re LiveDVD, it's the /opt/mtkclient directory)
    Insert pendrive in windows-pc, open it, make a new directory "nord2" and copy the img-File to this folder
    Disconnect the phone from the pc, and start mtkclient (MTK on the desktop of the Re LiveDVD).
    Shutdown your PC, plugin pendrive, start PC. It should start from pendrive to MTK
    Enter Password "user" (without "")
    Open "Home" from Desktop, you'll need that later
    Backup your seccfg partition first! With the command python mtk r seccfg seccfg.bin
    As soon as you press Enter, the script will start searching for an attached phone in BROM mode.
    To reboot your phone in BROM mode:
    Turn off your phone.
    As soon as it turns off, press and hold all 3 buttons (Vol+, Vol-, and Power) and connect the usb cable.
    The script should find your phone and start the backup. Release the buttons.
    You'll find the file in the explorer > file system > opt > mtkclient (rename it to something like "seccft-backup.img")
    Copy the file from earlier from file system > cdrom > nord2, to the above directory
    Now, disconnect the phone, and close and reopen mtkclient.
    Write the seccfg.img partition with the command python mtk w seccfg seccfg.img, press Enter, and reconnect the phone as explained before.
    You should now have an unlocked bootloader!
    2
    I'll add a log generator in the next version of the tool so it can be seen what went wrong.
    So far the best I can advise is to format data with the stock recovery before trying a second time (backup your data before that ofc)



    Alright we're at 3 users to whom the bootloader got locked.
    I'll reupload the .zip with the seccfg.img partition removed to avoid further harm for now, looks like it's another trouble making partition.
    Strange that the firmware in @sakarya1980 's thread does include it without issues. I've tagged him to see if he can help us about this.



    And we have 2 users to whom the bootloader unlock method doesn't work. I'll try to look into that, but for now it's the only method I'm aware of.


    I see you've tried to flash the seccfg with a .tiff extension. Why's that?
    I also tried the bootloader unlock method (after the broken boot/recovery message) and got the same result, fastboot saying it was still locked. After i messed with mtkclient flashing some images again or trying the proper mtkclient unlock method (from their github page) but no luck.

    I managed to fix it today flashing with mtkclient the stock boot, recovery and vbmeta images from latest A12 ota, getting into the recovery and wiping all data, and after that the phone was finally working, and I could unlock the bootloader again and flash magisk and so.
    2
    Took a bit of fiddling around, I think I erased a few partitions by accident (due to following the github page's official instructions for how to unlock bootloader)

    Flashing VBmeta from the OTA 12 update file in the mega link above, along with flashing the boot.img and recovery image from the google drive link in the OP should work for most people.

    If you're like me and used the "python mtk e cache[and a few other partitions]" command as instructed by the mtkclient's github page's instructions for how to unlock bootloader (which doesn't work for the oneplus nord 2, so don't bother) I found I had to reflash those erased partitions from my nandroid backup as well. Then for some reason, it seems like vbmeta has to be the LAST partition you flash. As I flashed all sorts of other things, and the phone wouldnt boot, until i flashed vbmeta as the most recent one. No idea why that matters though.


    Have to step away from my computer but currently the phone seems to boot up just fine, I'm going to leave it at the "welcome setup" screen for now and I'll report back if I see anything unusual.

    If anyone else runs in the same issues and got to the fix, just know that if you wiped all partitions, or used someone else's persist.img partition, you'll need to manually flash in the persist image from your own backup or your fingerprint + camera won't work.