[GUIDE] How to properly use MultiROM for LG P-880 - Optimus 4X HD (all steps explaine

Search This thread

peppethustra

Senior Member
Nov 16, 2012
557
342
Catanzaro
-NOTE: The following guide has been specifically written for LG P-880 (Optimus 4X HD), after a lot of reading, flashing and managing ROMs and kernels on MultiROM; I have been asked by some users, and now it's here, I hope it to be clear and useful; it includes some parts extracted from the original Nexus7 thread, and readapted for our device. For the original MultiROM thread by @Tasssadar, go at the link below:

http://xdaforums.com/showthread.php?t=2457063



MultiROM is one-of-a-kind multi-boot mod, originally built for Nexus 7 by @Tasssadar, ported and re-adapted to work with LG P-880 by @Adam77Root, then by @Fluoxetine, and finally by Mourta @IcanhasLG (coming soon, don't ask for ETA's, please). It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to our device. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs, or restore nandroid backups as secondary ROMs, too.

Features:
* Multiboot any number of Android ROMs
* Restore nandroid backup as secondary ROM



1) INSTALLATION

MultiROM has 3 parts you need to install:

* MultiROM.zip (A new version built by Mourta @IcanhasLG will come soon; actually, the latest MultiROM.zip by @Fluoxetine can be found here: https://app.box.com/s/fmigiyd8nsprc8jxwahn) - download the ZIP file and flash it in recovery.

* Modified TWRP recovery (the actual modified recovery is the one provided by @Adam77Root - go here for Adam's modified TWRP thread and for download links: http://xdaforums.com/showthread.php?p=46431004). Download the latest IMG file and use terminal emulator to flash it (the easier way to flash it without a PC). Please, follow the steps below for a safe flash:

-Rename the IMG file into "recovery.img"
-Open terminal emulator
-Type "su", then enter
-Type "cat /mnt/sdcard/recovery.img >/dev/block/mmcblk0p1", then enter
-Type "sync", then enter
-Type "exit", then enter
-Reboot your phone

* Kexec-hardboot patched kernel - You can use iodak (patched since from v8), Mourta, or Cyodak. Download the ZIP file and flash it in recovery.

IMPORTANT: You current rom will NOT be erased by the installation.



2) ADDING ROMs:

* Go to recovery, select Advanced -> MultiROM -> Add ROM. At this point, you can choice if you want to share or not to share internal ROM's kernel with your new secondary rom: if you want to, just select the "Share kernel with Internal ROM" option; if you don't, select the "don't share" option. The sharing mode is helpful if you need to use an anykernel kernel with a secondary ROM (see step 2.1) or just to share the Internal ROM's kernel with secondaries, if you need it.

* Select the ROM's zip file you want to flash, or the nandoid backup file you want to restore as a secondary ROM, and confirm.

* Flash Gapps package (optional)

*Flash custom kernel (optional) (WARNING: only no-anykernel patched kernels can directly be flashed on the top of secondary ROMs; if you try flashing an anykernel patched kernel, you will end in a bootloop; if you want to use an anykernel patched kernel on a secondary ROM, go to step 2.1)



2.1) USING ANYKERNEL PATCHED KERNELS WITH SECONDARY ROMs


Actually, MultiROM doesn't support direct flashing of anykernel patched kernels on the top of secondary ROMs. There are some workarounds to let secondary ROMs use this kind of kernels:


a. Share the kernel with internal ROM:

If you flashed an anykernel patched kernel (it must be kexec-hardboot patched, too) on the top of internal ROM, you will be able to share it with secondary ROMs too. If you did it, just follow the steps below, when adding a new secondary ROM:

* Go to recovery, select Advanced -> MultiROM -> Add ROM. At this point, you can choose if you want to share or not to share internal ROM's kernel with your new secondary rom: if you want to, just select the "Share kernel with Internal ROM" option.


b. Remove original boot.img from secondary ROM:

If you flashed a secondary ROM without selecting the "Share kernel with internal ROM" option, but you flashed an anykernel patched kernel (it must be kexec-hardboot patched, too) on the top of internal ROM before, you can share it with secondary ROM following the steps below:

* In recovery, Advanced -> MultiROM -> List ROMs -> "Your rom's name", there is a button: "Remove boot.img". This action switches ROM to "share kernel" mode. Flashing a ZIP which contains kernel (even ROM update!) into that secondary ROM could put it into "don't share" mode again.

* After removing the original boot.img, you will see a new "Inject boot.img" button replacing the old "Remove boot.img" one: this option allows you to inject your secondary ROM with a different boot.img, backed up from other kernels you flashed before on the top of other ROMs, or backed up directly from other ROMs. Do this at your own risk, it may cause bugs or not, depending by your knowledge of what you are going to inject here.


At any rate, I personally tried the a. step above, and after that I tried to flash a ROM's zip update: the "share kernel" mode hasn't been turned off.



3) UPDATING/CHANGING ROMs


a. Primary ROM (Internal)

* Wipe /cache, /dalvik, /system, or do factory reset if needed (it won't erase secondary ROMs)

* Flash ROM's ZIP file as usual

* Flash Gapps package (optional)

*Flash custom kernel (optional) (WARNING: if you want secondary ROMs to properly boot, you should flash only kexec-hardboot patched kernels, on the top of Internal ROM. Flashing a no-patched kernel won't allow MultiROM to manage secondary ROMs' boot).

* After erasing /system partition, or flashing a new kernel, a "bug" could happen: the menu with all the ROMs won't show up during boot.
If so, re-flash the MultiROM zip after having flashed the ROM update and the other related stuff, or go to recovery, Advanced -> MultiROM -> Inject curr. boot sector.

The reason for this is that something rewrote your boot.img, which happens for example when you flash a kernel. MultiROM's boot menu is part of the boot image, so it has to be added into it again.


b. Secondary Android ROMs

If you want to change a ROM, select it in Advanced -> MultiROM -> List ROMs, delete it using the "Delete" button, then add the new one (following the instructions explained in step 2). To update ROM, follow these steps:

* Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.

* Wipe /cache, /dalvik, and so on, by pressing the proper button showed on the screen

* Select "Flash ZIP" and flash ROM's ZIP file.

* Flash Gapps package (optional)

*Flash custom kernel (optional) (WARNING: only no-anykernel patched kernels can directly be flashed on the top of secondary ROMs; if you try flashing an anykernel patched kernel, you will end in a bootloop; if you want to use an anykernel patched kernel on a secondary ROM, go to step 2.1)



4) ERASING SECONDARY ROMs


* Just go to Advanced -> MultiROM -> List ROMs and select the ROM you want to delete.

* Select "Delete"


5) BOOTING SECONDARY ROMs

* Turn on the phone; after the LG logo, the MultiROM boot menu will appear. If you don't do anything, Internal ROM will boot. If you want to boot into secondary ROMs, you have to tap on the countdown pop-up

* After that, you can choose your desired ROM, then press "Boot". For secondary ROMs which don't share kernel with internal ROM: press "Boot" and hold down the power button until phone vibrates (actually, our MultiROM has a bug which doesn't allow secondary ROMs to boot, if you don't hold power button after having tapped "Boot", if you haven't shared kernel with internal ROM.)



6) UNINSTALLING MultiROM


The easiest way is to just reflash your custom kernel or a ROM zip on the top of your internal ROM, after having made the usual wipes: this will erase the MultiROM binaries.



More updates will come when we'll have a new version, such as for swapping ROMs through internal and secondary positions, making the internal ROM secondary, and so on (these features don't work fine, at the moment).
 
Last edited:

Fladder72

Senior Member
Feb 18, 2012
410
158
When flashing a zip file (SuperSu etc.) on secondary ROMs with shared Kernel from primary, a boot.img will be created in /data/media/0/multirom/"YourSecondary"/... I use these images to repack them for stock ROMs or MiUi to get them work in MR...

Secondaries with own boot images can be booted too. After you have chose your desired ROM in MR bootmanager, press "Boot" and hold down the power button until phone vibrates. Your device should reboot to the chosen ROM...
Most of the ROMs I've tried as secondary are working flawlessly in MR... Only MoKee have made some Problems...
 
Last edited:
  • Like
Reactions: peppethustra

peppethustra

Senior Member
Nov 16, 2012
557
342
Catanzaro
When flashing a zip file (SuperSu etc.) on secondary ROMs with shared Kernel from primary, a boot.img wil be created in /data/media/0/multirom/"YourSecondary"/... I use these images to repack them for stock ROMs or MiUi...

Secondaries with own boot images can be booted too. After you have chose your desired ROM in MR bootmanager and press "Boot", you have to hold down the power button until phone vibrates. Most of the ROMs I've tried as secondary are working flawlessly in MR...

Yep, what you're saying is right, nobody affirmed the contrary ;)

Right, I've forgotten the more banal thing: the necessity of holding down power button, while booting a secondary ROM :) I'm adding it into the guide right now
 

Fladder72

Senior Member
Feb 18, 2012
410
158
For secondary ROMs with shared kernel there is no need for hold down power button. Only for secondaries with own kernel images.

Currently I have in MR:

JellyFishHD 1.3
Vanir 4.4.4 090214
Zaiben RC16
MiUi 4.8.1

All ROMs are booting. Only MiUi have a problem with access to External SD
 
Last edited:

peppethustra

Senior Member
Nov 16, 2012
557
342
Catanzaro
For secondary ROMs with shared kernel there is no need for hold down power button. Only for secondaries with own kernel images.

Currently I have in MR:

JellyFishHD 1.3
Vanir 4.4.4 090214
Zaiben RC16
MiUi 4.8.1

All ROMs are booting. Only MiUi have a problem with access to External SD
Yep, I knew that too, I've already written that in last update :) Thank you for having helped me remembering those things! You know, sometimes those steps begin automatic, while using this mod, so you don't remember them as a necessary thing to explain, my bad! ;)
 
Last edited:

Fladder72

Senior Member
Feb 18, 2012
410
158
Curiously the device boots any ROM while it's connected via USB, without hold down Power button for restart...
 
Last edited:

Fladder72

Senior Member
Feb 18, 2012
410
158
Vanir 4.4.4 runs like hell... Realy fast with Vanir stock kernel, an a bit faster with Mourta's... For me the fastes KK-Rom at this momemt. :good:
Maybe next I'll give Beanstalk a try... ;)
I use only Ext4, because I don't like f2fs... Too much early stage sh*t...

I'm not shure, but I think, Vanir is CM based...
 
Last edited:

gerciolisz

Senior Member
ok so i returned to multirom thank to u. OFC i was using it before and know how it goes.

I flashed multirom.zip by fluoxetine then flashed latest Adam's recovery via fastboot.
My problem is : Internal : pa 4.5 beta4 with mourta 09.02 kernel ---> then add rom cm11 09.02 unofficial by Demetris with his kernel + gapps ----->reboot ----> in multirom i choose cm11 boot, hold power button blah blah ----> booom again in multirom and trying to boot cm tells me there is no kexec . I think "what the??" booting internal rom and there is pa 4,5 beta4 with demetris 09,02 kernel!! WTF?XDXDXD i can give screenshots:)

EDIT : keep getting better:p when i reboot it goes back to mourta's kernel?:p

seems i found multikernel solution?XD
 
Last edited:
  • Like
Reactions: peppethustra

peppethustra

Senior Member
Nov 16, 2012
557
342
Catanzaro
Last edited:
  • Like
Reactions: gerciolisz

Donar81

Senior Member
Jan 26, 2014
53
45
No problem with his kernel here, and I'm using it with MultiROM as principal kernel on the top of internal ROM since from the first release o_O :)

I have the same problem like gerciolisz with mourtas ls and latest kernel.
I wanted to try latest beanstalk today.
I didn't use multirom for a while so i installed recovery and multirom new but this doesn't help.

With flashing orginal iodak v10 in internal rom it works booting secondary rom.

Since you and some users could boot secondary with mourtas kernel it could be that this error is tegra variant relatet.
I have variant 0.

I have tested the different versions from mourta kernel
mourta-2014-07-27 is the last working version on my phone. With all later versions i can't boot secondary roms
Is there a way to log multirom booting?
 
Last edited:

peppethustra

Senior Member
Nov 16, 2012
557
342
Catanzaro
I have the same problem like gerciolisz with mourtas ls and latest kernel.
I wanted to try latest beanstalk today.
I didn't use multirom for a while so i installed recovery and multirom new but this doesn't help.

With flashing orginal iodak v10 in internal rom it works booting secondary rom.

Since you and some users could boot secondary with mourtas kernel it could be that this error is tegra variant relatet.
I have variant 0.

I have tested the different versions from mourta kernel
mourta-2014-07-27 is the last working version on my phone. With all later versions i can't boot secondary roms
Is there a way to log multirom booting?

@Donar81 damn thx man for this whole testing i am sure if there are more than just me mourta will look into this issue.

But i wonder how it work for others... I have variant 1.
I have variant3, and I've not the problem.. Yes, maybe it's better to ask him..What do you think, @IcanhasLG? ;)
 

Fladder72

Senior Member
Feb 18, 2012
410
158
I have variant 0 and got no problems. I can boot scondaries with Moutras kernel...

---------- Post added at 11:46 AM ---------- Previous post was at 11:30 AM ----------

ok so i returned to multirom thank to u. OFC i was using it before and know how it goes.

I flashed multirom.zip by fluoxetine then flashed latest Adam's recovery via fastboot.
My problem is : Internal : pa 4.5 beta4 with mourta 09.02 kernel ---> then add rom cm11 09.02 unofficial by Demetris with his kernel + gapps ----->reboot ----> in multirom i choose cm11 boot, hold power button blah blah ----> booom again in multirom and trying to boot cm tells me there is no kexec . I think "what the??" booting internal rom and there is pa 4,5 beta4 with demetris 09,02 kernel!! WTF?XDXDXD i can give screenshots:)

EDIT : keep getting better:p when i reboot it goes back to mourta's kernel?:p

seems i found multikernel solution?XD

Remove the boot.img in recovery/Multirom/Manage ROMs/YourSecondary. Now your primary will share the Kernel with your scondary. Can you boot now primary and secondary without any issue?
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 11
    -NOTE: The following guide has been specifically written for LG P-880 (Optimus 4X HD), after a lot of reading, flashing and managing ROMs and kernels on MultiROM; I have been asked by some users, and now it's here, I hope it to be clear and useful; it includes some parts extracted from the original Nexus7 thread, and readapted for our device. For the original MultiROM thread by @Tasssadar, go at the link below:

    http://xdaforums.com/showthread.php?t=2457063



    MultiROM is one-of-a-kind multi-boot mod, originally built for Nexus 7 by @Tasssadar, ported and re-adapted to work with LG P-880 by @Adam77Root, then by @Fluoxetine, and finally by Mourta @IcanhasLG (coming soon, don't ask for ETA's, please). It can boot any Android ROM as well as other systems like Ubuntu Touch, once they are ported to our device. The main part of MultiROM is a boot manager, which appears every time your device starts and lets you choose ROM to boot. ROMs are installed and managed via modified TWRP recovery. You can use standard ZIP files to install secondary Android ROMs, or restore nandroid backups as secondary ROMs, too.

    Features:
    * Multiboot any number of Android ROMs
    * Restore nandroid backup as secondary ROM



    1) INSTALLATION

    MultiROM has 3 parts you need to install:

    * MultiROM.zip (A new version built by Mourta @IcanhasLG will come soon; actually, the latest MultiROM.zip by @Fluoxetine can be found here: https://app.box.com/s/fmigiyd8nsprc8jxwahn) - download the ZIP file and flash it in recovery.

    * Modified TWRP recovery (the actual modified recovery is the one provided by @Adam77Root - go here for Adam's modified TWRP thread and for download links: http://xdaforums.com/showthread.php?p=46431004). Download the latest IMG file and use terminal emulator to flash it (the easier way to flash it without a PC). Please, follow the steps below for a safe flash:

    -Rename the IMG file into "recovery.img"
    -Open terminal emulator
    -Type "su", then enter
    -Type "cat /mnt/sdcard/recovery.img >/dev/block/mmcblk0p1", then enter
    -Type "sync", then enter
    -Type "exit", then enter
    -Reboot your phone

    * Kexec-hardboot patched kernel - You can use iodak (patched since from v8), Mourta, or Cyodak. Download the ZIP file and flash it in recovery.

    IMPORTANT: You current rom will NOT be erased by the installation.



    2) ADDING ROMs:

    * Go to recovery, select Advanced -> MultiROM -> Add ROM. At this point, you can choice if you want to share or not to share internal ROM's kernel with your new secondary rom: if you want to, just select the "Share kernel with Internal ROM" option; if you don't, select the "don't share" option. The sharing mode is helpful if you need to use an anykernel kernel with a secondary ROM (see step 2.1) or just to share the Internal ROM's kernel with secondaries, if you need it.

    * Select the ROM's zip file you want to flash, or the nandoid backup file you want to restore as a secondary ROM, and confirm.

    * Flash Gapps package (optional)

    *Flash custom kernel (optional) (WARNING: only no-anykernel patched kernels can directly be flashed on the top of secondary ROMs; if you try flashing an anykernel patched kernel, you will end in a bootloop; if you want to use an anykernel patched kernel on a secondary ROM, go to step 2.1)



    2.1) USING ANYKERNEL PATCHED KERNELS WITH SECONDARY ROMs


    Actually, MultiROM doesn't support direct flashing of anykernel patched kernels on the top of secondary ROMs. There are some workarounds to let secondary ROMs use this kind of kernels:


    a. Share the kernel with internal ROM:

    If you flashed an anykernel patched kernel (it must be kexec-hardboot patched, too) on the top of internal ROM, you will be able to share it with secondary ROMs too. If you did it, just follow the steps below, when adding a new secondary ROM:

    * Go to recovery, select Advanced -> MultiROM -> Add ROM. At this point, you can choose if you want to share or not to share internal ROM's kernel with your new secondary rom: if you want to, just select the "Share kernel with Internal ROM" option.


    b. Remove original boot.img from secondary ROM:

    If you flashed a secondary ROM without selecting the "Share kernel with internal ROM" option, but you flashed an anykernel patched kernel (it must be kexec-hardboot patched, too) on the top of internal ROM before, you can share it with secondary ROM following the steps below:

    * In recovery, Advanced -> MultiROM -> List ROMs -> "Your rom's name", there is a button: "Remove boot.img". This action switches ROM to "share kernel" mode. Flashing a ZIP which contains kernel (even ROM update!) into that secondary ROM could put it into "don't share" mode again.

    * After removing the original boot.img, you will see a new "Inject boot.img" button replacing the old "Remove boot.img" one: this option allows you to inject your secondary ROM with a different boot.img, backed up from other kernels you flashed before on the top of other ROMs, or backed up directly from other ROMs. Do this at your own risk, it may cause bugs or not, depending by your knowledge of what you are going to inject here.


    At any rate, I personally tried the a. step above, and after that I tried to flash a ROM's zip update: the "share kernel" mode hasn't been turned off.



    3) UPDATING/CHANGING ROMs


    a. Primary ROM (Internal)

    * Wipe /cache, /dalvik, /system, or do factory reset if needed (it won't erase secondary ROMs)

    * Flash ROM's ZIP file as usual

    * Flash Gapps package (optional)

    *Flash custom kernel (optional) (WARNING: if you want secondary ROMs to properly boot, you should flash only kexec-hardboot patched kernels, on the top of Internal ROM. Flashing a no-patched kernel won't allow MultiROM to manage secondary ROMs' boot).

    * After erasing /system partition, or flashing a new kernel, a "bug" could happen: the menu with all the ROMs won't show up during boot.
    If so, re-flash the MultiROM zip after having flashed the ROM update and the other related stuff, or go to recovery, Advanced -> MultiROM -> Inject curr. boot sector.

    The reason for this is that something rewrote your boot.img, which happens for example when you flash a kernel. MultiROM's boot menu is part of the boot image, so it has to be added into it again.


    b. Secondary Android ROMs

    If you want to change a ROM, select it in Advanced -> MultiROM -> List ROMs, delete it using the "Delete" button, then add the new one (following the instructions explained in step 2). To update ROM, follow these steps:

    * Go to Advanced -> MultiROM -> List ROMs and select the ROM you want to update.

    * Wipe /cache, /dalvik, and so on, by pressing the proper button showed on the screen

    * Select "Flash ZIP" and flash ROM's ZIP file.

    * Flash Gapps package (optional)

    *Flash custom kernel (optional) (WARNING: only no-anykernel patched kernels can directly be flashed on the top of secondary ROMs; if you try flashing an anykernel patched kernel, you will end in a bootloop; if you want to use an anykernel patched kernel on a secondary ROM, go to step 2.1)



    4) ERASING SECONDARY ROMs


    * Just go to Advanced -> MultiROM -> List ROMs and select the ROM you want to delete.

    * Select "Delete"


    5) BOOTING SECONDARY ROMs

    * Turn on the phone; after the LG logo, the MultiROM boot menu will appear. If you don't do anything, Internal ROM will boot. If you want to boot into secondary ROMs, you have to tap on the countdown pop-up

    * After that, you can choose your desired ROM, then press "Boot". For secondary ROMs which don't share kernel with internal ROM: press "Boot" and hold down the power button until phone vibrates (actually, our MultiROM has a bug which doesn't allow secondary ROMs to boot, if you don't hold power button after having tapped "Boot", if you haven't shared kernel with internal ROM.)



    6) UNINSTALLING MultiROM


    The easiest way is to just reflash your custom kernel or a ROM zip on the top of your internal ROM, after having made the usual wipes: this will erase the MultiROM binaries.



    More updates will come when we'll have a new version, such as for swapping ROMs through internal and secondary positions, making the internal ROM secondary, and so on (these features don't work fine, at the moment).
    2
    Maybe it's a kexec-hardboot patch problem, if I remember @Tasssadar released a new patch for a similar problem (even if I haven't experienced that problem with my tegra variant 3)

    Look at this: http://xdaforums.com/showthread.php?p=45920207

    Right now, I'm asking Mourta if your problem could be patch related
    Ok guys, maybe it's a patch problem: Mourta will look into it, but probably updated patches will be out in some weeks, because Mourta will adapt them to work with the updated 3.4 kernel which we're close to test
    2
    No problem with his kernel here, and I'm using it with MultiROM as principal kernel on the top of internal ROM since from the first release o_O :)

    I have the same problem like gerciolisz with mourtas ls and latest kernel.
    I wanted to try latest beanstalk today.
    I didn't use multirom for a while so i installed recovery and multirom new but this doesn't help.

    With flashing orginal iodak v10 in internal rom it works booting secondary rom.

    Since you and some users could boot secondary with mourtas kernel it could be that this error is tegra variant relatet.
    I have variant 0.

    I have tested the different versions from mourta kernel
    mourta-2014-07-27 is the last working version on my phone. With all later versions i can't boot secondary roms
    Is there a way to log multirom booting?
    1
    When flashing a zip file (SuperSu etc.) on secondary ROMs with shared Kernel from primary, a boot.img will be created in /data/media/0/multirom/"YourSecondary"/... I use these images to repack them for stock ROMs or MiUi to get them work in MR...

    Secondaries with own boot images can be booted too. After you have chose your desired ROM in MR bootmanager, press "Boot" and hold down the power button until phone vibrates. Your device should reboot to the chosen ROM...
    Most of the ROMs I've tried as secondary are working flawlessly in MR... Only MoKee have made some Problems...
    1
    @Fladder72 hows vanir 4.4.4 performnig ? Is it dev based or cm ? Ext4?
    @peppethustra great guide will try it when i have the time.BTW we need TWRP or we can flesh it with CWM ?