[Mod] MultiRom v33b for Moto Z

Search This thread

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
vh3puLb.png

MultiROM is one-of-a-kind multi-boot mod for Moto Z. It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to that device. Besides booting from device's internal memory, MultiROM can boot from USB drive connected to the device via OTG cable. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the left image below and in gallery. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.

Features:
* Multiboot any number of Android ROMs
* Restore nandroid backup as secondary ROM
* Boot from USB drive attached via OTG cable

You can also watch a video which shows it in action.

Warning!

It _is_ dangerous. This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is no longer messing with data partition or boot sector, but it is possible that something goes wrong and you will have to flash factory images again. Make backups. Always.​

Installation
Firstly, there are videos on youtube. If you want, just search for "MultiROM installation" on youtube and watch those, big thanks to all who made them. There is also an awesome article on Linux Journal.

Note 1: Your device must not be encrypted (hint: if you don't know what it is, then it is encrypted).

MultiROM has 2 parts you need to install:
  • Modified recovery - download the IMG file from second post and use fastboot or TWRP or Flashify app to flash it.
  • MultiROM - download the ZIP file from second post and flash it in recovery.
  • Go into TWRP MultiRom settings and check "Enable No-KEXEC Workaround" (if it's not working check out troubleshooting in next Post)
You current rom will not be erased by the installation.
Download links are in the second post.

Adding ROMs
1. Android
Go to recovery, select MultiROM -> Add ROM. Select the ROM's zip file and confirm. As for the space, clean installation of stock 6.x after first boot takes 900+mb of space.​

Using USB drive
During installation, recovery lets you select install location. Plug in the USB drive, wait a while and press "refresh" so that it shows partitions on the USB drive. You just select the location (extX, NTFS and FAT32 partitions are supported) and proceed with the installation.
If you wanna use other than default FAT32 partition, just format it in PC. If you don't know how/don't know where to find out how, you probably should not try installing MultiROM.
If you are installing to NTFS or FAT32 partition, recovery asks you to set image size for all the partitions - this cannot be easilly changed afterward, so choose carefully. FAT32 is limited to maximum of 4095MB per image - it is limitation of the filesystem, I can do nothing about that.
Installation to USB drives takes a bit longer, because the flash drive is (usually) slower and it needs to create the images, so installation of Ubuntu to 4Gb image on my pretty fast USB drive takes about 20 minutes.
Enumerating USB drive can take a while in MultiROM menu, so when you press the "USB" button in MultiROM, wait a while (max. 30-45s) until it searches the USB drive. It does it by itself, no need to press something, just wait.​

Updating/changing ROMs

1. Primary ROM (Internal)
  • Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
  • Go to MultiROM in recovery and do Inject curr. boot sector.
2. Secondary Android ROMs
If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:
  • Go to MultiROM -> List ROMs and select the ROM you want to update.
  • Select "Flash ZIP" and flash ROM's ZIP file.

Source code

Thanks a lot to Tasssadar for creating this awesome utility.
And to @nkk71 for the No-KEXEC workaround

XDA:DevDB Information
MultiRom for Moto Z, Tool/Utility for the Moto Z

Contributors
erfanoabdi
Source Code: https://github.com/motoTurboZ/android_device_motorola_griffin---MR


Version Information
Status: Testing
Current Beta Version: 33
Beta Release Date: 2016-12-06

Created 2016-12-06
Last Updated 2017-03-30
 

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
Last edited:

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
Changelog :
26 March :
- Nougat Support
- TouchScreen Fixed

30 December :
- SD Card and OTG Fixed
- Updated Multirom and TWRP
- modded Multirom Manager app

09 December :
- initial build

Bugs/issues :
*Let me know, i'll add them here and consider it my todo list on this

Please read all about the no-kexec workaround from the author directly, (to avoid duplicity and get latest information), thanks to nkk71
[url]http://xdaforums.com/showpost.php?p=64248526&postcount=4[/URL]

Troubleshooting :
no-kexec workaround is enabled on TWRP but not working in Multirom :
go to "/data/media/0/multirom/multirom.ini" and set "no_kexec=1" (from 0 to 1)

Multirom manager app doesn't recognize your device :
make sure you're using my modded app and add this line
ro.product.device=griffin
into your build.prop at the root of system partition

Moto mods not working :
copy "init.gbmods.sh" from root in somewhere at your data partition like "/data/local/"
Than use init.d of kernel adiutor app to call it like :
Code:
chmod 0755 /data/local/init.gbmods.sh
chmod +x /data/local/init.gbmods.sh
./data/local/init.gbmods.sh
 
Last edited:
  • Like
Reactions: Mennpiko

gomisensei

Senior Member
Jul 7, 2010
147
32
Surrey, BC

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
@erfanoabdi I've been considering this phone for my next upgrade. I was starting to lean towards not buying, but you just made my decision for me. It will be my first multiROM experience when I get it :laugh:

thanks man :cowboy:
but you need to know there's no kernel with kexec support for this device and on my kernel i need some one to help me to fix it (https://github.com/motoTurboZ/kernel-msm/tree/kexec) if no one add kexec support we can't use secondary roms on multirom

and "nkk71 no kexec" is not working with motorola stock rom and having 2 CM in multirom is just funny

so we have to wait for a good developer, someone smarter than me to fix kexec for multirom :good:
by buying moto z you won't lose anything this is first high-end phone with multirom support (except oneplus 3(T)) and no one had success to add kexec to msm8996 :D (it's possible on msm8994)

i'm trying by best to develop my kernel and other stuffs for you and other moto z lovers :D
when i done my device tree for moto z, porting other roms for moto z will be too easier and hopefully we can see more roms for this amazing hardware in near future :fingers-crossed:
 
  • Like
Reactions: Andrellrios

immadeofpixels27

Senior Member
Aug 7, 2014
659
254
Carbondale
Samsung Galaxy S22 Ultra
thanks man :cowboy:
but you need to know there's no kernel with kexec support for this device and on my kernel i need some one to help me to fix it (https://github.com/motoTurboZ/kernel-msm/tree/kexec) if no one add kexec support we can't use secondary roms on multirom

and "nkk71 no kexec" is not working with motorola stock rom and having 2 CM in multirom is just funny

so we have to wait for a good developer, someone smarter than me to fix kexec for multirom :good:
by buying moto z you won't lose anything this is first high-end phone with multirom support (except oneplus 3(T)) and no one had success to add kexec to msm8996 :D (it's possible on msm8994)

i'm trying by best to develop my kernel and other stuffs for you and other moto z lovers :D
when i done my device tree for moto z, porting other roms for moto z will be too easier and hopefully we can see more roms for this amazing hardware in near future :fingers-crossed:
Well,i wasn't planning on getting it immediately anyway. Keep up the awesome work :good:
 
  • Like
Reactions: erfanoabdi

gomisensei

Senior Member
Jul 7, 2010
147
32
Surrey, BC
thanks man :cowboy:
but you need to know there's no kernel with kexec support for this device and on my kernel i need some one to help me to fix it (https://github.com/motoTurboZ/kernel-msm/tree/kexec) if no one add kexec support we can't use secondary roms on multirom

and "nkk71 no kexec" is not working with motorola stock rom and having 2 CM in multirom is just funny

so we have to wait for a good developer, someone smarter than me to fix kexec for multirom :good:
by buying moto z you won't lose anything this is first high-end phone with multirom support (except oneplus 3(T)) and no one had success to add kexec to msm8996 :D (it's possible on msm8994)

i'm trying by best to develop my kernel and other stuffs for you and other moto z lovers :D
when i done my device tree for moto z, porting other roms for moto z will be too easier and hopefully we can see more roms for this amazing hardware in near future :fingers-crossed:

Wait, doesn't only the main rom have to have kexec support? that's how multirom on my HTCm8 worked...
 

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
Good Newsss and Updates
my new year gift for you guys is new version of multirom
30 December Update :
OTG fixed
SD Card fixed
Updated Multirom and TWRP sources
and the Big one :
Now you can Multirom Stock and CM together

How to install CM and Stock Rom together ?
first if you're on stock make full backup (system, data, boot) with TWRP
if you're on CM and don't have stock backup, please uninstall it and go back to stock to get backup
now
  1. install multirom TWRP
  2. install CM14 (or other custom rom)
  3. install multirom zip
  4. reboot and setup your CM (maybe you need to change multirom.ini for nkk71-no-kexec boot [see troubleshooting])
  5. go back to recovery
  6. and use multirom setting to install your stock rom backup as secondary rom
  7. reboot
  8. ENJOY ;)

i've only tested this with MM and turboZ kernel but this should work with N too
i've not tested stock as primary and CM as Secondary rom and not sure it's working
root (and xposed) is working well on primary and Secondary roms
you can also install 3 or 4 roms together with this method
:fingers-crossed: :fingers-crossed: :fingers-crossed:
 

silvercat

Senior Member
Sep 4, 2008
433
166
Singapore
Good Newsss and Updates
my new year gift for you guys is new version of multirom
30 December Update :
OTG fixed
SD Card fixed
Updated Multirom and TWRP sources
and the Big one :
Now you can Multirom Stock and CM together

How to install CM and Stock Rom together ?
first if you're on stock make full backup (system, data, boot) with TWRP
if you're on CM and don't have stock backup, please uninstall it and go back to stock to get backup
now
  1. install multirom TWRP
  2. install CM14 (or other custom rom)
  3. install multirom zip
  4. reboot and setup your CM (maybe you need to change multirom.ini for nkk71-no-kexec boot [see troubleshooting])
  5. go back to recovery
  6. and use multirom setting to install your stock rom backup as secondary rom
  7. reboot
  8. ENJOY ;)

i've only tested this with MM and turboZ kernel but this should work with N too
i've not tested stock as primary and CM as Secondary rom and not sure it's working
root (and xposed) is working well on primary and Secondary roms
you can also install 3 or 4 roms together with this method
:fingers-crossed: :fingers-crossed: :fingers-crossed:
After flashing latest multirom.zip all the mods stopped working.

Sent from my Pixel using XDA-Developers mobile app
 

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
After flashing latest multirom.zip all the mods stopped working.

Yes if you want to make them working you need to copy init.gbmods.sh from root in somewhere at your data partition
Than use init.d of kernel adiutor to call it like :
Code:
chmod 0755 /data/local/init.gbmods.sh
chmod +x /data/local/init.gbmods.sh
./data/local/init.gbmods.sh

This is happening because multirom change some permissions accidentally

This method is tested on stock Motorola rom as secondary
 

ethanscooter

Senior Member
Jun 21, 2014
590
315
Somewhere out there.
Tried dual booting with lineage and it's not working. Used lineage as my primary and stuff but still no luck. Lineage boots up fine as it's the internal (primary) ROM but when you select stock it'll just reboot back into multirom and not boot at all

I'm on the n bootloader.
 

erfanoabdi

Recognized Developer
Jan 3, 2015
1,019
3,180
Tehran
erfanoabdi.github.io
Tried dual booting with lineage and it's not working. Used lineage as my primary and stuff but still no luck. Lineage boots up fine as it's the internal (primary) ROM but when you select stock it'll just reboot back into multirom and not boot at all

I'm on the n bootloader.

Yes I just exactly right now tried that and same as you
Let me check for problem
This may related to stock nougat system, always want to boot from verified partition, if that's it I can't do anything
Thanks for sharing your experience

Update : Fixed
 
Last edited:

jaybz

Member
Dec 25, 2006
38
19
Yes if you want to make them working you need to copy init.gbmods.sh from root in somewhere at your data partition
Than use init.d of kernel adiutor to call it like :
Code:
chmod 0755 /data/local/init.gbmods.sh
chmod +x /data/local/init.gbmods.sh
./data/local/init.gbmods.sh

This is happening because multirom change some permissions accidentally

This method is tested on stock Motorola rom as secondary

I have a stock based rom as secondary and a camera mod. The camera mod works when the rom is in primary but once in secondary it doesn't. Applying this only makes it work partially. The power button responds by opening and closing the camera app, but the lens never opens up and extends. The zoom controls do nothing either.
 
  • Like
Reactions: erfanoabdi

