Sierra modem usb unstable

Hi ,
I have a balenaFin v1.1 with a Sierra MC-WP7607 modem connected on mPci express connector.
I can’t have 3G connection. When I check kernel log I see device is recognized but there are a lot of device attached/disconnected.

My kernel log :

usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB0
[24607.350864] qcserial 1-1.2:1.2: Qualcomm USB modem converter detected
[24607.351227] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB1
[24607.352878] qcserial 1-1.2:1.3: Qualcomm USB modem converter detected
[24607.353226] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB2
[24607.356107] qmi_wwan 1-1.2:1.8: cdc-wdm0: USB WDM device
[24607.357821] qmi_wwan 1-1.2:1.8 wwan0: register ‘qmi_wwan’ at usb-3f980000.usb-1.2, WWAN/QMI device, 8e:9c:aa:d4:b3:17
[24623.031956] usb 1-1.2: USB disconnect, device number 68
[24623.032678] qcserial ttyUSB0: Qualcomm USB modem converter now disconnected from ttyUSB0
[24623.032775] qcserial 1-1.2:1.0: device disconnected
[24623.033482] qcserial ttyUSB1: Qualcomm USB modem converter now disconnected from ttyUSB1
[24623.033657] qcserial 1-1.2:1.2: device disconnected
[24623.035080] qcserial ttyUSB2: Qualcomm USB modem converter now disconnected from ttyUSB2
[24623.035223] qcserial 1-1.2:1.3: device disconnected
[24623.035759] qmi_wwan 1-1.2:1.8 wwan0: unregister ‘qmi_wwan’ usb-3f980000.usb-1.2, WWAN/QMI device
[24623.423586] usb 1-1.2: new high-speed USB device number 70 using dwc_otg
[24623.558966] usb 1-1.2: config 1 has an invalid interface number: 16 but max is 6
[24623.558974] usb 1-1.2: config 1 has an invalid interface number: 17 but max is 6
[24623.558979] usb 1-1.2: config 1 has an invalid interface number: 17 but max is 6
[24623.558985] usb 1-1.2: config 1 has an invalid interface number: 18 but max is 6
[24623.558990] usb 1-1.2: config 1 has an invalid interface number: 18 but max is 6
[24623.558997] usb 1-1.2: config 1 has an invalid interface number: 8 but max is 6
[24623.559002] usb 1-1.2: config 1 has no interface number 1
[24623.559008] usb 1-1.2: config 1 has no interface number 4
[24623.559012] usb 1-1.2: config 1 has no interface number 5
[24623.559017] usb 1-1.2: config 1 has no interface number 6
[24623.567959] usb 1-1.2: New USB device found, idVendor=1199, idProduct=68c0, bcdDevice= 3.18
[24623.567968] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[24623.567973] usb 1-1.2: Product: Sierra Wireless WP7607
[24623.567978] usb 1-1.2: Manufacturer: Sierra Wireless, Incorporated
[24623.567983] usb 1-1.2: SerialNumber: V394910017031011
[24623.589042] qcserial 1-1.2:1.0: Qualcomm USB modem converter detected
[24623.589218] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB0
[24623.590065] qcserial 1-1.2:1.2: Qualcomm USB modem converter detected
[24623.590227] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB1
[24623.591069] qcserial 1-1.2:1.3: Qualcomm USB modem converter detected
[24623.591221] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB2
[24623.593174] qmi_wwan 1-1.2:1.8: cdc-wdm0: USB WDM device
[24623.594964] qmi_wwan 1-1.2:1.8 wwan0: register ‘qmi_wwan’ at usb-3f980000.usb-1.2, WWAN/QMI device, 8e:9c:aa:d4:b3:17
[24828.599961] usb 1-1.2: USB disconnect, device number 70
[24828.602008] qcserial ttyUSB0: Qualcomm USB modem converter now disconnected from ttyUSB0
[24828.602100] qcserial 1-1.2:1.0: device disconnected
[24828.602816] qcserial ttyUSB1: Qualcomm USB modem converter now disconnected from ttyUSB1
[24828.602902] qcserial 1-1.2:1.2: device disconnected
[24828.603601] qcserial ttyUSB2: Qualcomm USB modem converter now disconnected from ttyUSB2
[24828.603685] qcserial 1-1.2:1.3: device disconnected
[24828.604281] qmi_wwan 1-1.2:1.8 wwan0: unregister ‘qmi_wwan’ usb-3f980000.usb-1.2, WWAN/QMI device
[24842.974987] usb 1-1.2: new high-speed USB device number 71 using dwc_otg
[24843.109110] usb 1-1.2: config 1 has an invalid interface number: 8 but max is 3
[24843.109127] usb 1-1.2: config 1 has no interface number 1
[24843.118094] usb 1-1.2: New USB device found, idVendor=1199, idProduct=68c0, bcdDevice= 3.18
[24843.118110] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[24843.118120] usb 1-1.2: Product: Sierra Wireless WP7607
[24843.118130] usb 1-1.2: Manufacturer: Sierra Wireless, Incorporated
[24843.118139] usb 1-1.2: SerialNumber: V394910017031011
[24843.120276] qcserial 1-1.2:1.0: Qualcomm USB modem converter detected
[24843.120720] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB0
[24843.122357] qcserial 1-1.2:1.2: Qualcomm USB modem converter detected
[24843.122732] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB1
[24843.124383] qcserial 1-1.2:1.3: Qualcomm USB modem converter detected
[24843.124730] usb 1-1.2: Qualcomm USB modem converter now attached to ttyUSB2
[24843.138953] qmi_wwan 1-1.2:1.8: cdc-wdm0: USB WDM device
[24843.140381] qmi_wwan 1-1.2:1.8 wwan0: register ‘qmi_wwan’ at usb-3f980000.usb-1.2, WWAN/QMI device, 8e:9c:aa:d4:b3:17

On my computer (ubuntu) is work fine. Are there a specific configuration to use mpci express module on balena fin ?

thanks,
Ben

Hey Ben. It seems that a kernel module required by your device might be missing in balenaOS.

If you figure out the requirements, you can build an out-of-tree kernel module. We have an example in https://github.com/balena-os/kernel-module-build

Hi after few days to try resolve my issue I give you feedback.

Like you said, Sierra advises to use his qmi driver. I installed your raspbian os version on balenaFIn to test Sierra qmi driver and i always same results. My sierra module is attached and disconnected regularly.
Do you think my Sierra module can have a power consumption more important than BalenaFin usb threshold ?

Sierra driver : https://source.sierrawireless.com/resources/airprime/software/usb-drivers-linux-qmi-software-latest/#sthash.GkRKppcg.dpbs

Ben

Does the PSU you’re using supply enough amps for the modem? I would try and find some specs on the modems power consumption to see if that’s the cause.

I use a 24V-1A PSU. Does that seem OK to supply balenaFin and modem ?

Hello there.

Based on the manual, WP7607 modem commands the following operating conditions: 3.2-4.3V and 0.8-3.0A.
A Fin itself commands 6-24V and at least 12.5W.

Power does not seem to be the issue here unless it’s a bad PSU and is not working as expected.
Also, could you test another modem to rule out a Fin hardware issue?

We have tested 3 balenaFin and we have same behavior on each of them. Unfortunatly we don’t have other 3G module than Sierra Wp7607 module to test it on the board.

Just to be certain, can you verify that you used 3 different balenaFin with 3 different PSUs?

Each balenaFin have his PSU. I tried another PSU ( 12v - 3A) and I have same behavior. Are there regulators on balenaFin that limit the power transmission to the usb interface ?

You can find kernel log attached if it helps
kernel.log (47.7 KB)
Ben

Hey Ben, I have two suggestions to try.
1.) if possible try power the modem from a powered USB hub, when I do this I use one of https://www.amazon.com/Adapter-Express-Converter-Support-Wireless/dp/B07FJXNLLT . However looking at the logs it doesn’t seem like power issues, from experience when I have had modems fail from power issues the kernel and ModemManager logs are pretty clear about it and often you will see ugly stack traces.
2.) Another thing to try is to download the latest balenaOS for the fin and flash that. You can download a fully unmanaged 2.51 version from https://www.balena.io/os/#download . Please download the Development version and boot that up with a connection to ethernet. You should then be able to discover it on your network using avahi-browse(on linux) or dns-sd -B _ssh._tcp . (on macOS). You can connect to it using ssh via ssh root@<UUID>.local -p22222 where UUID is the name you discover on the network.

The reason I suggest trying it on balenaOS is that we compile newer kernel, modemmanager and NetworkManager into our OS than you would find on raspbian. Raspbian tends to be slower to update these packages for stability reasons, so my suspicion is that your Ubuntu desktop has newer versions of these packages and that is why it doesn’t fail.

I don’t have this mPci express USB converter but I will order it.

I flashed my balena Fin with last balenaOS image (2.51.1) and I have a same behavior. I had connection with module Sierra on Ubuntu with mmcli v1.10.0 and nmcli v1.10.6. it’s old versions. It don’t seem like package versions issues.

I realized other test. I have a mangoH red board with a WP8548 modem. When I connect it via USB with my BalenaFin, BalenaOS detect it and I have a stable behavior of modem. The difference with this test is that modem is supply by mangoRedH and I don’t used mPci express connector.

Ah that is interesting, it could be something to do with the way the PCIe lines are connected up on the fin. I know we broke out some pins to connect to GPIOs so that its possible to electrically reset some modems, but unfortunately the modems don’t all exactly implement the PCIe specification correctly so there is a chance they break out a line there that causes trouble, its hard to know without our hardware guys having access to the exact modem version. Testing the modem with a mPCI USB converter will be a very interesting test as that will allow us to further rule out or pin point the actual fin pcie connection lanes.