OpenWrt Forum Archive

Topic: Need help to connect my USB Modem (QMI/NDIS)

The content of this topic has been archived on 7 May 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Router: TL-WR1043N v2
OpenWRT: Chaos Calmer 15.05
Modem: HUAWEI E392 (Vendor=12d1, ProdID=1506, chipset=Qualcomm MDM9600)

I've followed the guide on How To Use LTE modem in QMI mode for WAN connection
When I try to connect I get either "No effect" or "Call failed"

root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --start-network internet --autoconnect
"No effect"
root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --start-network internet --autoconnect
"Call failed"
root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --get-signal-info
{
        "type": "lte",
        "rssi": -53,
        "rsrq": -7,
        "rsrp": -78,
        "snr": 230
}

I've tried the modem using another router (TL-MR3020 with TP-Link stock firmware) and it connects fine!

Does the network configuration play any matter when it comes connecting?
I found a lot of different ways to setup "/etc/config/network" when it comes to USB modems, but in the guide it just say

config interface 'wwan'
        option ifname 'wwan0'
        option proto 'dhcp'

I got the following device/setup info:
dmesg | grep usb

[    4.370000] usbcore: registered new interface driver usbfs
[    4.370000] usbcore: registered new interface driver hub
[    4.380000] usbcore: registered new device driver usb
[   11.480000] usbcore: registered new interface driver cdc_wdm
[   11.760000] usbcore: registered new interface driver qmi_wwan
[  105.480000] usb 1-1: new high-speed USB device number 2 using ehci-platform
[  105.930000] usb 1-1: USB disconnect, device number 2
[  117.990000] usb 1-1: new high-speed USB device number 3 using ehci-platform
[  118.150000] qmi_wwan 1-1:1.1 wwan0: register 'qmi_wwan' at usb-ehci-platform.0-1, WWAN/QMI device, 00:a0:c6:00:00:00

cat /sys/kernel/debug/usb/devices

.......
T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  3 Spd=480  MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=12d1 ProdID=1506 Rev= 0.00
S:  Manufacturer=Huawei Technologies
S:  Product=HUAWEI Mobile
C:* #Ifs= 4 Cfg#= 1 Atr=c0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=02 Driver=(none)
E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 1 Alt= 0 #EPs= 1 Cls=ff(vend.) Sub=01 Prot=09 Driver=qmi_wwan
E:  Ad=82(I) Atr=03(Int.) MxPS=  64 Ivl=2ms
I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=01 Prot=08 Driver=qmi_wwan
E:  Ad=83(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=4ms
I:* If#= 3 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=(none)
E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms

ls -l /dev/cdc-wdm0

crw-r--r--    1 root     root      180, 176 Nov 21 14:18 /dev/cdc-wdm0

lsmod

arc4                    1232  2
ath                    19280  3 ath9k
ath9k                  83696  0
ath9k_common           15760  1 ath9k
ath9k_hw              331712  2 ath9k
cdc_wdm                 7728  1 qmi_wwan
cfg80211              204048  4 ath9k
compat                  1120  4 ath9k
crc_ccitt                944  1 ppp_async
crypto_blkcipher        9744  1 arc4
ehci_hcd               31888  1 ehci_platform
ehci_platform           3408  0
gpio_button_hotplug     4400  0
ip6_tables              9056  3 ip6table_raw
ip6t_REJECT             1104  2
ip6table_filter          528  1
ip6table_mangle          992  1
ip6table_raw             496  1
ip_tables               9200  4 iptable_nat
ipt_MASQUERADE           544  1
ipt_REJECT               832  2
iptable_filter           592  1
iptable_mangle           864  1
iptable_nat              688  1
iptable_raw              560  1
ipv6                  261168 26 nf_conntrack_ipv6
ledtrig_usbdev          1856  0
mac80211              362512  1 ath9k
mii                     3216  1 usbnet
nf_conntrack           44800 11 nf_nat_ipv4
nf_conntrack_ftp        5200  1 nf_nat_ftp
nf_conntrack_ipv4       5072  8
nf_conntrack_ipv6       5456  3
nf_conntrack_rtcache    2400  0
nf_defrag_ipv4           720  1 nf_conntrack_ipv4
nf_defrag_ipv6          8800  1 nf_conntrack_ipv6
nf_log_common           2240  2 nf_log_ipv4
nf_log_ipv4             3056  0
nf_log_ipv6             3216  0
nf_nat                  9168  5 nf_nat_ipv4
nf_nat_ftp              1120  0
nf_nat_ipv4             3968  1 iptable_nat
nf_nat_masquerade_ipv4    1184  1 ipt_MASQUERADE
nf_reject_ipv4          1760  1 ipt_REJECT
nf_reject_ipv6          1856  1 ip6t_REJECT
nls_base                4656  1 usbcore
ppp_async               6240  0
ppp_generic            20176  3 pppoe
pppoe                   8032  0
pppox                   1136  1 pppoe
qmi_wwan               10224  0
slhc                    4080  1 ppp_generic
usb_common              1008  1 usbcore
usbcore               111392  6 qmi_wwan
usbnet                 15696  1 qmi_wwan
x_tables                9776 26 ipt_REJECT
xt_CT                   2144  0
xt_LOG                   688  0
xt_REDIRECT              976  0
xt_TCPMSS               2528  4
xt_comment               400 64
xt_conntrack            2080 10
xt_id                    400  0
xt_limit                 912 20
xt_mac                   544  0
xt_mark                  592  0
xt_multiport            1104  0
xt_nat                   992  0
xt_state                 608  0
xt_tcpudp               1616 12
xt_time                 1552  0

The strange thing is I got it to work yesterday.
I've tried to reinstall OpenWRT and redo the AT setup (to set the modem to NDIS mode).....but still no connection :-(

Any clues?

(Last edited by MrBW on 21 Nov 2015, 16:24)

try
config interface 'wwan'
        option proto 'qmi'
        option device '/dev/cdc-wdm0'
        option apn 'internet' #enter yr carrier apn here
        option ifname 'wwan0'

(Last edited by stas2z on 21 Nov 2015, 16:13)

It didn't help :-(
But again, no matter what the configuration is in the network config file the modem should connect, right?
When using "uqmi -d /dev/cdc-wdm0 --start-network internet --autoconnect" the config is not used at this point?
I understand the network routing might not work unless the config is correct, but that's another issue.

..is it correct that I dont' need "ttyUSB*" device, this is only used for AT modems and not QMI/NDIS modems?

MrBW wrote:

..is it correct that I dont' need "ttyUSB*" device, this is only used for AT modems and not QMI/NDIS modems?

That's correct.

"No effect" usually means that the modem already is connected.  Which is likely, since you are using --autoconnect. If you are lucky, then DHCP might work at this point.  But it is just as likely that it doesn't.  The modem firmware could have chosen "raw IP mode", which is incompatible with the qmi_wwan driver, or it could require some magic before enabling the DHCP server

Personally I'd drop the --autoconnect. It delegates too many decisions to a firmware you have no control over. I like being in control smile

What other alternativ do I have.....I can only find one way to start a connection, and that is "uqmi -d /dev/cdc-wdm0 --start-network internet --autoconnect"
There is not a "--connect" option for the "uqmi --start" command?
And I did try without "--autoconnect" same reply:"No effect"

The diode on the modem is not on constantly, only flashing once every 2-3 seconde.
When it is connected (yesterday when it worked or when I use the other router with stock firmware) the diode is ON constantly when connected.
And when I use "uqmi -d /dev/cdc-wdm0 --get-data-status" to get status I get "disconnected"

This is the option/actions for the uqmi command


Usage: uqmi <options|actions>

Options:
  --single, -s:                     Print output as a single line (for scripts)
  --device=NAME, -d NAME:           Set device name to NAME (required)
  --keep-client-id <name>:          Keep Client ID for service <name>
  --release-client-id <name>:       Release Client ID after exiting
 
Services:                           dms, nas, pds, wds, wms

Actions:
  --get-versions:                   Get service versions
  --set-client-id <name>,<id>:      Set Client ID for service <name> to <id>
                                    (implies --keep-client-id)
  --get-client-id <name>:           Connect and get Client ID for service <name>
                                    (implies --keep-client-id)
  --start-network <apn>:            Start network connection (use with options below)
    --auth-type pap|chap|both|none: Use network authentication type
    --username <name>:              Use network username
    --password <password>:          Use network password
    --autoconnect:                  Enable automatic connect/reconnect
  --stop-network <pdh>:             Stop network connection (use with option below)
    --autoconnect:                  Disable automatic connect/reconnect
  --get-data-status:                Get current data access status
  --set-autoconnect <val>:          Get current data access status (disabled, enabled, paused)
  --get-pin-status:                 Get PIN verification status
  --verify-pin1 <pin>:              Verify PIN1
  --verify-pin2 <pin>:              Verify PIN2
  --unblock-pin1:                   Unblock PIN1
    --puk <puk>:                    PUK needed to unblock
    --new-pin <new pin>:            New pin
  --unblock-pin2:                   Unblock PIN2
    --puk <puk>:                    PUK needed to unblock
    --new-pin <new pin>:            New pin
  --get-iccid:                      Get the ICCID
  --get-imsi:                       Get International Mobile Subscriber ID
  --get-msisdn:                     Get the MSISDN (telephone number)
  --reset-dms:                      Reset the DMS service
  --set-device-operating-mode <m>   Set the device operating mode
                                    (modes: online, low_power, factory_test, offline
                                     reset, shutting_down, persistent_low_power,
                                     mode_only_low_power)
  --set-network-modes : Set usable network modes (Syntax: [,,...]) 

                                    Available modes: all, lte, umts, gsm, cdma, td-scdma
  --set-network-preference <mode>:  Set preferred network mode to <mode>
                                    Available modes: auto, gsm, wcdma
  --set-network-roaming <mode>:     Set roaming preference:
                                    Available modes: any, off, only
  --network-scan:                   Initiate network scan
  --network-register:               Initiate network register
  --get-signal-info:                Get signal strength info
  --get-serving-system:             Get serving system info
  --list-messages:                  List SMS messages
  --delete-message <id>:            Delete SMS message at index <id>
  --get-message <id>:               Get SMS message at index <id>
  --get-raw-message <id>:           Get SMS raw message contents at index <id>
  --send-message <data>:            Send SMS message (use options below)
  --send-message-smsc <nr>:       SMSC number (required)
  --send-message-target <nr>:     Destination number (required)
  --send-message-flash:           Send as Flash SMS
  --wda-set-data-format <type>:     Set data format (type: 802.3|raw-ip)
  --wda-get-data-format:            Get data format

(Last edited by MrBW on 21 Nov 2015, 18:39)

I wonder shouldn't it be possible to put in a dial number somewhere: *99#?

MrBW wrote:

What other alternativ do I have.....I can only find one way to start a connection, and that is "uqmi -d /dev/cdc-wdm0 --start-network internet --autoconnect"
There is not a "--connect" option for the "uqmi --start" command?
And I did try without "--autoconnect" same reply:"No effect"

Ah, OK.  That was what I meant. Sorry it didn't work.

This is a long shot, but worth trying:

uqmi -d /dev/cdc-wdm0 --set-autoconnect disabled
uqmi -d /dev/cdc-wdm0 --start-network internet 

Maybe even with unplugging the modem between the commands.

The diode on the modem is not on constantly, only flashing once every 2-3 seconde.
When it is connected (yesterday when it worked or when I use the other router with stock firmware) the diode is ON constantly when connected.

Yes, that is a pretty good indication that the modem isn't connected after all.

I wonder shouldn't it be possible to put in a dial number somewhere: *99#?

Nope.  That's for ppp over a serial device.  The QMI commands replace this.

Don't have any more suggestions for the moment. You could load the option driver and use the modem as a serial device with ppp, but that is next to giving up smile  And it won't give the same bandwith as using the QMI interface


EDIT: I did a little bit of experimenting with uqmi on a PC, agaist a similar modem (E392, but in an MDM9200 version).

First: Do you have a PIN code for the SIM?  If so, then you need to verify it.  I get consistently "Call failed" if I try to connect before entering the PIN code:

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1  --start-network telenor 
"Call failed"
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --verify-pin1 7513
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1  --start-network telenor 
34967784

But note that although the latter command appeared to work, the modem will immediately disconnect again:

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1   --get-data-status
"disconnected"

The reason is that the connection is tied to a QMI WDS "client ID" which is automatically allocated and released by uqmi.  But when it is realeased, then firmware will also release any resources it uses.  This includes the connection...

So you need to start the network like this:

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1  --start-network telenor --keep-client-id wds
34967784
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1   --get-data-status
"connected"

Then it said connected, and I can retrieve IP config both via QMI and DHCP:

nemi:/home/bjorn# dhclient -d -4 wwan1
Internet Systems Consortium DHCP Client 4.3.1
Copyright 2004-2014 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/wwan1/e6:8d:44:a9:60:22
Sending on   LPF/wwan1/e6:8d:44:a9:60:22
Sending on   Socket/fallback
DHCPREQUEST on wwan1 to 255.255.255.255 port 67
DHCPNAK from 46.156.61.113
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 3
DHCPREQUEST on wwan1 to 255.255.255.255 port 67
DHCPOFFER from 46.156.61.113
DHCPACK from 46.156.61.113
bound to 46.156.61.115 -- renewal in 3454 seconds.
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1  --get-current-settings
{
        "pdp-type": "ipv4",
        "ip-family": "ipv4",
        "mtu": 1500,
        "ipv4": {
                "ip": "46.156.61.115",
                "dns1": "193.213.112.4",
                "dns2": "130.67.15.198",
                "gateway": "46.156.61.113",
                "subnet": "255.255.255.248"
        },
        "ipv6": {

        },
        "domain-names": {

        }
}

I still have some problems disconnecting though.  The firmware doesn't like the handle I got above:

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1    --stop-network 34967784
"Invalid handle"

I don't know exactly why, but it might be related to the "client ID". I haven't figured out how to get this out of uqmi.


EDIT AGAIN: I obviously hadn't looked very good.  There is a useful --get-client-id command, which also allows you to do dual-stack connections (which are set up in a very weird way over QMI, using two distinct client IDs for a single connection):

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --get-client-id wds
1
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,1  --start-network telenor.smart --ip-family ipv6
34967784
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --get-client-id wds
2
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,2  --start-network telenor.smart --ip-family ipv4
34969280
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,1  --get-current-settings
{
        "pdp-type": "ipv4-or-ipv6",
        "ip-family": "ipv6",
        "mtu": 1500,
        "ipv4": {

        },
        "ipv6": {
                "ip": "2a02:2121:82:461a:a068:a103:60e7:bd30",
                "ip-prefix-length": 64,
                "gateway": "2a02:2121:82:461a:10bd:15b9:920f:11ff",
                "gw-prefix-length": 64,
                "dns1": "2001:4600:4:fff::52",
                "dns2": "2001:4600:4:1fff::52"
        },
        "domain-names": {

        }
}
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,2 --get-current-settings
{
        "pdp-type": "ipv4-or-ipv6",
        "ip-family": "ipv4",
        "mtu": 1500,
        "ipv4": {
                "ip": "10.120.134.50",
                "dns1": "193.213.112.4",
                "dns2": "130.67.15.198",
                "gateway": "10.120.134.49",
                "subnet": "255.255.255.252"
        },
        "ipv6": {

        },
        "domain-names": {

        }
}

The IPv4 config is still available via DHCP, while the IPv6 config is using RAs (SLAAC) and therefore have a different interface ID from the one suggested above:

nemi:/home/bjorn# dhclient -d -4 wwan1
Internet Systems Consortium DHCP Client 4.3.1
Copyright 2004-2014 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/wwan1/e6:8d:44:a9:60:22
Sending on   LPF/wwan1/e6:8d:44:a9:60:22
Sending on   Socket/fallback
DHCPREQUEST on wwan1 to 255.255.255.255 port 67
DHCPNAK from 10.120.134.49
DHCPDISCOVER on wwan1 to 255.255.255.255 port 67 interval 4
DHCPREQUEST on wwan1 to 255.255.255.255 port 67
DHCPOFFER from 10.120.134.49
DHCPACK from 10.120.134.49
bound to 10.120.134.50 -- renewal in 3016 seconds.

nemi:/home/bjorn# ifconfig wwan1
wwan1     Link encap:Ethernet  HWaddr e6:8d:44:a9:60:22  
          inet addr:10.120.134.50  Bcast:10.120.134.51  Mask:255.255.255.252
          inet6 addr: fe80::e48d:44ff:fea9:6022/64 Scope:Link
          inet6 addr: 2a02:2121:82:461a:e48d:44ff:fea9:6022/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:4 errors:0 dropped:0 overruns:0 frame:0
          TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:994 (994.0 B)  TX bytes:1612 (1.5 KiB)

And this time, disconnecting worked as well:

bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,2 --stop-network 34969280
bjorn@nemi:/usr/local/src/git/uqmi$ uqmi -d /dev/cdc-wdm1 --set-client-id wds,1 --stop-network 34967784

Uhmm, this was a little outside your question.... smile But I hope the hints about using a specifc client ID and making sure you've entered the PIN code is of some help.

(Last edited by bmork on 21 Nov 2015, 23:33)

Wau.....thanks BMORK for your time and effort :-)

