ModemManager not picking up SIM7600X modem.

Hi!

Using a CM4, ModemManager isn’t picking up the SIM7600 modem on USB.

This is a fresh balenaOS install with no other software running.

Any tips?

root@4df7535:~# lsusb
Bus 001 Device 005: ID 303a:1001 Espressif USB JTAG/serial debug unit
Bus 001 Device 004: ID 1e0e:9001 SimTech, Incorporated SimTech, Incorporated
root@4df7535:~# mmcli -L
No modems were found
root@4df7535:~# journalctl -u ModemManager
Aug 17 15:35:46 localhost ModemManager[1523]: ModemManager (version 1.20.6) starting in system bus...
Aug 17 15:35:49 4df7535 ModemManager[1523]: [device /sys/devices/platform/soc/fe980000.usb/usb1/1-1/1-1.1] creating modem with plugin 'simtech' and '7' ports
Aug 17 15:35:49 4df7535 ModemManager[1523]: [base-manager] modem for device '/sys/devices/platform/soc/fe980000.usb/usb1/1-1/1-1.1' successfully created
Aug 17 15:35:49 4df7535 ModemManager[1523]: [base-manager] couldn't check support for device '/sys/devices/platform/scb/fd580000.ethernet': not supported by any plugin
Aug 17 15:35:49 4df7535 ModemManager[1523]: [base-manager] couldn't check support for device '/sys/devices/platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1': not support>
Aug 17 15:37:11 4df7535 ModemManager[1523]: [modem0/sim0] couldn't load list of preferred networks: QMI operation failed: Transaction timed out
Aug 17 15:37:21 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 2 consecutive times
Aug 17 15:37:21 4df7535 ModemManager[1523]: [modem0/sim0] couldn't load GID1: QMI operation failed: Transaction timed out
Aug 17 15:37:31 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 3 consecutive times
Aug 17 15:37:31 4df7535 ModemManager[1523]: [modem0/sim0] couldn't load GID2: QMI operation failed: Transaction timed out
Aug 17 15:37:36 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 4 consecutive times
Aug 17 15:37:36 4df7535 ModemManager[1523]: [modem0] couldn't load list of own numbers: QMI operation failed: Transaction timed out
Aug 17 15:37:41 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 5 consecutive times
Aug 17 15:37:41 4df7535 ModemManager[1523]: [modem0] couldn't load facility locks: QMI message Get Configuration failed: Transaction timed out
Aug 17 15:37:51 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 6 consecutive times
Aug 17 15:37:51 4df7535 ModemManager[1523]: [modem0] couldn't load initial EPS bearer settings: QMI operation failed: Transaction timed out
Aug 17 15:38:01 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 7 consecutive times
Aug 17 15:38:11 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 8 consecutive times
Aug 17 15:38:11 4df7535 ModemManager[1523]: [modem0] couldn't load SUPL server: QMI operation failed: Transaction timed out
Aug 17 15:38:21 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 9 consecutive times
Aug 17 15:38:21 4df7535 ModemManager[1523]: [modem0] couldn't load supported assistance data types: QMI operation failed: Transaction timed out
Aug 17 15:38:26 4df7535 ModemManager[1523]: [modem0] port cdc-wdm0 timed out 10 consecutive times, marking modem as invalid
Aug 17 15:38:26 4df7535 ModemManager[1523]: [modem0] error initializing: Operation was cancelled
root@4df7535:~# lsusb -t
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dwc2/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=, Driver=hub/2p, 480M
        |__ Port 1: Dev 4, If 0, Class=, Driver=option, 480M
        |__ Port 1: Dev 4, If 1, Class=, Driver=option, 480M
        |__ Port 1: Dev 4, If 2, Class=, Driver=option, 480M
        |__ Port 1: Dev 4, If 3, Class=, Driver=option, 480M
        |__ Port 1: Dev 4, If 4, Class=, Driver=option, 480M
        |__ Port 1: Dev 4, If 5, Class=, Driver=qmi_wwan, 480M
        |__ Port 2: Dev 5, If 1, Class=, Driver=cdc_acm, 12M
        |__ Port 2: Dev 5, If 0, Class=, Driver=cdc_acm, 12M
2 Likes

Ha haa!! Got it to work.

ModemManager filters to the rescue! Is there a way for this to be automated? I’m assuming that the filter ID’s can change.

Didn’t help after a reboot though. Any other tips?

/etc/udev/rules.d/98.rules

    ACTION!="add|change|move", GOTO="mm_allowlist_internal_modem_end"
    ATTRS{idVendor}=="1e0e", ATTRS{idProduct}=="9001", ENV{ID_MM_DEVICE_PROCESS}="1"
    LABEL="mm_allowlist_internal_modem_end"
root@4df7535:~# mmcli -L
    /org/freedesktop/ModemManager1/Modem/0 [QUALCOMM INCORPORATED] SIMCOM_SIM7600G-H
1 Like

Hi,

Where did you configure the udev rules?
If it wasn’t in the config.json (details); odds are they were lost on reboot.

The log you posted shows a number of timeouts relating to the SIM card.
Do you have one inserted and properly configured?
Bad SIM cards and maxed out data plans can be a great source of headaches when it comes to setting up gsm devices.

2 Likes

Hmm, Tried getting this to work a few times with that method, but every attempt lead the CM4 not booting anymore…

Ok this was weird.

The device was detected briefly but then disappeared.

The modem is still seen on lsusb though.

So from what I understand, it acutally talks to the modem, but there is an issue with the SIM card in the modem?

The SIM’s work, and I got it to connect once.

image

Aug 24 15:59:46 localhost ModemManager[1527]: ModemManager (version 1.20.6) starting in system bus...
Aug 24 15:59:49 5422980 ModemManager[1527]: [device /sys/devices/platform/soc/fe980000.usb/usb1/1-1/1-1.1] creating modem with plugin 'simtech' and '7' ports
Aug 24 15:59:49 5422980 ModemManager[1527]: [base-manager] modem for device '/sys/devices/platform/soc/fe980000.usb/usb1/1-1/1-1.1' successfully created
Aug 24 15:59:50 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/scb/fd580000.ethernet': not supported by any plugin
Aug 24 15:59:50 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1': not supported by any plugin
Aug 24 16:00:16 5422980 ModemManager[1527]: [modem0/sim0] couldn't load list of preferred networks: QMI operation failed: Transaction timed out
Aug 24 16:00:26 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 2 consecutive times
Aug 24 16:00:26 5422980 ModemManager[1527]: [modem0/sim0] couldn't load GID1: QMI operation failed: Transaction timed out
Aug 24 16:00:36 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 3 consecutive times
Aug 24 16:00:36 5422980 ModemManager[1527]: [modem0/sim0] couldn't load GID2: QMI operation failed: Transaction timed out
Aug 24 16:00:41 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 4 consecutive times
Aug 24 16:00:41 5422980 ModemManager[1527]: [modem0] couldn't load list of own numbers: QMI operation failed: Transaction timed out
Aug 24 16:00:46 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 5 consecutive times
Aug 24 16:00:46 5422980 ModemManager[1527]: [modem0] couldn't load facility locks: QMI message Get Configuration failed: Transaction timed out
Aug 24 16:00:56 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 6 consecutive times
Aug 24 16:00:56 5422980 ModemManager[1527]: [modem0] couldn't load initial EPS bearer settings: QMI operation failed: Transaction timed out
Aug 24 16:01:05 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/scb/fd580000.ethernet': not supported by any plugin
Aug 24 16:01:05 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1': not supported by any plugin
Aug 24 16:01:06 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 7 consecutive times
Aug 24 16:01:16 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 8 consecutive times
Aug 24 16:01:16 5422980 ModemManager[1527]: [modem0] couldn't load SUPL server: QMI operation failed: Transaction timed out
Aug 24 16:01:26 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 9 consecutive times
Aug 24 16:01:26 5422980 ModemManager[1527]: [modem0] couldn't load supported assistance data types: QMI operation failed: Transaction timed out
Aug 24 16:01:31 5422980 ModemManager[1527]: [modem0] port cdc-wdm0 timed out 10 consecutive times, marking modem as invalid
Aug 24 16:01:31 5422980 ModemManager[1527]: [modem0] error initializing: Operation was cancelled
Aug 24 16:02:50 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/scb/fd580000.ethernet': not supported by any plugin
Aug 24 16:02:50 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1': not supported by any plugin
Aug 24 16:05:38 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/scb/fd580000.ethernet': not supported by any plugin
Aug 24 16:05:38 5422980 ModemManager[1527]: [base-manager] couldn't check support for device '/sys/devices/platform/soc/fe300000.mmcnr/mmc_host/mmc1/mmc1:0001/mmc1:0001:1': not supported by any plugin

WELP, That was a PITA. Turns out it was my SIM card that was acting up as @TJvV suspected…

My personal SIM that I was testing with has a secure identification module inside the SIM card (Finland). and I suspect that is what was messing with the SIM7600X module.

I tested an IOT SIM and it worked straigth away.

1 Like

Glad to hear you managed to get it to work with a different SIM card :slight_smile:

1 Like

Glad you figured it out @danedwards_ee and thanks for sharing here!

shoutout to @TJvV for the suggestions :heart:

Cheers

1 Like

No… still facing this issue…

Could @aleksander0m have any insight what could be wrong?

The SIM that gives this error, works with a different board.

Here is a ModemManager log file with debugging flag.

https://sprunge.us/UR3gvX

The Modem is actually registered and connected to the network, but something in ModemManager is not happy…

Does anyone know if there is a better forum or something for ModemManager?

Hi,

Best I can offer for now is the official contact page where they refer to the mailing list, gitlab and their matrix/IRC channel.

Out of curiousity: does the other board run the same software?
Maybe a difference in handling the APN and/or PIN?

Yeah this seems to be an issue with ModemManager. Made an issue on their gitlab.

With the other board, I physically used the same CM4 and SIM7600G as in all the tests.

Using AT commands, I am able to chat to the modem to confirm it actually does connect to the network.

I suspect now that balenaOS might be somehow interfering with ModemManager.

I just created a fresh raspbian install on the CM4 and installed ModemManager, this issue doesn’t happen at all.

@danedwards_ee could you please confirm the version of the ModemManager your are using on the raspbian install? Thanks!

1.20.4 is in fact the installed version on the latest rasbian build… odd.

That’s compared to the 1.20.6 on BalenaOS.

oh wow! let me check with the team!

in the other hand, did you check if the simcom modem needs any specific drivers or libraries?

This issue seems to be with certain SIMs and balenaOS and/or ModemManager.

Otherwise the SIM7600 has always worked with balena, including balenaFin.

@danedwards_ee Could you please confirm what SIMs are you using? I assume that the Raspbian one used the same simcard and it was in the same location?

We have now tested an arrangement of SIM cards, IoT, Prepaid and contract from an arrangement of operators.

We have only had issues with contract SIMs. and peculiarly enough, older (few years) SIM cards.

As an experiment, I got a new SIM to test with (personal contract) and it then worked fine.

This is an extremely odd unicorn case.

Edit: Just attempted to use my personal contract SIM. Works fine.

New sanity check test:

  • Raspbian CM4 instead of the balenaOS CM4
  • Same motherboard & modem
  • “Bad” SIM that doesn’t work with balenaOS

Works fine, the modem isn’t considered invalid and connects to the internet.

image

1 Like