Top Liked Posts

  • There are no posts matching your filters.
  • 10
    vh3puLb.png

    MultiROM is one-of-a-kind multi-boot mod for Moto Z. It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to that device. Besides booting from device's internal memory, MultiROM can boot from USB drive connected to the device via OTG cable. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. You can see how it looks on the left image below and in gallery. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs and MultiROM even has its own installer system, which can be used to ship other Linux-based systems.

    Features:
    * Multiboot any number of Android ROMs
    * Restore nandroid backup as secondary ROM
    * Boot from USB drive attached via OTG cable

    You can also watch a video which shows it in action.

    Warning!

    It _is_ dangerous. This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is no longer messing with data partition or boot sector, but it is possible that something goes wrong and you will have to flash factory images again. Make backups. Always.​

    Installation
    Firstly, there are videos on youtube. If you want, just search for "MultiROM installation" on youtube and watch those, big thanks to all who made them. There is also an awesome article on Linux Journal.

    Note 1: Your device must not be encrypted (hint: if you don't know what it is, then it is encrypted).

    MultiROM has 2 parts you need to install:
    • Modified recovery - download the IMG file from second post and use fastboot or TWRP or Flashify app to flash it.
    • MultiROM - download the ZIP file from second post and flash it in recovery.
    • Go into TWRP MultiRom settings and check "Enable No-KEXEC Workaround" (if it's not working check out troubleshooting in next Post)
    You current rom will not be erased by the installation.
    Download links are in the second post.

    Adding ROMs
    1. Android
    Go to recovery, select MultiROM -> Add ROM. Select the ROM's zip file and confirm. As for the space, clean installation of stock 6.x after first boot takes 900+mb of space.​

    Using USB drive
    During installation, recovery lets you select install location. Plug in the USB drive, wait a while and press "refresh" so that it shows partitions on the USB drive. You just select the location (extX, NTFS and FAT32 partitions are supported) and proceed with the installation.
    If you wanna use other than default FAT32 partition, just format it in PC. If you don't know how/don't know where to find out how, you probably should not try installing MultiROM.
    If you are installing to NTFS or FAT32 partition, recovery asks you to set image size for all the partitions - this cannot be easilly changed afterward, so choose carefully. FAT32 is limited to maximum of 4095MB per image - it is limitation of the filesystem, I can do nothing about that.
    Installation to USB drives takes a bit longer, because the flash drive is (usually) slower and it needs to create the images, so installation of Ubuntu to 4Gb image on my pretty fast USB drive takes about 20 minutes.
    Enumerating USB drive can take a while in MultiROM menu, so when you press the "USB" button in MultiROM, wait a while (max. 30-45s) until it searches the USB drive. It does it by itself, no need to press something, just wait.​

    Updating/changing ROMs

    1. Primary ROM (Internal)
    • Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
    • Go to MultiROM in recovery and do Inject curr. boot sector.
    2. Secondary Android ROMs
    If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:
    • Go to MultiROM -> List ROMs and select the ROM you want to update.
    • Select "Flash ZIP" and flash ROM's ZIP file.

    Source code

    Thanks a lot to Tasssadar for creating this awesome utility.
    And to @nkk71 for the No-KEXEC workaround

    XDA:DevDB Information
    MultiRom for Moto Z, Tool/Utility for the Moto Z

    Contributors
    erfanoabdi
    Source Code: https://github.com/motoTurboZ/android_device_motorola_griffin---MR


    Version Information
    Status: Testing
    Current Beta Version: 33
    Beta Release Date: 2016-12-06

    Created 2016-12-06
    Last Updated 2017-03-30
    2
    Video :

    Downloads :
    IT WILL NOT WORK WHEN ENCRYPTED
    https://www.androidfilehost.com/?w=files&flid=140728

    Old Versions :
    TWRP : https://mega.nz/#!mQpzyRJL!rfWAhx9ZFKgL_WQ2I0dcZ6aSWtqJE98YYByXAaIK5ZU
    Multirom : https://mega.nz/#!zFRjjA7I!v_EehAAX0REmVX7DC_y2M7Dl0B-q91K50VxTNT0Ut8E
    Multirom Uninstaller : https://mega.nz/#!OEZAEbRK!p8qVatt_YcctZ4cbRR7CK9Mou6oaPT1YN-5NKCc1lh8

    How to install :
    Flash recovery
    Flash multirom zip
    Enable kexec workaround in TWRP mr settings
    Enjoy!
    2
    Hi thanks for the Multirom support...
    Twrp works just fine but while flashing Multirom zip it give some update error 7
    Here is the recovery log :
    2
    Does it work with forced encryption enabled?

    No it's not working on encrypted phones
    I'm a little bit busy on cm14 I'll add encryption support as soon as possible
    2
    Good Newsss and Updates
    my new year gift for you guys is new version of multirom
    30 December Update :
    OTG fixed
    SD Card fixed
    Updated Multirom and TWRP sources
    and the Big one :
    Now you can Multirom Stock and CM together

    How to install CM and Stock Rom together ?
    first if you're on stock make full backup (system, data, boot) with TWRP
    if you're on CM and don't have stock backup, please uninstall it and go back to stock to get backup
    now
    1. install multirom TWRP
    2. install CM14 (or other custom rom)
    3. install multirom zip
    4. reboot and setup your CM (maybe you need to change multirom.ini for nkk71-no-kexec boot [see troubleshooting])
    5. go back to recovery
    6. and use multirom setting to install your stock rom backup as secondary rom
    7. reboot
    8. ENJOY ;)

    i've only tested this with MM and turboZ kernel but this should work with N too
    i've not tested stock as primary and CM as Secondary rom and not sure it's working
    root (and xposed) is working well on primary and Secondary roms
    you can also install 3 or 4 roms together with this method
    :fingers-crossed: :fingers-crossed: :fingers-crossed: