Hey everyone,
You must have heard about the latest stability update.
There have been major changes to the working of kernel/modem/efs with the roms ME6 And MF2.
Kernel everywhere in this post means the one packed with me6 or mf2 unless specified.
1)All the custom ROMs based on ME6 or MF2 require the modems XXDME4 or DXDMF1. Or you won't get signal.
2)The kernel will modify the efs so that only XXDME4 and DXDMF1 modems can read it.
3)Once you boot up with the latest kernel, the efs will be modified, and you will need to stick to XXDME4 or DXDMF1 modems even after changing ROMs.
4)The modems XXDME4 and DXDMF1 are compatible with all the kernels (even 4.1.1)
5)Modems can't be changed if you are on a rom based on ME6/MF2.
If you haven't Flashed ME6 or MF2 based rom yet. - Backup EFS First
You will need to flash a custom kernel with the rom or a previous stock kernel.
Any kernels in this kernel changer are safe to use.
To flash a rom based on mf2 or me6, download the rom and the kernel changer. Flash the rom as you normally would(try not to choose the modem and kernel).
Then without rebooting, run the kernel changer and choose any kernel you want (the latest safe stock kernel is dme1)
If however, you want to change modem later on , downgrade to a non ME6 or MF2 ROM then change modem.
If you get a corrupt imei after changing modem, restore the EFS backup you made earlier.
If you have flashed ME6 or MF2 based rom. - Your EFS has been modified, No changing Modems(Only XXDME4 or DXDMF1) Backup EFS anyway.
If you aren't getting signal - flash this modem (DME4) or this one (DMF1)
If you made a EFS backup prior to flashing ME6 or MF2 based rom then downgrade to a non ME6 or MF2 ROM then change modem. After reboot you won't have imei. Now restore your EFS.
Even if you do not have a previous EFS backup then try the same procedure, but don't change modem. If you get signal, then you were lucky(happens in case you flashed a custom rom or didn't flash the latest kernel).
If you don't get signal then you could try this-
1)Copy your EFS folder to a safe location.
2)Delete the EFS folder. It will way can't but don't worry.
3)Reboot. You might have factory mode (yellow colour text on screen) and no lockscreen.
4)Copy the backed up EFS folder back. (Replace All)
5)Reboot.
If you can't get rid of factory mode(yellow text overlay) even after recovering imei, try this-
Enter all the commands into terminal emulator one by one and hit enter after everyone. Don't forget to give SuperUser permissions to it.
Honourable Mention -
Thunder Roar Rom has been configured to allow modem change without corrupting efs - http://forum.xda-developers.com/showthread.php?t=2338033
P.S. The Mod himself recommended me to post in android development section.
You must have heard about the latest stability update.
There have been major changes to the working of kernel/modem/efs with the roms ME6 And MF2.
Kernel everywhere in this post means the one packed with me6 or mf2 unless specified.
1)All the custom ROMs based on ME6 or MF2 require the modems XXDME4 or DXDMF1. Or you won't get signal.
2)The kernel will modify the efs so that only XXDME4 and DXDMF1 modems can read it.
3)Once you boot up with the latest kernel, the efs will be modified, and you will need to stick to XXDME4 or DXDMF1 modems even after changing ROMs.
4)The modems XXDME4 and DXDMF1 are compatible with all the kernels (even 4.1.1)
5)Modems can't be changed if you are on a rom based on ME6/MF2.
If you haven't Flashed ME6 or MF2 based rom yet. - Backup EFS First
You will need to flash a custom kernel with the rom or a previous stock kernel.
Any kernels in this kernel changer are safe to use.
To flash a rom based on mf2 or me6, download the rom and the kernel changer. Flash the rom as you normally would(try not to choose the modem and kernel).
Then without rebooting, run the kernel changer and choose any kernel you want (the latest safe stock kernel is dme1)
If however, you want to change modem later on , downgrade to a non ME6 or MF2 ROM then change modem.
If you get a corrupt imei after changing modem, restore the EFS backup you made earlier.
If you have flashed ME6 or MF2 based rom. - Your EFS has been modified, No changing Modems(Only XXDME4 or DXDMF1) Backup EFS anyway.
If you aren't getting signal - flash this modem (DME4) or this one (DMF1)
If you made a EFS backup prior to flashing ME6 or MF2 based rom then downgrade to a non ME6 or MF2 ROM then change modem. After reboot you won't have imei. Now restore your EFS.
Even if you do not have a previous EFS backup then try the same procedure, but don't change modem. If you get signal, then you were lucky(happens in case you flashed a custom rom or didn't flash the latest kernel).
If you don't get signal then you could try this-
1)Copy your EFS folder to a safe location.
2)Delete the EFS folder. It will way can't but don't worry.
3)Reboot. You might have factory mode (yellow colour text on screen) and no lockscreen.
4)Copy the backed up EFS folder back. (Replace All)
5)Reboot.
If you can't get rid of factory mode(yellow text overlay) even after recovering imei, try this-
Enter all the commands into terminal emulator one by one and hit enter after everyone. Don't forget to give SuperUser permissions to it.
Code:
su
rm /efs/FactoryApp/keystr
rm /efs/FactoryApp/factorymode
echo -n ON >> /efs/FactoryApp/keystr
echo -n ON >> /efs/FactoryApp/factorymode
chown 1000.1000 /efs/FactoryApp/keystr
chown 1000.1000 /efs/FactoryApp/factorymode
chmod 0744 /efs/FactoryApp/keystr
chmod 0744 /efs/FactoryApp/factorymode
reboot
Honourable Mention -
Thunder Roar Rom has been configured to allow modem change without corrupting efs - http://forum.xda-developers.com/showthread.php?t=2338033
P.S. The Mod himself recommended me to post in android development section.
Last edited: