Why cant I connect my USB 4G/LTE modem to my Jetson Nano?

It worked perfectly fine on my Raspberry Pi 3. I suspect it is because I don’t have wwan0. On my raspberry pi, wwan shows up when i type ifconfig whereas, I get this when I type ifconfig on my terminal

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 164.78.185.89  netmask 255.255.255.0  broadcast 164.78.185.255
        inet6 fe80::9d53:b673:cd9d:c903  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:68:01:f5  txqueuelen 1000  (Ethernet)
        RX packets 53782  bytes 38527291 (38.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 20789  bytes 2611892 (2.6 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 148  base 0xe000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 1838  bytes 154727 (154.7 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1838  bytes 154727 (154.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

rndis0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 0e:d1:aa:60:c9:dd  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

usb0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 0e:d1:aa:60:c9:df  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 5c:87:9c:18:3a:71  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

How do I add wwan here? Is there some kernel I need to add? Thank you!

Also, modemmanager is able to detect my usb modem. when I type this in the terminal,

sudo systemctl status ModemManager

I get this,

Sep 30 02:42:02 uavstream-desktop ModemManager[3676]: <info>  Simple connect state (5/8): Register
Sep 30 02:42:02 uavstream-desktop ModemManager[3676]: <info>  Simple connect state (6/8): Bearer
Sep 30 02:42:02 uavstream-desktop ModemManager[3676]: <info>  Simple connect state (7/8): Connect
Sep 30 02:42:02 uavstream-desktop ModemManager[3676]: <info>  Modem /org/freedesktop/ModemManager1/Modem/1: state changed (registered -> connecting)
Sep 30 02:42:05 uavstream-desktop ModemManager[3676]: <warn>  (tty/ttyUSB0) at port timed out 7 consecutive times
Sep 30 02:42:08 uavstream-desktop ModemManager[3676]: <warn>  (tty/ttyUSB0) at port timed out 8 consecutive times
Sep 30 02:42:11 uavstream-desktop ModemManager[3676]: <warn>  (tty/ttyUSB0) at port timed out 9 consecutive times
Sep 30 02:42:14 uavstream-desktop ModemManager[3676]: <warn>  Couldn't initialize PDP context with our APN: 'Serial command timed out'
Sep 30 02:42:14 uavstream-desktop ModemManager[3676]: <info>  Modem /org/freedesktop/ModemManager1/Modem/1: state changed (connecting -> registered)
Sep 30 02:42:14 uavstream-desktop ModemManager[3676]: <error> (tty/ttyUSB0) at port timed out 10 consecutive times, marking modem '/org/freedesktop/ModemManager1/Modem/1' as invalid

Hi,

Is there any extra modem driver required for your device? Do you see your usb device after using command “lsusb” ?

Thank you for the reply! I got these errors when running

sudo ModemManager --debug

https://pastebin.com/pR0CRzQi

My Jetson Nano can detect the modem when I do lsusb

Bus 002 Device 002: ID 0bda:0411 Realtek Semiconductor Corp. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 8087:0a2b Intel Corp. 
Bus 001 Device 005: ID 046d:c31d Logitech, Inc. Media Keyboard K200
Bus 001 Device 004: ID 0461:4d81 Primax Electronics, Ltd Dell N889 Optical Mouse
Bus 001 Device 008: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
Bus 001 Device 002: ID 0bda:5411 Realtek Semiconductor Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

When I run

sudo systemctl status ModemManager
● ModemManager.service - Modem Manager
   Loaded: loaded (/lib/systemd/system/ModemManager.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2019-10-02 10:21:03 +08; 1h 5min ago
 Main PID: 21243 (ModemManager)
    Tasks: 3 (limit: 4183)
   CGroup: /system.slice/ModemManager.service
           └─21243 /usr/sbin/ModemManager --filter-policy=strict

Oct 02 11:25:53 gaanesh-desktop ModemManager[21243]: <info>  Simple connect state (5/8): Register
Oct 02 11:25:53 gaanesh-desktop ModemManager[21243]: <info>  Simple connect state (6/8): Bearer
Oct 02 11:25:53 gaanesh-desktop ModemManager[21243]: <info>  Simple connect state (7/8): Connect
Oct 02 11:25:53 gaanesh-desktop ModemManager[21243]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (registered -> connecting)
Oct 02 11:25:56 gaanesh-desktop ModemManager[21243]: <warn>  (tty/ttyUSB0) at port timed out 7 consecutive times
Oct 02 11:25:59 gaanesh-desktop ModemManager[21243]: <warn>  (tty/ttyUSB0) at port timed out 8 consecutive times
Oct 02 11:26:02 gaanesh-desktop ModemManager[21243]: <warn>  (tty/ttyUSB0) at port timed out 9 consecutive times
Oct 02 11:26:05 gaanesh-desktop ModemManager[21243]: <warn>  Couldn't initialize PDP context with our APN: 'Serial command timed out'
Oct 02 11:26:05 gaanesh-desktop ModemManager[21243]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connecting -> registered)
Oct 02 11:26:05 gaanesh-desktop ModemManager[21243]: <error> (tty/ttyUSB0) at port timed out 10 consecutive times, marking modem '/org/freedesktop/ModemManager1/Modem/0' as invalid

I feel like there is something wrong with port ttyUSB0

I see ttyUSB0 timeout. If there is firmware needed by the modem, then it is possible the hardware wouldn’t respond (or would respond incorrectly). Can’t think of anything else to try, but check if there is any additional firmware to load (often firmware is from the manufacturer site and not directly downloaded through the Ubuntu package mechanism).

I was thinking that too but when I tried to load it on my Raspberry pi, it works. That made me think a firmware wasn’t the issue

There are some open source firmware packages as well. If your RPi has that installed, but not the Nano, then you would still see that behavior. Nanos and RPIs usually ship with very different default packages. I don’t have another suggestion if that isn’t the case, but find out if there is an explicit list of prerequisites for that modem on Linux which might not be preinstalled on the Nano. If that isn’t the issue, then you can go from there knowing firmware is set up already.