LE910C4-NF on LTE Base HAT - wwan0 continuously goes up and down

I’ve seen similar posts before, but the resolution involved the support person getting remote access to fix it.

I’ve recently installed the 3G/4G&LTE Base hat with LE910C4-NF on a raspberry pi 4b:
PRETTY_NAME=“Raspbian GNU/Linux 12 (bookworm)”
NAME=“Raspbian GNU/Linux”
VERSION_ID=“12”
VERSION=“12 (bookworm)”
VERSION_CODENAME=bookworm
ID=raspbian
ID_LIKE=debian

The CORE ui shows that it is connected on wlan0. The UI shows that it was connected in the past and transmitted 0.04MB of data.

ifconfig -a shows that wwan0 appears with an inet6 address, but not inet4. Periodically the inet6 address disappears.

That cycle coincides with these entries in cm_log:

2024-03-02 13:41:30,458 --> default.py         INFO     Interface wwan0 is down.
2024-03-02 13:41:35,511 --> default.py         INFO     Interface wwan0 is up.
2024-03-02 13:41:55,767 --> cm.py              ERROR    reset_connection_interface() -> Modem interface couln't be detected.
2024-03-02 13:41:57,173 --> default.py         INFO     USB interface is reset...
2024-03-02 13:41:58,516 --> cm.py              ERROR    check_internet() -> No internet!
2024-03-02 13:41:58,716 --> default.py         INFO     Modem is resetting softly...
2024-03-02 13:41:59,121 --> default.py         INFO     Modem is deregistered from network
2024-03-02 13:42:35,154 --> monitor.py         INFO     Monitoring data updated with changes.
2024-03-02 13:42:36,160 --> identify.py        INFO     Tyring to detect modem...
2024-03-02 13:42:38,294 --> identify.py        INFO     [?] System identifying...
2024-03-02 13:42:40,285 --> identify.py        WARNING  System setup has changed!
2024-03-02 13:42:44,285 --> default.py         INFO     Modem configuration started.
2024-03-02 13:42:44,709 --> default.py         INFO     Network auto-registering is enabling
2024-03-02 13:42:45,095 --> default.py         INFO     Modem network auto-registering is enabled
2024-03-02 13:43:05,528 --> default.py         INFO     APN is up-to-date.
2024-03-02 13:43:05,901 --> default.py         INFO     Modem mode for EPS is OK
2024-03-02 13:43:05,902 --> default.py         INFO     Checking the mode of modem...
2024-03-02 13:43:08,544 --> default.py         INFO     Checking the SIM is ready...
2024-03-02 13:43:08,918 --> default.py         INFO     SIM is ready.
2024-03-02 13:43:10,019 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:10,453 --> cm.py              ERROR    check_network() -> ('Network not registered: ', ('\n\n+CREG: 0,0\n\n\n\nOK\n\n\n', '', 0))
2024-03-02 13:43:15,554 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:15,993 --> cm.py              ERROR    check_network() -> ('Network not registered: ', ('\n\n+CREG: 0,0\n\n\n\nOK\n\n\n', '', 0))
2024-03-02 13:43:21,094 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:21,535 --> cm.py              ERROR    check_network() -> ('Network not registered: ', ('\n\n+CREG: 0,0\n\n\n\nOK\n\n\n', '', 0))
2024-03-02 13:43:26,635 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:27,054 --> cm.py              ERROR    check_network() -> ('Network not registered: ', ('\n\n+CREG: 0,0\n\n\n\nOK\n\n\n', '', 0))
2024-03-02 13:43:32,155 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:32,568 --> default.py         INFO     Network is registered
2024-03-02 13:43:33,775 --> monitor.py         INFO     Monitoring data updated with changes.
2024-03-02 13:43:38,777 --> default.py         INFO     Checking the ECM initialization...
2024-03-02 13:43:39,176 --> default.py         INFO     ECM Connection is initiating...
2024-03-02 13:43:41,377 --> default.py         INFO     ECM is initiated.
2024-03-02 13:43:51,584 --> cm.py              ERROR    check_internet() -> No internet!
2024-03-02 13:43:51,785 --> diagnostic.py      INFO     Diagnostic is working...
2024-03-02 13:43:53,290 --> default.py         INFO     Checking the network is ready...
2024-03-02 13:43:53,658 --> default.py         INFO     Network is registered
2024-03-02 13:43:54,953 --> diagnostic.py      INFO     Creating diagnostic report on --> /home/sixfab/.core/diagnostics/diagnostic.yaml
2024-03-02 13:43:55,154 --> default.py         INFO     Connection interface is reset...
2024-03-02 13:43:55,179 --> default.py         INFO     Interface wwan0 is down.

Agent log does not have errors, but messages like these:

2024-03-02 13:45:01,561 --> monitoring.py  DEBUG    Skipping data_config, couldn't find any changes.
2024-03-02 13:45:01,567 --> monitoring.py  DEBUG    Skipping data_geolocation, couldn't find any changes.
2024-03-02 13:45:44,756 --> bulk.py        INFO     No bulk deployment exist. Continue...
2024-03-02 13:45:44,796 --> main.py        INFO     Updated LWT, fresh=True, connection_sequence=0, timestamp=1709412344
2024-03-02 13:45:45,286 --> main.py        WARNING  [MONITORING] Monitoring thread not initialized, initializing
2024-03-02 13:45:45,286 --> main.py        WARNING  [MONITORING] Starting monitoring thread
2024-03-02 13:45:45,287 --> monitoring.py  DEBUG    Not connected to MQTT broker, ignoring monitoring thread. Retrying in 10 secs
2024-03-02 13:45:45,758 --> main.py        INFO     Connected to the broker, rc=0
2024-03-02 13:45:45,758 --> main.py        INFO     Sent SUBSCRIPTION mid=1, topic=device/***/directives 
2024-03-02 13:45:45,759 --> main.py        INFO     Sent SUBSCRIPTION mid=2, topic=signaling/***/request 
2024-03-02 13:45:45,759 --> main.py        INFO     Publish Success --> mid: 3, rc: 0
2024-03-02 13:45:45,759 --> main.py        INFO     Sent birth certificate
2024-03-02 13:45:46,048 --> main.py        INFO     Subscribed to MQTT topic: device/***/directives
2024-03-02 13:45:46,591 --> main.py        INFO     Subscribed to MQTT topic: signaling/***/request
2024-03-02 13:45:55,291 --> monitoring.py  DEBUG    Sending new data_monitoring : (0, 4), only_changed_values=True
2024-03-02 13:45:55,293 --> monitoring.py  DEBUG    Sending new data_system : (0, 5), only_changed_values=True
2024-03-02 13:45:55,296 --> monitoring.py  DEBUG    Sending new data_config : (0, 6), only_changed_values=True
2024-03-02 13:45:55,299 --> monitoring.py  DEBUG    Sending new data_geolocation : (0, 7), only_changed_values=False
2024-03-02 13:45:55,411 --> monitoring.py  DEBUG    Updated last monitoring data
2024-03-02 13:45:55,471 --> monitoring.py  DEBUG    Updated last config data
2024-03-02 13:45:55,473 --> monitoring.py  DEBUG    Updated last system data
2024-03-02 13:45:55,474 --> monitoring.py  DEBUG    Updated last geolocation data
2024-03-02 13:46:43,772 --> monitoring.py  DEBUG    Sending new data_monitoring : (0, 8), only_changed_values=True
2024-03-02 13:46:43,773 --> monitoring.py  DEBUG    Skipping data_system, couldn't find any changes.
2024-03-02 13:46:43,775 --> monitoring.py  DEBUG    Skipping data_config, couldn't find any changes.
2024-03-02 13:46:43,777 --> monitoring.py  DEBUG    Skipping data_geolocation, couldn't find any changes.
2024-03-02 13:46:43,885 --> monitoring.py  DEBUG    Updated last monitoring data
2024-03-02 13:47:13,787 --> monitoring.py  DEBUG    Sending new data_monitoring : (0, 9), only_changed_values=True
2024-03-02 13:47:13,790 --> monitoring.py  DEBUG    Skipping data_system, couldn't find any changes.
2024-03-02 13:47:13,795 --> monitoring.py  DEBUG    Skipping data_config, couldn't find any changes.
2024-03-02 13:47:13,800 --> monitoring.py  DEBUG    Skipping data_geolocation, couldn't find any changes.
2024-03-02 13:47:13,896 --> monitoring.py  DEBUG    Updated last monitoring data
2024-03-02 13:47:43,804 --> monitoring.py  DEBUG    Skipping data_monitoring, couldn't find any changes.
2024-03-02 13:47:43,804 --> monitoring.py  DEBUG    Skipping data_system, couldn't find any changes.
2024-03-02 13:47:43,806 --> monitoring.py  DEBUG    Skipping data_config, couldn't find any changes.
2024-03-02 13:47:43,808 --> monitoring.py  DEBUG    Skipping data_geolocation, couldn't find any changes.
2024-03-02 13:48:13,816 --> monitoring.py  DEBUG    Skipping data_monitoring, couldn't find any changes.

lsusb -t matches what everyone else has when plugged in.

I’ve tried reinstalling, but didn’t help.

I’ve tried usb2 port and usb3 port.

Thank you for helping!!

Some additional errors when I try the ECM AT commands:

bartpeintner@bartrpi:~/temp $ atcom AT
AT
OK

bartpeintner@bartrpi:~/temp $ atcom AT+CGDCONT=1,"IPV4V6","super"

ERROR

bartpeintner@bartrpi:~/temp $ atcom AT#USBCFG=4

ERROR

bartpeintner@bartrpi:~/temp $ lsusb -t 
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 30, If 0, Class=Audio, Driver=snd-usb-audio, 12M
        |__ Port 1: Dev 30, If 1, Class=Audio, Driver=snd-usb-audio, 12M
        |__ Port 1: Dev 30, If 2, Class=Human Interface Device, Driver=usbhid, 12M
        |__ Port 2: Dev 37, If 3, Class=CDC Data, Driver=cdc_ether, 480M
        |__ Port 2: Dev 37, If 1, Class=Vendor Specific Class, Driver=, 480M
        |__ Port 2: Dev 37, If 6, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 2: Dev 37, If 4, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 2: Dev 37, If 2, Class=Communications, Driver=cdc_ether, 480M
        |__ Port 2: Dev 37, If 0, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 2: Dev 37, If 7, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 2: Dev 37, If 5, Class=Vendor Specific Class, Driver=option, 480M
bartpeintner@bartrpi:~/temp $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 037: ID 1bc7:1206 Telit Wireless Solutions LE910C4-NF
Bus 001 Device 030: ID 08bb:2902 Texas Instruments PCM2902 Audio Codec
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

More debug:

bartpeintner@bartrpi:~/temp $ atcom AT+CGDCONT?

+CGDCONT: 1,"IPV4V6","super","",0,0,0,0
+CGDCONT: 2,"IPV4V6","ims","",0,0,0,0
+CGDCONT: 3,"IPV4V6","sos","",0,0,0,1
+CGDCONT: 4,"IPV4V6","attm2mglobal","",0,0,0,0

OK

bartpeintner@bartrpi:~/temp $ atcom AT#ECM?

#ECM: 0,1

OK


bartpeintner@bartrpi:~/temp $ atcom AT+IMEISV?
AT+IMEISV?
ERROR

bartpeintner@bartrpi:~/temp $ atcom AT#TID

ERROR

I tried bringing up a brand-new sim card with a fresh and default raspberry pi installation. I followed the install instructions exactly, but logs and behavior seem to be the same as in my earlier posts in this thread.

This started working right after I sent a message to support. Not sure if they did something.

I did have to do this following from https://docs.sixfab.com/page/cellular-internet-connection-in-ecm-mode:

After issuing the AT#ECM command to the Telit module, if the wwan0 interface doesn’t appear under the ifconfig or route -n but available under ip addr command, run sudo dhclient -v wwan0. Later add nameserver 8.8.8.8 in /etc/resolve.conf.

Hi @bart ,

Thank you for reaching out and bringing the issue to our attention. I’m glad to hear that you were able to resolve the problem on your own. If you have any further questions or encounter any issues in the future, feel free to reach out. We’re here to help.

P.S. The reason why wwan0 is going up and down is that if your cellular connection is not established, CORE can reboot your modem to establish your cellular connection. This is an expected situation.