Android RIL EM7455 LPM issues (SOLVED)

How can I power up the em7455 with the android ril when the em7455 is always in LPM low power mode at boot. Only available option I can find from searching is to implement this command into init.rc or a script:

echo -e "AT+CFUN=1\r\n" > /dev/ttyUSB2

Any help on this issue would be great since there seems to be now way to permanently disable LPM mode on em7455:

did the Android RIL send out AT+CFUN=0 when boot up?
(you can check by “logcat -b radio -v time &”)

I dont see any instances of AT+CFUN in my ril radio log. I am seeing an error here:

02-14 10:03:34.428 E/use-Rlog/RLOG-AT( 242): — AT!UNLOCK="A710"

02-14 10:03:34.428 I/use-Rlog/RLOG-AT( 242): at_port_setup started

02-14 10:03:34.428 I/use-Rlog/RLOG-AT( 242): AT(15)> AT!UNLOCK=“A710”

02-14 10:03:34.428 D/use-Rlog/RLOG-AT( 242): readline received cmd(b): o

02-14 10:03:34.429 I/use-Rlog/RLOG-AT( 242): AT(15)< ERROR

02-14 10:03:34.429 E/use-Rlog/RLOG-RIL( 242): initializeCommon error by AT!UNLOCK command

02-14 10:03:34.429 E/use-Rlog/RLOG-AT( 242): — AT!BCRECOVERTEST=0

02-14 10:03:34.429 I/use-Rlog/RLOG-AT( 242): at_port_setup started

02-14 10:03:34.429 I/use-Rlog/RLOG-AT( 242): AT(15)> AT!BCRECOVERTEST=0

02-14 10:03:34.429 D/use-Rlog/RLOG-AT( 242): readline received cmd(b): o

02-14 10:03:34.432 I/use-Rlog/RLOG-AT( 242): AT(15)< ERROR

Full log on pastebin:

Let me also note that on the same OS and hardware setup the MC7700 works perfect and initializes just fine so my assumption was that the em7455 needs some sort of FCC auth or command in ril to exit LMP mode on init.

When in AT ril mode the em7455 powers up fine but no new wwan device this issue is only in QMI mode which is default in android.

Should the command AT!UNLOCK=“A710” be AT!ENTERCND="A710"

Thanks a million for any pointers :slight_smile:

Found this which is interesting: command at!unlock="A710" doesn't work

Is the android rill using the wrong AT commands for the em7455? In the documentation the em/mc7455 is listed as supported but I am using android ril 5.1.1 since I am on a 32bit android os and cant use the most recent arm64 android ril.

the AT!unlock and AT!BCRECOVERTEST are for voice enabled module.
You can disable the voice feature by setting the property of “ro.sierra.voice”.

BTW, not sure if "setprop persist.sierra.sim_ready_delay 15 " can help you on this power off issue.
You can give a try.

Thank you for the reply. I will try the sierra.sim delay 15. Much appreciation for the support and assistance.

which em7455 have voice enabled?

i believe yes…

which firmware allows for this?

can you open a new topic to discuss this?

The em7455 still does not want to power up in Android (works only in linux atm) I have an MC7700 that works fine so I am still puzzled why the Android RIL is not getting the em7455 out of LPM.

I flashed this em7455 to generic 9071 from a Dell DW5811e and now I am thinking this could be the issue. Does Dell lock their devices only to be used on Linux/Windows?

Could there possibly be an early boot workaround to bring the device into a ready state?

Thanks again for any pointers @jyijyi

I noticed this also which is another failure:

D/use-Rlog/RLOG-RIL( 225): SWI Device: Info
D/use-Rlog/RLOG-RIL( 225): Firmware boot version: SWI9X30C_02.30.01.01
D/use-Rlog/RLOG-RIL( 225): SKU(PRI) string: 1102424
I/use-Rlog/RLOG-RIL( 225): telephony.lteOnGsmDevice=0
E/use-Rlog/RLOG-RIL( 225): getFirmwareInfoTechQMI: Info invalid after initFirmwareInfoQMI()

no, should be a quick and easy reponse if you know it.

This will make the forum in a mess …
I cannot register network here for this module, have you tried to dial phone call to it?

Probably won’t.
I am asking because of this:

Which suggests that there are no voice-enabled firmwares for the EM7455.

can you change the FW so that the “Carrier string” returned by getFirmwareInfoTechQMI() will become
Verizon : 5 or 101
Or Sprint: 11 or 102

and see if we can bypass this error from “getFirmwareInfoTechQMI: info invalid, initialize again”

Thanks again for the assistance. So you recommend I change the carrier config via AT command? Right now I am using AT&T for T-Mobile and Google Fi 2 use. So I should change carrier to Verizon and try again.

Thanks again @jyijyi

Edit: here are the results of at!IMPREF? and AT!IMAGE?

preferred fw version:
preferred carrier name: ATT
preferred config name: ATT_002.049_002
current fw version:
current carrier name: ATT
current config name: ATT_002.049_002


FW 1 GOOD 4 0 0 ??
FW 2 GOOD 2 0 0 ??
FW 3 GOOD 6 0 0 ??
FW 4 GOOD 5 0 0 ??
Max FW images: 4
Active FW image is at slot 3

PRI FF GOOD 0 0 0 002.049_002
PRI FF GOOD 0 0 0 002.046_001
PRI FF GOOD 0 0 0 002.012_002
Max PRI images: 50


Okay making some good progress now. Changing the at!IMPREF to “Verizon” brought the the em7455 online now so this a great but now I’m stuck in cdma mode even when setting lte gsm on device = 1 it defaults to cdma. How can I use gsm if the device only comes online with cdma Verizon? Can I use at!IMPREF=Auto-Sim" ? I will test that next.

Right now I’m just happy to see the Android RIL working with the em7455 :slight_smile:

I spoke too soon. Looks like the RIL auto switched to gsm. I’ll post test results in a bit…

Well im sure there is some mismatch in the firmware now cause i am only getting UMTS and not LTE on T-Mobile and Google Fi 2. ill keep messing with the carrier setting and the image pref. Thanks for all your help @jyijyi