Em9191 struck in low power mode

Hi all,

I am trying to bring up EM9191 on Linux kernal 4.14 and the module is struck in Low Power Mode. I had gone through the forums, but most of the solutions doest work as the current module is locked. I also tested the module in ubuntu with kernal 4.15, here the modem works fine. In the EM9191 spec, its mentioned that pin 8 is meant for w_diable and it can be set using the host - I had searched but didn’t get solution. I am using the qcserial driver, that’s discussed for committing into Linux main branch
https://lore.kernel.org/linux-usb/20210611134507.8780-1-stefan.bruens@rwth-aachen.de/T/

Following are the logs
mbimcli -d /dev/cdc-wdm0 --query-radio-state
[/dev/cdc-wdm0] Radio state retrieved:
Hardware radio state: ‘on’
Software radio state: ‘off’

at!gstatus?
!GSTATUS:
Current Time: 5405 Temperature: 32
Modem Mitigate Level: 0 ModemProc Mitigate Level: 0
Reset Counter: 1 Mode: LOW POWER MODE

AT!PCINFO?
State: Low Power Mode
LPM voters - Temp:0, Volt:0, User:0, W_DISABLE:1, IMSWITCH:0, BIOS:0, LWM2M:0, OMADM:0, FOTA:0, RFCAL:0
LPM persistence - None

OK

AT!PCVOLT?

Volt state: Normal
Power supply voltage: 3302 mV (ADC: 16964)
OK

at+cfun=1
+CME ERROR: operation not supported

AT!PCOFFEN?
ERROR

Thanks
kk

Hi kevinblue839,

Please provide this by the following commands:

AT!ENTERCND=“A710”
AT!PCOFFEN?

Thanks,

Hi Jerdung,

My apologies for the delayed response. I think the above at-cmds don’t work as the modem is password protected. Following are their outputs

AT!ENTERCND=A710
ERROR

AT!PCOFFEN?
ERROR

I was also comparing the entries under the path “/sys/bus/usb/devices/” in Ubuntu and the target os(4.14 kernel-based). I see that the power option is missing in the target os. Could this be the issue ? I also tried swapping the modules and the same issue is seen.

Thanks
kk

Hi kevinblue839,

The password A710 should be in double quotation marks. Could you try again?
AT!ENTERCND=“A710”

Thanks,

Hi Jerdung,

Thanks for the suggestion, setting the double quotes in "AT!ENTERCND=“A710"” worked. I was able to see it online.

at!gstatus?
!GSTATUS:
Current Time: 119 Temperature: 45
Modem Mitigate Level: 0 ModemProc Mitigate Level: 0
Reset Counter: 1 Mode: ONLINE
System mode: WCDMA PS state: Not attached
WCDMA band: WCDMA 2100
WCDMA channel: 10782
GMM (PS) state:DEREGISTERED NO IMSI
MM (CS) state: IDLE NO IMSI

WCDMA L1 state:L1M_PCH_SLEEP LAC: 1b6d (7021)
RRC state: DISCONNECTED UTRAN Cell ID: 013129cd (19999181)
RxM RSSI C0: — RxD RSSI C0: -95
RxM RSSI C1: — RxD RSSI C1: —

OK

However, in Ubuntu the device comes up online without executing any atcmds. Can we set the W_DISABLE pin to high from the usb-core utils.

Thanks,
kk

Hi kevinblue839,

Currently, I can only set W_DISABLE low/high on devkit. The pin is located at the position below:

Thanks,