EM9291 how to get data connection to work in Linux

I have two identical devices with two different modems. Device A has the ability to switch between Windows and Linux (I have two SSDs that I switch.) Device B, is closed and can only run Linux (no access to the SSD.) For production, we will only run Linux and not have the option of Windows.

For device A, using an EM9291 with T-Mobile. The hardware works in Windows after putting the firmware into “AUTO-SIM” mode. If I think go into Linux, I’m able to ping and get data over the cellular connection.

If I use the same T-Mobile SIM in device B the data connection still doesn’t work. Device B is in AUTO-SIM mode using /fw-download-toolhostx86_64 (see How to set "AUTO-SIM" mode in Linux with default drivers)

Both devices run FC40 with NetworkManager and ModemManager enabled. I also have mobile-broadband-provider-info installed. Device A will work with the APN either determined from the mobile-broadband-provider-info database or set manually. Device B never works. If I set the APN manually, the device gets an IPv4 address, but cannot ping anything.

Is there a way to compare the settings between the two devices to understand why it won’t connect if its not brough up in Windows first?

What modem is used in device B?
EM9291?

You can compare the following AT commands:

ATI3
at!impref?
at+Cfun?
at!PCinfo?
at!gstatus?
AT+Cpin?
at+cgdcont?
at!uims?
at!selrat?
AT!band?

Hi,

Device A and Device B’s hardware are identical. Both have EM9291. The only different is device A is open, so I can change the SSD.

Is there a way to get the output of those commands using the standard Linux drivers? Because the SW drivers aren’t available as an RPM, I can’t install them, so it makes getting the serial interface difficult. (I can’t change the device to USB mode because of a PCIe issue), so I’m stuck with MBIM over PCIe.

are you able to install VMware in Device B?
In this case, you can install a Ubuntu 18 to use AT command

Device A is the engineering machine and device B is the production version. We can’t install a VM. Is it possible to get these over QMI or MBIM?

no, i don’t think you can do AT command over QMI or MBIM

Installing a VMWARE or installing USB driver in device B seems to be the easiest way to debug

BTW, did you see the qcserial driver has been installed in your Fedora?
If yes, you can try the following to add VID PID to qcserial and see if the AT command port can be enumerated: