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

Question Un-bricking my Nord N200

Search This thread

sheesh42

New member
Sep 14, 2021
3
0
what exactly is messed up on your phone. i have metro ver rooted and can backup any partition img you need to flash from my stock rooted n200. do you need stock boot or recovery? if not then what do you need?

an is fastboot able to detect your phone?
if you can send those to me that is the version i need
 

edale1

Senior Member
Sep 5, 2016
91
52
ah my bootloader is still locked and its bricked
I could be wrong, but I believe if your bootloader is still locked, your only option is the MSMDownload Tools.

We don't have those for the Metro variant yet. You could try contacting OnePlus customer support and requesting a remote session to repair your phone, that will get you a copy of the MSMDownload tools (please share them) for your variant.
 
  • Like
Reactions: Ethanvio

lzgmc

Senior Member
I could be wrong, but I believe if your bootloader is still locked, your only option is the MSMDownload Tools.

We don't have those for the Metro variant yet. You could try contacting OnePlus customer support and requesting a remote session to repair your phone, that will get you a copy of the MSMDownload tools (please share them) for your variant.
I believe that the Metro and T-Mobile variants are actually the exact same phone, since they both share the same codename. I would say that users with Metro devices should try flashing the T-Mobile MSM tools if they need to unbrick their phone. If it works, the phone should still be Metro branded anyway.

In addition, while looking around through the MSM files, I found a string of code that suggests that the T-Mobile, Metro, and Assurance (Sprint?) branded phones all use the same software:
XML:
    <SupportMultiTarget>
        <Target ID="108" Desc="ASSURANCE" />
        <Target ID="106" Desc="METRO" />
        <Target ID="101" Desc="TMO" />
    </SupportMultiTarget>
 
  • Like
Reactions: Dimitrimem

sheesh42

New member
Sep 14, 2021
3
0
I believe that the Metro and T-Mobile variants are actually the exact same phone, since they both share the same codename. I would say that users with Metro devices should try flashing the T-Mobile MSM tools if they need to unbrick their phone. If it works, the phone should still be Metro branded anyway.

In addition, while looking around through the MSM files, I found a string of code that suggests that the T-Mobile, Metro, and Assurance (Sprint?) branded phones all use the same software:
XML:
    <SupportMultiTarget>
        <Target ID="108" Desc="ASSURANCE" />
        <Target ID="106" Desc="METRO" />
        <Target ID="101" Desc="TMO" />
    </SupportMultiTarget>

i will try this tonight andd see
 

bouyakasha

Senior Member
Jan 23, 2008
68
11
Praying the unlocked variant MSM surfaces soon... I have requested a remote session last week and they denied me, forced me to send it in. I didn't do that, requested another remote session today. We will see if they finally allow it.
 
  • Like
Reactions: Ethanvio

Ethanvio

Member
Aug 18, 2021
34
4
Praying the unlocked variant MSM surfaces soon... I have requested a remote session last week and they denied me, forced me to send it in. I didn't do that, requested another remote session today. We will see if they finally allow it.
I think the tech support in India is more interested in collecting positive reviews than fixing issues..
I'm sitting with a phone that I only used one day .. hopping the tool will make its way on this forum .. if not might sound like I wasted $270... anyways this is the last oneplus I'm buying
 

oCAPTCHA

Member
Sep 22, 2021
7
5
My OnePlus Nord N200 unlocked variant self soft-bricked, but I fixed it, here's the story:

I updated the software using the system update OTA, allowed it to reboot, and it said the update was done.
(However, it was not, as the second slot merge update is done silently in the background, as part of the seamless A/B model.)
I then allowed oem unlocking, rebooted the phone, and used fastboot to unlock the bootloader.
The phone automatically wiped some partitions as part of the unlock, but was then stuck in fastboot or fastbootd mode upon reboot(s).

I contacted OnePlus, but they were not willing to remotely fix my device (release the MSM tool) and instead wanted me to ship the phone to them.

We have the full OTA download available from OnePlus:


and we can use payload_dumper python scripts by Gregory Montoir to extract the individual .img files from the OTA.



but the important ones (system, vendor, etc) are not flashable in fastboot (only) mode due to the use of dynamic partitions (super.img). (see my edit at the bottom)

Forcing the merge to complete did not work, switching slots did not work, nor did reflashing boot.img fix it.
It turns out bundling the seamless A/B partitions together into a single dynamic partition ruins the redundancy of the seamless A/B model!

Finally, I took the idea from PopCaps1996:


and used another Nord N200 phone which was working, to download and run Partitions backup & restore.


This app has the ability to extract the super.img in its entirety from a working phone, and fastboot is able to flash this image directly into the dynamic partitions. (make sure you update to the latest fastboot).

take the super.tar.gz from Partitions backup and untar/ungzip it to the .img.
Copy it to the computer and fastboot flash it.

fastboot flash super super.img.

That fixed it for me!

So for those who have working fastboot, an unlocked bootloader, and can get the super.img (3.2GB tar.gzip) you can recover your phone like I did!

Edit:
I completed my recovery in fastboot mode only, but there is the ability to reboot into fastbootd mode (recovery mode with fastbootd), which is able to handle the dynamic partitions, and may work from the OTA .img files directly, avoiding the need for an extracted super.img file.
 
Last edited:

Michaelburrola

New member
Oct 13, 2021
1
0
My OnePlus Nord N200 unlocked variant self soft-bricked, but I fixed it, here's the story:

I updated the software using the system update OTA, allowed it to reboot, and it
............

Hi "oCAPTCHA" I also have The Global Unlocked N200 and I am experiencing the same exact issue. I been up for 3 Nights surfacing resolutions but I fastbootd doesn't allow flashing the system ( No Partition error ).... I tried Just about everything but it seems you solved the issue. The Problem is I don't have another N200 nor can I get one. Is there anyway you can help me out with that partition and out of generosity I will paypal you a Donation ?

Thanks Alot.
 

oCAPTCHA

Member
Sep 22, 2021
7
5
MichaelBurrola,

I am hestiant to upload my partitions for legal liability reasons.

However, I suspect I may be able to help you another way, by using fastbootd commands and the OTA.

Are you sure you are in fastbootd mode, and are using an up to date fastboot? (older versions do not support dynamic partition commands!)

Here is a good source for fastboot.
"Android SDK Platform Tools"

Fastboot tutorial

The dynamic partition system was designed to save space by allowing adjustable partition sizes.
In order to implement it, Fastboot was broken into two pieces: Fastboot and Fastbootd.

Fastboot is the initial loader which handles only non-dynamic partitions.
It is a black screen with red and white text which displays facts about your device, and has controls "press volume key to select...".

Fastbootd is the second stage loader, which can handle the dynamic partitions.
it is reachable by the very poorly named command
fastboot reboot fastboot
(which should have been named fastboot reboot fastbootd).
It reboots to a special version of the Recovery mode, running Fastbootd.
It is a black screen with the one plus logo and the word "fastbootd" at the top, and some touch menus.

Recovery lists "reboot to fastboot", which goes to Fastboot mode.
Recovery also lists "reboot to recovery" which goes back to Recovery without Fastbootd.
Note that the text "fastbootd" is missing from the top of the screen when in recovery only mode.


Boot the phone into fastbootd mode by:
booting into recovery mode, by holding power and volume down during boot, then
rebooting into fastboot (only) mode, using touch menus: advanced, reboot into fastboot, then
connecting usb-c to a computer and rebooting into fastbootd using the poorly named command:
fastboot reboot fastboot.

Next run
fastboot getvar all
check which slot is active (you could attempt to switch slots, but that didn't fix it for me)
and check your partition list against mine, particularly looking for your slot's set of super's sub-partitions
(assuming slot b) system_b, system_ext_b, odm_b, product_b, vendor_b


Partition list from OnePlus Nord N200 unlocked version 11.0.2.0.DE17AA in fastbootd mode

(bootloader) partition-size:abl_a:0x800000
(bootloader) partition-size:abl_b:0x800000
(bootloader) partition-size:abl_log:0xFD0000
(bootloader) partition-size:ALIGN_TO_128K_1:0x1A000
(bootloader) partition-size:ALIGN_TO_128K_2:0x1A000
(bootloader) partition-size:android_log:0xFD0000
(bootloader) partition-size:apdp:0x40000
(bootloader) partition-size:bluetooth_a:0x100000
(bootloader) partition-size:bluetooth_b:0x100000
(bootloader) partition-size:boot_a:0x6000000
(bootloader) partition-size:boot_b:0x6000000
(bootloader) partition-size:carrier:0x4000000
(bootloader) partition-size:catecontentfv:0x100000
(bootloader) partition-size:catefv:0x80000
(bootloader) partition-size:cateloader:0x200000
(bootloader) partition-size:cdt:0x20000
(bootloader) partition-size:core_nhlos_a:0xAA00000
(bootloader) partition-size:core_nhlos_b:0xAA00000
(bootloader) partition-size:ddr:0x100000
(bootloader) partition-size:devcfg_a:0x20000
(bootloader) partition-size:devcfg_b:0x20000
(bootloader) partition-size:devinfo:0x1000
(bootloader) partition-size:dinfo:0x4000
(bootloader) partition-size:dsp_a:0x2000000
(bootloader) partition-size:dsp_b:0x2000000
(bootloader) partition-size:dtbo_a:0x1800000
(bootloader) partition-size:dtbo_b:0x1800000
(bootloader) partition-size:engineering_cdt_a:0x100000
(bootloader) partition-size:engineering_cdt_b:0x100000
(bootloader) partition-size:featenabler_a:0x20000
(bootloader) partition-size:featenabler_b:0x20000
(bootloader) partition-size:frp:0x80000
(bootloader) partition-size:fsc:0x20000
(bootloader) partition-size:fsg:0x300000
(bootloader) partition-size:hyp_a:0x80000
(bootloader) partition-size:hyp_b:0x80000
(bootloader) partition-size:imagefv_a:0x200000
(bootloader) partition-size:imagefv_b:0x200000
(bootloader) partition-size:kernel_log:0xFD0000
(bootloader) partition-size:keymaster_a:0x80000
(bootloader) partition-size:keymaster_b:0x80000
(bootloader) partition-size:keystore:0x80000
(bootloader) partition-size:logdump:0x4000000
(bootloader) partition-size:logfs:0x800000
(bootloader) partition-size:logo_a:0x1000000
(bootloader) partition-size:logo_b:0x1000000
(bootloader) partition-size:metadata:0x1000000
(bootloader) partition-size:misc:0x100000
(bootloader) partition-size:modem_a:0xDC00000
(bootloader) partition-size:modem_b:0xDC00000
(bootloader) partition-size:modemst1:0x300000
(bootloader) partition-size:modemst2:0x300000
(bootloader) partition-size:multiimgoem_a:0x8000
(bootloader) partition-size:multiimgoem_b:0x8000
(bootloader) partition-size ocdt:0x20000
(bootloader) partition-size odm_b:0x37EB000
(bootloader) partition-size oplusdycnvbk:0x1400000
(bootloader) partition-size oplusreserve1:0x800000
(bootloader) partition-size oplusreserve2:0x8000000
(bootloader) partition-size oplusreserve3:0x4000000
(bootloader) partition-size oplusreserve4:0x2000000
(bootloader) partition-size oplusreserve5:0x4000000
(bootloader) partition-size oplusstanvbk_a:0x1400000
(bootloader) partition-size oplusstanvbk_b:0x1400000
(bootloader) partition-size param:0x100000
(bootloader) partition-size persist_bkp:0x2000000
(bootloader) partition-size persist:0x2000000
(bootloader) partition-size product_b:0x73388000
(bootloader) partition-size qupfw_a:0x10000
(bootloader) partition-size qupfw_b:0x10000
(bootloader) partition-size:rawdump:0x8000000
(bootloader) partition-size:rpm_a:0x80000
(bootloader) partition-size:rpm_b:0x80000
(bootloader) partition-size:sdb:0x800000
(bootloader) partition-size:sdc:0x800000
(bootloader) partition-size:sdd:0x800000
(bootloader) partition-size:sde:0x66C00000
(bootloader) partition-size:sdf:0x1F400000
(bootloader) partition-size:secdata:0x7000
(bootloader) partition-size:ssd:0x2000
(bootloader) partition-size:storsec:0x20000
(bootloader) partition-size:super:0x180000000
(bootloader) partition-size:system_b-cow:0x259C8000
(bootloader) partition-size:system_b:0x59637000
(bootloader) partition-size:system_ext_b:0x4B5F5000
(bootloader) partition-size:tz_a:0x400000
(bootloader) partition-size:tz_b:0x400000
(bootloader) partition-size:uefisecapp_a:0x200000
(bootloader) partition-size:uefisecapp_b:0x200000
(bootloader) partition-size:uefivarstore:0x80000
(bootloader) partition-size:userdata:0xCAC5D3000
(bootloader) partition-size:vbmeta_a:0x10000
(bootloader) partition-size:vbmeta_b:0x10000
(bootloader) partition-size:vbmeta_system_a:0x10000
(bootloader) partition-size:vbmeta_system_b:0x10000
(bootloader) partition-size:vendor_b:0x3ED6C000
(bootloader) partition-size:vendor_boot_a:0x6000000
(bootloader) partition-size:vendor_boot_b:0x6000000
(bootloader) partition-size:vm-data:0x400000
(bootloader) partition-size:vm-keystore:0x20000
(bootloader) partition-size:vm-system_a:0x8000000
(bootloader) partition-size:vm-system_b:0x8000000
(bootloader) partition-size:xbl_a:0x600000
(bootloader) partition-size:xbl_b:0x600000
(bootloader) partition-size:xbl_config_a:0x80000
(bootloader) partition-size:xbl_config_b:0x80000


-cow (Copy On Write) partitions are unneeded and usually need to be deleted for space.
fastboot delete-logical-partition system_b-cow

Create any missing sub-partitions manually

fastboot create-logical-partition system_b 0x10000
fastboot create-logical-partition system_ext_b 0x10000
fastboot create-logical-partition odm_b 0x10000
fastboot create-logical-partition product_b 0x10000
fastboot create-logical-partition vendor_b 0x10000
(I don't believe the size must be correct, as they will resize when you flash them)

And then flash the partitions using the extracted OTA files from OnePlus
(system_b, system_ext_b, odm_b, product_b, vendor_b)

fastboot flash system_b system.img
fastboot flash system_ext_b system_ext.img
fastboot flash odm_b odm.img
fastboot flash product_b product.img
fastboot flash vendor_b vendor.img

You probably don't need to worry about boot_b since you have fastbootd working.
Also vbmeta and vbmeta_system (verified boot metadata), since verified boot turned off when your bootloader unlocked.
 
Last edited:

Jaybone073

Senior Member
Feb 22, 2013
94
12
Vidalia, GA.
MichaelBurrola,

I am hestiant to upload my partitions for legal liability reasons.

However, I suspect I may be able to help you another way, by using fastbootd commands and the OTA.

Are you sure you are in fastbootd mode, and are using an up to date fastboot? (older versions do not support dynamic partition commands!)

Here is a good source for fastboot.
"Android SDK Platform Tools"

Fastboot tutorial

The dynamic partition system was designed to save space by allowing adjustable partition sizes.
In order to implement it, Fastboot was broken into two pieces: Fastboot and Fastbootd.

Fastboot is the initial loader which handles only non-dynamic partitions.
It is a black screen with red and white text which displays facts about your device, and has controls "press volume key to select...".

Fastbootd is the second stage loader, which can handle the dynamic partitions.
it is reachable by the very poorly named command
fastboot reboot fastboot
(which should have been named fastboot reboot fastbootd).
It reboots to a special version of the Recovery mode, running Fastbootd.
It is a black screen with the one plus logo and the word "fastbootd" at the top, and some touch menus.

Recovery lists "reboot to fastboot", which goes to Fastboot mode.
Recovery also lists "reboot to recovery" which goes back to Recovery without Fastbootd.
Note that the text "fastbootd" is missing from the top of the screen when in recovery only mode.


Boot the phone into fastbootd mode by:
booting into recovery mode, by holding power and volume down during boot, then
rebooting into fastboot (only) mode, using touch menus: advanced, reboot into fastboot, then
connecting usb-c to a computer and rebooting into fastbootd using the poorly named command:
fastboot reboot fastboot.

Next run
fastboot getvar all
check which slot is active (you could attempt to switch slots, but that didn't fix it for me)
and check your partition list against mine, particularly looking for your slot's set of super's sub-partitions
(assuming slot b) system_b, system_ext_b, odm_b, product_b, vendor_b


Partition list from OnePlus Nord N200 unlocked version 11.0.2.0.DE17AA in fastbootd mode

(bootloader) partition-size:abl_a:0x800000
(bootloader) partition-size:abl_b:0x800000
(bootloader) partition-size:abl_log:0xFD0000
(bootloader) partition-size:ALIGN_TO_128K_1:0x1A000
(bootloader) partition-size:ALIGN_TO_128K_2:0x1A000
(bootloader) partition-size:android_log:0xFD0000
(bootloader) partition-size:apdp:0x40000
(bootloader) partition-size:bluetooth_a:0x100000
(bootloader) partition-size:bluetooth_b:0x100000
(bootloader) partition-size:boot_a:0x6000000
(bootloader) partition-size:boot_b:0x6000000
(bootloader) partition-size:carrier:0x4000000
(bootloader) partition-size:catecontentfv:0x100000
(bootloader) partition-size:catefv:0x80000
(bootloader) partition-size:cateloader:0x200000
(bootloader) partition-size:cdt:0x20000
(bootloader) partition-size:core_nhlos_a:0xAA00000
(bootloader) partition-size:core_nhlos_b:0xAA00000
(bootloader) partition-size:ddr:0x100000
(bootloader) partition-size:devcfg_a:0x20000
(bootloader) partition-size:devcfg_b:0x20000
(bootloader) partition-size:devinfo:0x1000
(bootloader) partition-size:dinfo:0x4000
(bootloader) partition-size:dsp_a:0x2000000
(bootloader) partition-size:dsp_b:0x2000000
(bootloader) partition-size:dtbo_a:0x1800000
(bootloader) partition-size:dtbo_b:0x1800000
(bootloader) partition-size:engineering_cdt_a:0x100000
(bootloader) partition-size:engineering_cdt_b:0x100000
(bootloader) partition-size:featenabler_a:0x20000
(bootloader) partition-size:featenabler_b:0x20000
(bootloader) partition-size:frp:0x80000
(bootloader) partition-size:fsc:0x20000
(bootloader) partition-size:fsg:0x300000
(bootloader) partition-size:hyp_a:0x80000
(bootloader) partition-size:hyp_b:0x80000
(bootloader) partition-size:imagefv_a:0x200000
(bootloader) partition-size:imagefv_b:0x200000
(bootloader) partition-size:kernel_log:0xFD0000
(bootloader) partition-size:keymaster_a:0x80000
(bootloader) partition-size:keymaster_b:0x80000
(bootloader) partition-size:keystore:0x80000
(bootloader) partition-size:logdump:0x4000000
(bootloader) partition-size:logfs:0x800000
(bootloader) partition-size:logo_a:0x1000000
(bootloader) partition-size:logo_b:0x1000000
(bootloader) partition-size:metadata:0x1000000
(bootloader) partition-size:misc:0x100000
(bootloader) partition-size:modem_a:0xDC00000
(bootloader) partition-size:modem_b:0xDC00000
(bootloader) partition-size:modemst1:0x300000
(bootloader) partition-size:modemst2:0x300000
(bootloader) partition-size:multiimgoem_a:0x8000
(bootloader) partition-size:multiimgoem_b:0x8000
(bootloader) partition-size ocdt:0x20000
(bootloader) partition-size odm_b:0x37EB000
(bootloader) partition-size oplusdycnvbk:0x1400000
(bootloader) partition-size oplusreserve1:0x800000
(bootloader) partition-size oplusreserve2:0x8000000
(bootloader) partition-size oplusreserve3:0x4000000
(bootloader) partition-size oplusreserve4:0x2000000
(bootloader) partition-size oplusreserve5:0x4000000
(bootloader) partition-size oplusstanvbk_a:0x1400000
(bootloader) partition-size oplusstanvbk_b:0x1400000
(bootloader) partition-size param:0x100000
(bootloader) partition-size persist_bkp:0x2000000
(bootloader) partition-size persist:0x2000000
(bootloader) partition-size product_b:0x73388000
(bootloader) partition-size qupfw_a:0x10000
(bootloader) partition-size qupfw_b:0x10000
(bootloader) partition-size:rawdump:0x8000000
(bootloader) partition-size:rpm_a:0x80000
(bootloader) partition-size:rpm_b:0x80000
(bootloader) partition-size:sdb:0x800000
(bootloader) partition-size:sdc:0x800000
(bootloader) partition-size:sdd:0x800000
(bootloader) partition-size:sde:0x66C00000
(bootloader) partition-size:sdf:0x1F400000
(bootloader) partition-size:secdata:0x7000
(bootloader) partition-size:ssd:0x2000
(bootloader) partition-size:storsec:0x20000
(bootloader) partition-size:super:0x180000000
(bootloader) partition-size:system_b-cow:0x259C8000
(bootloader) partition-size:system_b:0x59637000
(bootloader) partition-size:system_ext_b:0x4B5F5000
(bootloader) partition-size:tz_a:0x400000
(bootloader) partition-size:tz_b:0x400000
(bootloader) partition-size:uefisecapp_a:0x200000
(bootloader) partition-size:uefisecapp_b:0x200000
(bootloader) partition-size:uefivarstore:0x80000
(bootloader) partition-size:userdata:0xCAC5D3000
(bootloader) partition-size:vbmeta_a:0x10000
(bootloader) partition-size:vbmeta_b:0x10000
(bootloader) partition-size:vbmeta_system_a:0x10000
(bootloader) partition-size:vbmeta_system_b:0x10000
(bootloader) partition-size:vendor_b:0x3ED6C000
(bootloader) partition-size:vendor_boot_a:0x6000000
(bootloader) partition-size:vendor_boot_b:0x6000000
(bootloader) partition-size:vm-data:0x400000
(bootloader) partition-size:vm-keystore:0x20000
(bootloader) partition-size:vm-system_a:0x8000000
(bootloader) partition-size:vm-system_b:0x8000000
(bootloader) partition-size:xbl_a:0x600000
(bootloader) partition-size:xbl_b:0x600000
(bootloader) partition-size:xbl_config_a:0x80000
(bootloader) partition-size:xbl_config_b:0x80000


-cow (Copy On Write) partitions are unneeded and usually need to be deleted for space.
fastboot delete-logical-partition system_b-cow

Create any missing sub-partitions manually

fastboot create-logical-partition system_b 0x10000
fastboot create-logical-partition system_ext_b 0x10000
fastboot create-logical-partition odm_b 0x10000
fastboot create-logical-partition product_b 0x10000
fastboot create-logical-partition vendor_b 0x10000
(I don't believe the size must be correct, as they will resize when you flash them)

And then flash the partitions using the extracted OTA files from OnePlus
(system_b, system_ext_b, odm_b, product_b, vendor_b)

fastboot flash system_b system.img
fastboot flash system_ext_b system_ext.img
fastboot flash odm_b odm.img
fastboot flash product_b product.img
fastboot flash vendor_b vendor.img

You probably don't need to worry about boot_b since you have fastbootd working.
Also vbmeta and vbmeta_system (verified boot metadata), since verified boot turned off when your bootloader unlocked.
I have a soft bricked device from an update issue as well. After thoroughly reading your post I have discovered I have several missing partitions. Mainly every single one necessary for the successful flashing of system, product, vendor, odm, and system ext.

When attempting to create the partitions in fastbootd I get the return of "expected argument" without being able to create the partitions to flash the images to super rendering the device stuck in fastboot.
 

Top Liked Posts