I started to do some thinking (that always help) and everything pointed in the direction of a problem in the modem firmware.
So I asked myself how I could "reset" it....first I tried "--set-device-operating-mode offline reset", it didn't get me anywhere (don't know what it does).
Then I changed the mode of the modem back to default "A1,A2;1,2,3,A1,A2" and then back again to "A1;2,7,A2".
And that did it....NOW IT WORKS :-)

No I wanna connect/disconnect manually, not using autoconnect.
I tried your way but I have problems with the "-ip-familly ipv4", I get an error saying "unrecognized option `--ip-family'"?

root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --get-client-id wds
1
root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --set-client-id wds,1  --start-network internet --ip-family ipv4
uqmi: unrecognized option `--ip-family'

Am I doing something wrong? Are you using a newer version of uqmi?
My version is:

root@OpenWrt:~# opkg info uqmi
Package: uqmi
Version: 2014-12-03-86bcdb8cca652676a78b2df8b5e3fb27a40c60a4
Depends: libc, libubox, libblobmsg-json, kmod-usb-net, kmod-usb-net-qmi-wwan, wwan
Status: install user installed
Architecture: ar71xx
Installed-Time: 1448115352

(Last edited by MrBW on 22 Nov 2015, 12:25)

MrBW wrote:

Wau.....thanks BMORK for your time and effort :-)

I started to do some thinking (that always help) and everything pointed in the direction of a problem in the modem firmware.
So I asked myself how I could "reset" it....first I tried "--set-device-operating-mode offline reset", it didn't get me anywhere (don't know what it does).
Then I changed the mode of the modem back to default "A1,A2;1,2,3,A1,A2" and then back again to "A1;2,7,A2".
And that did it....NOW IT WORKS :-)

Great!

It's a pity that we know so little about the firmware internals, so we have to guess the magic curses necessary to make it do what we want. You wouldn't think the procedure you describe should change anything, but it has obviously caused some setting to be reset.

No I wanna connect/disconnect manually, not using autoconnect.
I tried your way but I have problems with the "-ip-familly ipv4", I get an error saying "unrecognized option `--ip-family'"?

root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --get-client-id wds
1
root@OpenWrt:~# uqmi -d /dev/cdc-wdm0 --set-client-id wds,1  --start-network internet --ip-family ipv4
uqmi: unrecognized option `--ip-family'

Am I doing something wrong? Are you using a newer version of uqmi?
My version is:

root@OpenWrt:~# opkg info uqmi
Package: uqmi
Version: 2014-12-03-86bcdb8cca652676a78b2df8b5e3fb27a40c60a4
Depends: libc, libubox, libblobmsg-json, kmod-usb-net, kmod-usb-net-qmi-wwan, wwan
Status: install user installed
Architecture: ar71xx
Installed-Time: 1448115352

Oh, I didn't realize the current version in OpenWRT was that old.  I just assumed it was at the development head, and built that.  But I see that there are a few changes between your version and the current head:


bjorn@nemi:/usr/local/src/git/uqmi$ git shortlog 86bcdb8cca652676a78b2df8b5e3fb27a40c60a4..origin/master
Antti Seppälä (2):
      uqmi: Add IP family selection command-line switch
      uqmi: Add get-current-settings command-line switch

Bachtin, Dmitri (1):
      uqmi: Added CMake option BUILD_STATIC for a static uqmi build

Felix Fietkau (2):
      Add command to get IMEI from the device
      add missing license headers (LGPL v2)

Sławomir Demeszko (16):
      Separation of decoding User Data Header from decoding 7 bit message
      Added support for 8 bit and 16 bit encoded SMS messages
      Fix character "@" added at end of received messages
      Add support for 16-bit reference number in concatenated SMS.
      Added option for enabling and disabling protection of simcard by PIN
      Added shared struct to allow the same option names for different functions
      Added commands to change PIN code
      Fix improper characters after reading Escape code for switching extension table in SMS
      Add mandatory field to Initiate Network Register
      Fix logical expression which is always true
      Fix improper length of sms message stored in User Data Length field
      Making smsc number optional
      Fix encoding phone number on sending sms
      Add missing option for getting tdma signal strength
      Add command for listing device capabilities
      Add command to specify preferred PLMN

I believe you can do fine without any of these, though.  It's mostly small fixes and new optional features.

The "--ip-family" switch is for example totally unnecessary if you only want to do a simple IPv4 connection., which most people are satisfied with smile

The "--get-current-settings" command I also used is very useful, but completely redundant as long as you use DHCP for IP configuration.

Etc.

So continue to use the version you have if that works for you.

bmork,

Did you ever figure out why your modem was randomly disconnecting? I have been scouring the internet searching for a clue as to why my Novatel USB551L modem consistently drops connection but to no avail. Obviously, I've tried your setup/configuration here. I've tried using the OpenWRT LTE recipe. Nothing I've found works. Any advice would be much appreciated.

Thank you,

Jeff

EDIT...:

I first ran into this issue back November 2015 and I believe I finally worked out a solution over the last couple of days. Basically I use the CDMA/EV-DO service on the 3g protocol and end up with LTE speed by telling it to dial out on the AT+CGDCONT channel which is associated with the LTE network. Honestly, I'm a little baffled by the whole thing since I'm diving way deeper under the hood than ever before. However, I end up with a fast blinking blue indicator light which according to the documentation means I'm on a 4G connection. Download/upload speeds seem pretty slow though - around 6Mb/s up and down. I still think this thing is losing connection left and right though as is evident when pages hang and the log file which shows continual drops and reconnects. But the big improvement - A) it reconnects! and B) uqmi was hanging up and I wouldn't be able to connect to the service without rebooting the modem(s)/dongle.

Maybe it's just a cheap dongle...? I had a Verizon Pantech modem that does the same thing as well though. Maybe the free ones are just too cheap to be reliable?

Anyway, thanks for letting me vent and talk myself through that one. smile

(Last edited by jeffs on 24 Oct 2016, 04:11)

The discussion might have continued from here.