• XDA Forums have been migrated to XenForo. To discuss, report bugs and other issues, use this thread.

[MOD] [unofficial] Multirom V28 (GPE/STOCK - testing)

montamer

New member
Sep 30, 2008
35
110
0
Introduction

I was able to get multirom working on Motorola Moto G and would like to share with you guys. Moto G (falcon) is my first android phone (ya, you heard me correct. It took a longtime for me to switch to android :p) and I am new to android development and XDA community.

I have converted my XT1033 to single sim variant after flashing XT1032_RETAIL-GB_4.4.4_KXB21.14-L1.40_36_cid7_CFC_1FF.xml.zip firmware. I did this to install Parandroid (currently it only supports single sim). It might work on the default firmware.

MultiROM is one-of-a-kind multi-boot mod for Nexus 7. It can boot any Android ROM as well as other systems like Ubuntu Touch, Plasma Active, Bohdi Linux or WebOS port.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, daily prebuilt image files to install Ubuntu Touch 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
* Use for example Ubuntu Touch or Desktop alongside with Android, without the need of device formatting
* Boot from USB drive attached via OTG cable

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

There are stil many issues, and I am still testing and learning :angel:.
- Only for falcon stock firmwares. Doesn't work on falcon GPE.
- Sometimes Wifi not able to get IP address (static config works) on secondary rom. (same issue is observed on primary rom - fixed after flashing latest kernel)
- Sometimes secondary rom boot failure. Need reboot.
- Touch doesn't seem to work on multirom, so need to use volume down key for navigation and power button got selection. (Fixed)
- On GPE sometimes when booting I see "exec '/system/bin/sh' failed: Permission denied" errors. reinstalling the rom in multirom fixes this issue. Need to check.

You can get the relavent files at following location
http://d-h.st/users/montamer

Multirom Files
TWRP with Mutirom changes
multirom-20140902-v28-UNOFFICIAL-falcon.zip
multirom_uninstaller.zip

Patched Kernels
Stock Kernel (only for Stock firmware not GPE)
Modiefied 3.4.103-XPerience-STK-14-gpemod for GPE stock firmware (original kernel from TeamMEX)
PA Kernel

I have tested booting following roms
- CynogenMod
- ParanoidAndroid
- Boot2Gecko

I will share any code modifications as soon as possible.​

Warning!

It _is_ dangerous. This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. It is messing with boot sector and data partition. 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
1. Via MultiROM Manager app
Not supported at the moment.

2. Manual 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.

Note 1: Your device must not be encrypted (hint: if you don't know what it is, then it is not encrypted).
Note 2: There have been reports that (not only) MultiROM does not work properly with older bootloaders.

MultiROM has 3 parts you need to install:

  • Modified recovery (TWRP with Mutirom changes) - download the IMG file from Multirom Files section and use fastboot or Flashify app to flash it.
    - Fastboot command "fastboot flash recovery recovery.img"
  • Patched kernel - You can use either one of the stock ones in Kernel section or third-party kernels which include the patch. Download the ZIP file and flash it in recovery. or flash the img from fastboot.
    - Flash the "Stock Kernel (only for Stock firmware not GPE)" if your using STOCK 4.4.4 firmware images using below fastboot command
    fastboot flash boot stock_boot_patched.img
    - Flash the 3.4.103-XPerience-STK-14-gpemod from recovery if you are using GPE 4.4.4 firmware.
  • MultiROM (multirom-XXXXXXXX-v28-UNOFFICIAL-falcon.zip) - download the ZIP file from Multirom Files section and flash it in recovery.
Note: make sure to disable screen timeout in recovery (multirom_patched_recovery.img) (not required in latest recovery build)

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 Advanced -> MultiROM -> Add ROM. Select the ROM's zip file and confirm. As for the space, clean installation of stock 4.2 after first boot (with dalvik cache generated and connected to google account) takes 676mb of space.​

2. Ubuntu Touch
Use the MultiROM Manager app to install Ubuntu Touch.

Ubuntu Touch is in development - MultiROM will have to be updated to keep up with future changes in Ubuntu, so there's a good chance this method stops working after a while and I'll have to fix it.



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 Advanced -> 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 Advanced -> MultiROM -> List ROMs and select the ROM you want to update.
  • Select "Flash ZIP" and flash ROM's ZIP file.
  • In some cases, you might need to flash patched kernel - get coresponding patched kernel version from second post and flash it to the secondary ROM sama way you flashed ROM's ZIP file.



Explanation of recovery menus

Main menu
- Add ROM - add ROM to boot
- List ROMs - list installed ROMs and manage them
- Inject boot.img file - When you download for example kernel, which is distrubuted as whole boot.img (eg. franco kernel), you have to use this option on it, otherwise you would lose MultiROM.
- Inject curr. boot sector - Use this option if MultiROM does not show up on boot, for example after kernel installation.
- Settings - well, settings.

Manage ROM
- Rename, delete - I believe these are obvious
- Flash ZIP (only Android ROMs) - flash ZIP to the ROM, for example gapps
- Add/replace boot.img - replaces boot.img used by this ROM, this is more like developer option.
- Re-patch init - this is available only for ubuntu. Use it when ubuntu cannot find root partition, ie. after apt-get upgrade which changed the init script.​


Source code
Original MultiROM - https://github.com/Tasssadar/multirom (branch master)

Falcon modified MultiROM - https://github.com/montamer/multirom
Falcon modified kexec-tools - https://github.com/montamer/kexec-tools.git
Falcon CM kernel with kexec-hardboot-patch - https://github.com/montamer/android_kernel_motorola_msm8226.git
kexec-hardboot-falcon.patch
Modified TWRP - https://github.com/montamer/Team-Win-Recovery-Project

XDA:DevDB Information
MultiROM, a Tool/Utility for the Moto G

Contributors
Tasssadar
Montamer

Thanks
h2o64 for the post template
 
Last edited:

outlawmodzz

New member
Dec 18, 2012
159
36
0
willing to test I've got an xt1034. all I need is a link.

I was able to get multirom working on Moto-G and would like to share with you guys :highfive:. Moto-G is my first android phone (ya, you heard me correct. It took a longtime for me to switch to android :p) and I am new to android development and XDA community.

I have converted my XT1033 to single sim variant after flashing XT1032_RETAIL-GB_4.4.4_KXB21.14-L1.40_36_cid7_CFC_1FF.xml.zip firmware. I did this to install paranoidandroid (currently it only supports single sim). It might work on the default firmware.

There are stil many issues, and I am still testing and learning :angel:.
- Only for falcon stock firmwares. Doesn't work on falcon GPE.
- sometimes Wifi not able to get IP address (static config works) on secondary rom.
- sometimes secondary rom boot failure. Need reboot
- touch doesn't seem to work on multirom, so need to use volume down key for navigation and power button got selection

You can get the relavent files at following location
http : // d-h.st / users / montamer
mutirom files - falcon/multirom
patched kernels - falcon/hardboot_patched_kernel

I have tested booting following roms
- CynogenMod
- ParanoidAndroid
- Boot2Gecko

I will share any code modifications as soon as possible.

INSTALLATION:
- Flash multirom_patched_recovery.img from fastboot.
- Flash stock_boot_patched.img from fastboot if you are on stock rom
or flash PA-falcon-kernel-signed.zip (build kernel from aospal, should work on other roms????) from recovery.
- reboot to recovery
- Flash multirom-20140819-v27-UNOFFICIAL-falcon.zip from recovery

WARNING
Port is not tested completely and might damage your device. Not for the faint hearted ;)
I will not be responsible for any damage. Try at your own risk and make sure to backup

Credits:
Tasssadar (multirom aurthor).
paranoid android team.
I'll try it out.
 

DustArma

New member
Mar 30, 2011
474
97
0
Santiago
Does this replace the kernel on stock ROMs?

Also, does this modify the eMMC partitioning to store the second ROM system files or can you use external storage such as a USB stick via USB OTG
 
Last edited:

abhifx

New member
Feb 20, 2011
1,472
730
0
Chandigarh
Does this replace the kernel on stock ROMs?

Also, does this modify the eMMC partitioning to store the second ROM system files or can you use external storage such as a USB stick via USB OTG
same question... multirom needs kexec support in the base rom. so this is just mutirom system or does it flashes a kernel with kexec support?
 

Alberto97

Recognized Developer
Feb 6, 2012
976
7,825
0
22
Amazing! I'll try as soon as possible. Could you share with us your device tree and your kernel sources? [emoji4]
 

montamer

New member
Sep 30, 2008
35
110
0
same question... multirom needs kexec support in the base rom. so this is just mutirom system or does it flashes a kernel with kexec support?
Does this replace the kernel on stock ROMs?

Also, does this modify the eMMC partitioning to store the second ROM system files or can you use external storage such as a USB stick via USB OTG
The stock_boot_patched.img and PA-falcon-kernel-signed.zip are patched to support kexec. You need to flash one of the kernels based on your primary rom, before flashing multirom.zip.
I think new version of multirom doesn't mess with the eMMC partitioning and I have not tried flashing secondary rom on USB OTG.
 
  • Like
Reactions: navaneethkom

montamer

New member
Sep 30, 2008
35
110
0
Has you patched memory allocator's and kexec the kernel? Port Multirom is easy xD I have the sourse moded on my github but kexec isn't easy so tell me about your kernel patch

Sent from my XT1032 using XDA Premium 4 mobile app
Yes the kernels shared are patched with modified kexec_hardboot.patch from Tasssadar ;). I will share the changes soon.
 
  • Like
Reactions: navaneethkom

abhifx

New member
Feb 20, 2011
1,472
730
0
Chandigarh
The stock_boot_patched.img and PA-falcon-kernel-signed.zip are patched to support kexec. You need to flash one of the kernels based on your primary rom, before flashing multirom.zip.
I think new version of multirom doesn't mess with the eMMC partitioning and I have not tried flashing secondary rom on USB OTG.
fantastic... need to try this. after glorious mutiboot on nexus 4, i now have mutiboot on moto.

now where is the ubuntu build i want to test :)
 

Edu_Renesto

New member
Apr 16, 2012
26
35
0
Guarulhos
Thank you very much! I'll wait for you to release the changes before implementing it on other kernels.
BTW the PA kernel does not work on LiquidSmooth - it boots but have no wifi/networking, just to say
 

h2o64

New member
Aug 13, 2012
2,318
6,746
0
Paris
It made you a little prettier topic :
Code:
[CENTER][IMG]http://i.imgur.com/vh3puLb.png[/IMG][/CENTER]
[b][U][size=5]Introduction[/size][/U][/b]

I was able to get multirom working on [B]Motorola Moto G[/B] and would like to share with you guys. Moto G  (falcon) is my first android phone (ya, you heard me correct. It took a longtime for me to switch to android :p) and I am new to android development and XDA community.

I have converted my XT1033 to single sim variant after flashing XT1032_RETAIL-GB_4.4.4_KXB21.14-L1.40_36_cid7_CFC_1FF.xml.zip firmware. I did this to install Parandroid (currently it only supports single sim). It might work on the default firmware.

 [INDENT]MultiROM is one-of-a-kind multi-boot mod for Nexus 7. It can boot any Android ROM as well as other systems like Ubuntu Touch, Plasma Active, Bohdi Linux or WebOS port.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, daily prebuilt image files to install Ubuntu Touch 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
 * Use for example Ubuntu Touch or Desktop alongside with Android, without the need of device formatting
 * Boot from USB drive attached via OTG cable

 [url=https://www.youtube.com/watch?v=JDnDNxqfSaw]You can also watch a video which shows it in action.[/url][/INDENT]

 [INDENT] There are stil many issues, and I am still testing and learning :angel:.
- Only for falcon stock firmwares. Doesn't work on falcon GPE.
- Sometimes Wifi not able to get IP address (static config works) on secondary rom.
- Sometimes secondary rom boot failure. Need reboot.
- Touch doesn't seem to work on multirom, so need to use volume down key for navigation and power button got selection.

You can get the relavent files at following location
[URL="http://d-h.st/users/montamer"]http://d-h.st/users/montamer[/URL]
mutirom files - [B]falcon/multirom[/B]
patched kernels - [B]falcon/hardboot_patched_kernel[/B]

I have tested booting following roms
- CynogenMod
- ParanoidAndroid
- Boot2Gecko

I will share any code modifications as soon as possible. [/INDENT]

 [b][U][size=5][color=Red]Warning![/color][/size][/U][/b]

 [INDENT]It _is_ dangerous. This whole thing is basically one giant hack - none of these systems are made with multibooting in mind. [strike]It is messing with boot sector and data partition.[/strike] 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.[/INDENT]


[b][U][size=5]Installation[/size][/U][/b]
[INDENT][B]1. Via MultiROM Manager app[/b]
This is the easiest way to install everything MultiROM needs. [url=https://play.google.com/store/apps/details?id=com.tassadar.multirommgr]Install the app[/url] and select MultiROM and recovery on the [i]Install/Update[/i] card. If the [i]Status[/i] card says [i][b]Kernel:[/b] [color=red]doesn't have kexec-hardboot patch![/color][/i] in red letters, you have to install also patched kernel - either select one on the [i]Install/Update[/i] card or get some 3rd-party kernel here on XDA. You are chosing kernel for your primary ROM, [b]not[/b] any of your (future) secondary ROMs, so select the version accordingly.
Press "Install" on the [i]Install/Update[/i] card to start the installation.
[/INDENT]

 [INDENT][b]2. Manual installation[/b]
Note: [COLOR="Red"]make sure to disable screen timeout in recovery[/COLOR]
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.

 [b]Note 1:[/b] Your device must [b]not[/b] be encrypted (hint: if you don't know what it is, then it is not encrypted).
 [b]Note 2:[/b] There have been reports that (not only) MultiROM does not work properly with older bootloaders.

 MultiROM has 3 parts you need to install:
 
[LIST]
 
[*][b]MultiROM[/b] (multirom-XXXXXXXX-v27-UNOFFICIAL-falcon.zip) - download the ZIP file from second post and flash it in recovery.
 
[*][b]Modified recovery[/b] (multirom_patched_recovery.img) - download the IMG file from second post and use fastboot or [url=https://play.google.com/store/apps/details?id=com.cgollner.flashify]Flashify app[/url] to flash it.
 
[*][b]Patched kernel[/b] - You can use either one of the stock ones in second post or third-party kernels which include the patch, you can see list in the second post. Download the ZIP file and flash it in recovery.
 
[/LIST]
 [b]You current rom will not be erased by the installation.
 Download links are in the second post.[/b][/INDENT]



 [b][u][size=5]Adding ROMs[/size][/u][/b]

 [INDENT][b]1. Android[/b]
 Go to recovery, select Advanced -> MultiROM -> Add ROM. Select the ROM's zip file and confirm. As for the space, clean installation of stock 4.2 after first boot (with dalvik cache generated and connected to google account) takes 676mb of space.[/INDENT]

[INDENT][b]2. Ubuntu Touch[/b]
Use the [url=https://play.google.com/store/apps/details?id=com.tassadar.multirommgr]MultiROM Manager app[/url] to install Ubuntu Touch.

[b]Ubuntu Touch is in development - MultiROM will have to be updated to keep up with future changes in Ubuntu, so there's a good chance this method stops working after a while and I'll have to fix it.[/b][/INDENT]



 [U][size=5][b]Using USB drive[/b][/size][/U]
 [INDENT]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.[/INDENT]



 [U][size=5][b]Updating/changing ROMs[/b][/size][/U]

 [INDENT][B]1. Primary ROM (Internal)[/B]
 
[LIST]
 
[*] Flash ROM's ZIP file as usual, do factory reset if needed (it won't erase secondary ROMs)
 
[*] Go to Advanced -> MultiROM in recovery and do [I]Inject curr. boot sector.[/I]
 
[/LIST][/INDENT]
 [INDENT][B]2. Secondary Android ROMs[/B]
 If you want to change the ROM, delete it and add new one. To update ROM, follow these steps:
 
[LIST]
 
[*] Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.
 
[*] Select "Flash ZIP" and flash ROM's ZIP file.
 
[*] In some cases, you might need to flash patched kernel - get coresponding patched kernel version from second post and flash it to the secondary ROM sama way you flashed ROM's ZIP file.
 
[/LIST][/INDENT]



 [u][size=5][b]Explanation of recovery menus[/b][/size][/u]

 [INDENT][b][color=Blue]Main menu[/color][/b]
 [b]- Add ROM[/b] - add ROM to boot
 [b]- List ROMs[/b] - list installed ROMs and manage them
 [b]- Inject boot.img file[/b] - When you download for example kernel, which is distrubuted as whole boot.img (eg. franco kernel), you have to use this option on it, otherwise you would lose MultiROM.
 [b]- Inject curr. boot sector[/b] - Use this option if MultiROM does not show up on boot, for example after kernel installation.
 [b]- Settings[/b] - well, settings.

 [b][color=Blue]Manage ROM[/color][/b]
 [b]- Rename, delete[/b] - I believe these are obvious
 [b]- Flash ZIP[/b] (only Android ROMs) - flash ZIP to the ROM, for example gapps
 [b]- Add/replace boot.img[/b] - replaces boot.img used by this ROM, this is more like developer option.
 [b]- Re-patch init[/b] - this is available only for ubuntu. Use it when ubuntu cannot find root partition, ie. after apt-get upgrade which changed the init script.[/INDENT]


 [u][size=5][b]Source code[/b][/size][/u]
 [INDENT]MultiROM - [URL]https://github.com/Tasssadar/multirom[/URL] [b](branch master)[/b]
 Modified TWRP - not available yet[/b]
 Stock kernel w/ kexec-hardboot patch -  not available yet
 CM kernel w/ kexec-hardboot patch -  not available yet


[B][U][SIZE="4"][PLAIN]XDA:DevDB Information[/PLAIN][/SIZE][/U][/B]
[SIZE=3][B]MultiROM, a Tool/Utility for the Moto G[/B][/SIZE]

[B][U]Contributors[/U][/B]
[URL="http://forum.xda-developers.com/member.php?u=1248420"]Montamer[/URL]
 

reversegear

Well-known member
Jul 17, 2011
2,279
1,607
113
tried with GPE(partially) converted 1033XT
unable to install multirom-20140819-v27-unofficial-falcon.zip
base rom PA 4.5-Beta1

any one facing the same issue
 
Last edited:
Our Apps
Get our official app! (coming soon)
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone