[Moto G7 Guides, News, & Discussion] NetrixX13:
I have built a blankflash that revived my XT1962-5, which had firmware PPO29.80-66 before hardbricking it.

Maybe it is useful to others: https://www27.zippyshare.com/v/lL4eo830/file.html

The blankflash is based on this firmware: https://mirrors.lolinet.com/firmwar...ubsidy-DEFAULT_regulatory-DEFAULT_CFC.xml.zip

Thanks to fearlessiron for mentioning that it is possible to build blankflash from firmware images: https://xdaforums.com/showpost.php?p=80771201&postcount=37

Warning: This is just a documentation of what worked for me, I won't take any responsibility for how you use this information.

You can use it the following way:

1. Run with enough privileges (maybe sudo required)

$ ./blank-flash.sh --debug=2

2. Press the power button for ~30 seconds to reboot your phone

3. Connect your device via USB

4. Wait until blankflash is finished (I needed multiple tries until the download mode worked as expected. For me there were some errors after flashing one of the bootloader files. I think it is only important that gpt.bin is flashed properly if you hardbricked your device by switching to slot B without proper bootloader in it - like me)

5. Press the power button for ~30 seconds to reboot your phone (if it does not reboot by itself)

6. Flash stock rom using fastboot (there are already various howtos)

Here is a short guide on how to build your own blankflash using some firmware (using https://mirrors.lolinet.com/firmwar...ubsidy-DEFAULT_regulatory-DEFAULT_CFC.xml.zip as example firmware):

$ unzip blankflash_river_PPO29.80-66.zip
[...]
$ mv blankflash_river_PPO29.80-66 blankflash_river_PPOS29.114-134-4
$ cd blankflash_river_PPOS29.114-134-4
$ mkdir singleimage
$ cd singleimage
$ ../star -f ../singleimage.bin list
1 183 md5:e0ee38b65f3738a41853986179752b91 index.xml
2 133 md5:e458a75d601dcec350a31a90f9883826 singleimage.pkg.xml
3 2284 md5:5df678f38c02a647fbbbbbfa5ad743b2 singleimage.default.xml
4 262144 md5:577b3190cd81819dd86b1797f78e1aa7 rpm.mbn
5 1835008 md5:9cd8f03b637143dd7c50504bc66ec883 tz.mbn
6 65536 md5:e32d4ceb18960dcf17b86977140d5f92 devcfg.mbn
7 1043584 md5:6cb0dbd70839839b274aa1451c920f77 keymaster64.mbn
8 1043584 md5:97f322bf5564982d07e16ac350b59193 cmnlib_30.mbn
9 1043584 md5:2f0572be6064fddce06e21cfeea5716e cmnlib64_30.mbn
10 191616 md5:8d051996bb55ea16b3b0941f31a70f57 prov.mbn
11 519296 md5:03d5488fc59b9ee37e3e6ff1746ec943 sbl1.mbn
12 405264 md5:800eca0bd247491801b6d7da4c912f43 programmer.mbn
13 1572864 md5:85ac9cadd1fd0820a828cb9423556f14 emmc_appsboot.mbn
14 46592 md5:4d2b30c461ca915c2b9f459cf5970aeb gpt.bin
$ ../star -f ../singleimage.bin extract index.xml singleimage.pkg.xml singleimage.default.xml programmer.mbn
$ ls
index.xml programmer.mbn singleimage.default.xml singleimage.pkg.xml
$ unzip ../../XT1962-5_RIVER_RETEU_9.0_PPOS29.114-134-4_cid50_subsidy-DEFAULT_regulatory-DEFAULT_CFC.xml.zip gpt.bin bootloader.img
Archive: ../../XT1962-5_RIVER_RETEU_9.0_PPOS29.114-134-4_cid50_subsidy-DEFAULT_regulatory-DEFAULT_CFC.xml.zip
inflating: gpt.bin
inflating: bootloader.img
$ ls
bootloader.img gpt.bin index.xml programmer.mbn singleimage.default.xml singleimage.pkg.xml
$ ../star -f bootloader.img extract rpm.mbn tz.mbn devcfg.mbn keymaster64.mbn cmnlib_30.mbn cmnlib64_30.mbn prov.mbn sbl1.mbn emmc_appsboot.mbn
$ ls
bootloader.img cmnlib_30.mbn cmnlib64_30.mbn devcfg.mbn emmc_appsboot.mbn gpt.bin index.xml keymaster64.mbn programmer.mbn prov.mbn rpm.mbn sbl1.mbn singleimage.default.xml singleimage.pkg.xml tz.mbn
$ ../star -f ../singleimage.bin add index.xml singleimage.pkg.xml singleimage.default.xml rpm.mbn tz.mbn devcfg.mbn keymaster64.mbn cmnlib_30.mbn cmnlib64_30.mbn prov.mbn sbl1.mbn programmer.mbn emmc_appsboot.mbn gpt.bin
Updating "index.xml" with "index.xml"
Updating "singleimage.pkg.xml" with "singleimage.pkg.xml"
Updating "singleimage.default.xml" with "singleimage.default.xml"
Updating "rpm.mbn" with "rpm.mbn"
Updating "tz.mbn" with "tz.mbn"
Updating "devcfg.mbn" with "devcfg.mbn"
Updating "keymaster64.mbn" with "keymaster64.mbn"
Updating "cmnlib_30.mbn" with "cmnlib_30.mbn"
Updating "cmnlib64_30.mbn" with "cmnlib64_30.mbn"
Updating "prov.mbn" with "prov.mbn"
Updating "sbl1.mbn" with "sbl1.mbn"
Updating "programmer.mbn" with "programmer.mbn"
Updating "emmc_appsboot.mbn" with "emmc_appsboot.mbn"
Updating "gpt.bin" with "gpt.bin"
$ ../star -f ../singleimage.bin list
1 183 md5:e0ee38b65f3738a41853986179752b91 index.xml
2 133 md5:e458a75d601dcec350a31a90f9883826 singleimage.pkg.xml
3 2284 md5:5df678f38c02a647fbbbbbfa5ad743b2 singleimage.default.xml
4 262144 md5:7eb7c542e2f49b09bb2f3fe0073a1216 rpm.mbn
5 1835008 md5:5837e3f471fb2f9e904eb2a1947e8612 tz.mbn
6 65536 md5:61ab752a72db18bd3d2583c98aa78c7b devcfg.mbn
7 1043584 md5:f9309a7b3076063396f44d8a672ef78c keymaster64.mbn
8 1043584 md5:677f21bea257bd682c4fc4fcf1d74e04 cmnlib_30.mbn
9 1043584 md5:dbfd629f02b24f940871deed0c0f3bb2 cmnlib64_30.mbn
10 191616 md5:164707ea2cd732103a13e749ee8c5f23 prov.mbn
11 519296 md5:75321d87b13192b5537203c030b53567 sbl1.mbn
12 405264 md5:800eca0bd247491801b6d7da4c912f43 programmer.mbn
13 1572864 md5:92da950920b5dbc26878e745bd459534 emmc_appsboot.mbn
14 46592 md5:097843b6521be313cee7bf6519588677 gpt.bin