EM7455, Deactivate Low-Power-Mode

I have an EM7455, which will power on with the LPM enabled.

at!pcinfo?
State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:1
LPM persistence - None

I then use the QMI command to set the “FCC authentication” as its called:

qmicli -d /dev/cdc-wdm0 --dms-set-fcc-authentication
[/dev/cdc-wdm0] Successfully set FCC authentication

The device is then in online mode:

State: Online
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:0
LPM persistence - None

So far so good, is it possible to permanently disable this “feature”? I have another EM7455 which does not require this procedure, so it is possible somehow.

Manufacturer: Sierra Wireless, Incorporated
Model: EM7455
Revision: SWI9X30C_02.08.02.00 r5428 CARMD-EV-FRMWR2 2016/01/06 20:38:53

What is the result of AT!PCOFFEN?. you can see from the AT guide that modem will enter into low power mode when ‘W_DISABLE’ is asserted. Is this the case for you??

-Alex

Thank you for your answer.

‘W_DISABLE’ is not asserted, ‘BIOS’ is asserted.

I can show you the output in the next hours possibly.

AT!PCOFFEN?
0

OK

Changing it to 2 does not help, but I would not have assumed so.

AT!PCOFFEN?
2

OK
at!pcinfo?
State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:1
LPM persistence - None

Hi,
try the following and see if it’s working…

  1. AT!ENTERCND=“A710”
  2. AT!CUSTOM=“CFUNPERSISTEN”,0

Then reboot and see if AT+CFUN=0 and then 1. then do a !reset.

-Alex

Thanks,

still not working.

AT!ENTERCND="A710"
OK
AT+CFUN=1
+CME ERROR: operation not supported

at!pcinfo?
State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:0, IMSWITCH:0, BIOS:1
LPM persistence - None

Without the magic FCC command it won’t come out of the LPM.

There has to be a way to get rid off it, since another card is working without the FCC sequence.

Hi,
show answer:
AT!ENTERCND=“A710”
AT!PCFCCAUTH?

AT!PCFCCAUTH=?

Thanks for this command, I have not found this in the AT Commands documentation.

AT!PCFCCAUTH?
NV Setting: 1
FCC Auth Enabled: 1
FCC Lock State: 1
AT!PCFCCAUTH=?
ERROR

@Barton :

what exactly is this command? Even I didn’t hear about this command earlier…

@fs1: Yes… I tried the mentioned steps when my module was in Low power mode with ‘W_DISABLE’. If you succeeded in recovering the module, let me know the steps :smiley:

-Alex

Hot to change the PRI?

The working device has this:

Current Firmware info
---------------------
Model ID: EM7455
BOOT Version: SWI9X30C_02.08.02.00
AMSS Version: SWI9X30C_02.08.02.00
SKU ID: 1102527
Package ID:
Carrier: 1
PRI version: 001.000
Current Carrier Name: GENERIC
Current Cairier Version: 002.007_000
Build ID: 02.08.02.00_GENERIC

CWE Image Fields
----------------
BOOT Version: SWI9X30C_02.08.02.00 r5428 CARMD-EV-FRMWR2 2016/01/06 20:38:53
AMSS Version: SWI9X30C_02.08.02.00 r5428 CARMD-EV-FRMWR2 2016/01/06 20:38:53
PRI Version: 9904802 001.000 Generic-Laptop

The FCC one has this:

Current Firmware info
---------------------
Model ID: EM7455
BOOT Version: SWI9X30C_02.08.02.00
AMSS Version: SWI9X30C_02.08.02.00
SKU ID: 1102662
Package ID:
Carrier: 1
PRI version: 001.003
Current Carrier Name: GENERIC
Current Cairier Version: 002.007_000
Build ID: 02.08.02.00_GENERIC

CWE Image Fields
----------------
BOOT Version: SWI9X30C_02.08.02.00 r5428 CARMD-EV-FRMWR2 2016/01/06 20:38:53
AMSS Version: SWI9X30C_02.08.02.00 r5428 CARMD-EV-FRMWR2 2016/01/06 20:38:53
PRI Version: 9905046 001.003 Lenovo-Laptop

Edit: changing does nothing. How to change NV settings?

Yes, the PRI is irrelevant. The NV setting you are looking for is written as part of the OEM vendor config. If you download the firmware package from whatever OEM vendor you got this modem from and unpack it, then you will find 3 different firmware parts (multiplied by the number of supported operators):

  1. the actual firmware image, for example SWI9X30C_02.08.02.00.cwe
  2. the operator specific NV settings and other operator files (PRI), for example SWI9X30C_02.08.02.00_GENERIC_002.007_000.nvu
  3. the OEM specific NV settings, for example 1102662_9905046_EM7455_02.05.07.00_00_Lenovo-Laptop_001.003_000.nvu

The latter will contain the FCC auth related setting. I have not tried, so I cannot tell you whether the variable can be changed. But I believe it is likely if you know how to create or modify .nvu files. It might also be possible using other NVRAM modification methods. I don’t know…

Note that all three file types mentioned above are containers with an aribtratry number of different files and/or images. The firmware is responsible for unpacking them and interpreting the files within, and e.g. apply specific files as NVRAM variable updates given some condition. Exactly how this is done, the restrictions that apply and other necessary info, is probably only documented internally. Or possibly to OEM vendors as well? Regular end users like us don’t have access to it. But we can always guess :slight_smile:

Thanks, the problem is that even if I flash the regular NVU from source.sierrawireless the FCC setting still applies.

Yes, I believe that is by design. It is Non-Volatile…

You have to actively disable the setting. The regular NVU files won’t do that. And you might also have to replace the OEM NVUP file? That might also be persistent if written to flash before. I don’t know.

Unfortunateley I have no idea on how to do that, I flashed all available files from the source.

You might wonder why I want this, with the FCC I can’t use the modem in MBIM mode. I can’t send the FCC authentication.

Switching from MBIM to QMI, then load the GobiNet driver helps, but I can’t change back to MBIM without resetting the device, which in turn will reactivate the FCC.

Hi,
Can you try below steps and see if it’s working or not…

To set Set at!pcfccauth=1:
Step 1.
at!unlock=“A710”
at!pcfccauth=1
at!pcfccauth?

Step 2. Reset device

To set Set at!pcfccauth=0:
at!unlock=“A710”
at!pcfccauth=0

Step 2. Reset device

Let me know whether this is helpful

-Alex

It would be great to know whether the tip from Rex_alex works.

But just FYI in case it doesn’t: You can send the QMI FCC auth request in MBIM mode. Look at how it is implemented in ModemManager/libqmi/libmbim. This Just Works with the recently released ModemManager 1.6.

Privileges have a password “A710” not enough.
For solutions need used engenering mode, by AT!OPENLOCK…

Example, for my Sierra EM7305:

=== activate FCC_AUTH ===

at!entercnd="A710"
OK

AT!PCFCCAUTH?
NV setting: 0
Auth enabled: 0
Lock state: 0
OK

AT!PCFCCAUTH=1
ERROR

AT!OPENLOCK?
8101A18AB3C3E66A
OK
AT!OPENLOCK="D1E128FCA8A963ED"
OK

AT!PCFCCAUTH=1
OK

AT!PCFCCAUTH?
NV setting: 1
Auth enabled: 0
Lock state: 0
OK

AT!RESET
OK

-- after reset---

at!entercnd="A710"
OK

AT!PCFCCAUTH?
NV setting: 1
Auth enabled: 1
Lock state: 0
OK

=== deactivate FCC_AUTH ===

at!entercnd="A710"
OK

AT!PCFCCAUTH?
NV setting: 1
Auth enabled: 1
Lock state: 0
OK

AT!PCFCCAUTH=0
ERROR

AT!OPENLOCK?
9F618EF3F0FCE7CE
OK
AT!OPENLOCK="CFE6B46892423A75"
OK

AT!PCFCCAUTH=0
OK

AT!PCFCCAUTH?
NV setting: 0
Auth enabled: 1
Lock state: 0
OK

AT!RESET
OK

-- after reset---

at!entercnd="A710"
OK

AT!PCFCCAUTH?
NV setting: 0
Auth enabled: 0
Lock state: 0
OK

On my intended device there is no ModemManager available, which makes it a bit complicated. (umbim does not do this afair)

Does not work unfortunateley.

at!unlock="A710"
ERROR
at!pcfccauth?
ERROR
AT!ENTERCND="A710"
OK
at!pcfccauth?
NV Setting: 1
FCC Auth Enabled: 1
FCC Lock State: 1


OK
at!pcfccauth=0
ERROR

Thank you for this post, I can’t get into the “engenering” mode with at!unlock, I think this may be a challegene-response sequence. As it changes with every at!unlock? command.

AT!OPENLOCK?
6FF19EEBB325DB2D

OK
AT!OPENLOCK="CFE6B46892423A75"
ERROR

For EM7305, I use a Response Generator to AT!OPENLOCK by this link:
github.com/bkerler/SierraWirelessGen

For EM7455 he can not work … The algorithm has changed …

Yeah I tried that too, but it didn’t work.