While testing custom ROMs on our Xiaomi Redmi Note 8 we ran into an issue. Our device was stuck in a boot loop so we decided to write an article on how to fix the issue if your device gives you a message that “the system has been destroyed boot loop error”.
This issue is common on most or many Xiaomi MIUI devices. We get that error message anytime we try to boot our device both into the android operating system and as well as if we try to boot into recovery mode. We’re getting this system has been destroyed boot loop message on both attempts.
So in order to fix this naturally we’re going to need an unlocked bootloader. But you can still do this if you’re able to boot into EDL mode which again varies from device to device. You can Google your device name as well as EDL mode to find the method as some require you to use a special dongle whilst others require you to press a contact point inside the phone.
So you’ll have to open up the phone but if you have an unlocked bootloader then you will not need to go through all of that hassle. Instead, we can flash it through fastboot mode. So we can do that by following the instructions below:
We have to shut down the device first so we’re going to press and hold the power button to shut down the device completely.
Once you see the smartphone is turned off, we’re then going to boot into fastboot mode by pressing and holding the power button as well as the volume down button.
As soon as you see the screen turn on let go of that power button so that we could press and hold that button combination and we’re going to hold that until we get into fast boot mode screen. Once we’re into fast boot mode, we’re going to connect the phone to the pc with a USB cable.
If you haven’t done it already, download a fresh copy of the firmware for your device.
We use a website called “xiaomifirmwareupdater.com” to download the latest firmware for our Xiaomi Redmi note 8.
You can type in your device name as well as you can also use the code name to download the most recent version of MIUI for your device.
So we have downloaded the fastboot Rom version of this firmware. It has to be the fastboot ROM version, not the recovery Rom, download the fastboot ROM version.
Then we are just going to extract the zip file into a folder.
Open that folder and you will see another zip file in that. We’re also going to extract that zip file again.
Then go into that folder you will see another folder into that folder. In that, you will see the number of scripts that we can run. There is also a folder labeled images in that and that is the firmware that runs on the phone. This is how we’re going to fix that error.
So back out of that images folder and copy all of these files including the images folder. And then we need to paste them into our adb and fastboot tools folder. If you have any files that need to be overridden then yes we’re going to replace them. Now, we’re going to open up a command prompt windows PowerShell or a terminal within this folder.
On Windows, we can do that very quickly by holding the shift button and right-clicking on an empty spot in that folder.
Because it will open a PowerShell window here but if you want then you can open up through a regular command prompt and then navigate to your adb and fastboot tools folder.
Please remember that there were a number of different scripts that we copied here.
Flash all except data storage and flash all lock option.
We’re going flash all by typing “flash_all.bat” in the PowerShell window and hit enter to run the script.
You can also double-click on “flash_all.bat” from the list of scripts and it will run the script. But that method is not recommended because if an error occurs then the window will be instantly closed and we will not see what that error is and we will not be able to troubleshoot what’s going on if we run this script that way.
Running the script from Windows PowerShell is recommended option because if an error occurs we’ll at least be able to find out why the error occurs.
You may need to find a proper USB cable and or a USB port combination.
We know some Xiaomi devices are not compatible with USB 3.0 ports.
We had this script freeze a couple of times using our traditional USB Type-C cable but switching ports and switching to a different older cable seem to fix that issue.
You just need to simply wait and be patient as this script is going to run and take some time to complete the process.
We should get a message at the end saying that the script is done, not only that but we may even see that Xiaomi Redmi smartphone reboot as well, all on its own. Some of these scripts will run differently while some of these scripts will reboot automatically, others do not.
As you can see that some of these files are very large, so large that they need to be broken up into multiple segments.
So while these scripts are running we are going to again be patient and don’t tinker with the phone as there is no need to hold the phone or wiggle the cable. Make sure that the connection remains solid and the script can run to completion.
If for some reason the script hangs like we were having issues with the other cable then all you need to do is unplug the cable, force the phone to power off by pressing and holding the power button. Then again booting back into fastboot mode exactly as we have shown you.
You will need to reboot back into fastboot mode in order to retry this type of script.
But that should only be needed if it hangs for you.
So once the process will complete, our phone will reboot and we are told that the script has been completed and we can press any key to continue.
When you press any key to continue, you can see your phone will be in the process of booting up for the first time since that unbrick process.
Now can unplug that USB cable as it will no longer be needed.
The boot animation will complete and this first boot back into android again and back into MIUI again is going to take a little bit longer than normal.
It may seem like it’s stuck but as you can see we are not getting that “system is destroyed message” like we were before.
Android is just setting things back up and it will soon take us to the android activation screen.
Remember that you just need to be patient as it takes a bit longer to boot.
Both the MIUI and Android have a lot of things to set up, when we do something like this it is similar to doing a factory data reset.
Android has to optimize a lot of apps, get the whole setup and activation flow ready for you.
After some time you will be back into android.
Just set up your Android just like you did for the first time you bought your device.
If you see a screen that asks you to activate the device, you just need to connect to the internet and login back into your Xiaomi MI account to activate the device.
And then we are just going to set up MIUI like we normally would.
We are just going to be setting up this device as new.
You can restore your previous data if you have taken a backup if you want.
It is highly unlikely that data is going to send your device back into that boot loop.
So all we did is go through the standard unbrick process in order to fix the Xiaomi “System has been destroyed error” message boot loop.
We ran into this because we formatted a couple of partitions and then tried to reboot back into recovery mode as it is obviously not able to do that because we formatted those partitions.
We were not even able to temporarily boot a custom recovery which was surprising.
This process will work on many Xiaomi Redmi devices as it’s not limited to just Redmi Note 8 devices.
You can also use the Xiaomi MI flash tool and load that firmware into the tool instead of running the script manually.
You can use the Xiaomi MI flash tool to run that script for you.
Experiencing difficulties with your Device, check out our “How To” page on how to resolve some of these issues.