NetworkManager auto-connect GSM module is not stable



Hi NetworkManager Authors,

 

I encountered a problem with using Networkmanager to auto-connect GSM module.

 

What I except:

    I want NetworkManager can auto-connect the GSM module in my board when reboot every time,

    So I set the 'connection.autoconnect' to 'yes' and set the 'connection.autoconnect-retries' to 3.

 

What I encounter:

    I found that the NetworkManager auto-connect GSM module is not stable, sometimes it works fine, but sometimes it is not ok

 

What I find:

    I checked the log of NetworkManager in syslog and found that NetworkManager tried to connect the GSM module only once in the condition auto-connect failed.

    I have set the 'connection.autoconnect' to 3 and why does NetworkManager reconnect only once sometimes?

 

 

***********************************************************************************************************

 

1. The Version of softwares is as follows:

root@debian:~# nmcli -v

 

nmcli tool, version 1.14.6

 

 

root@debian:~# mmcli -V

 

mmcli 1.10.0

 

 

root@debian:~# cat /proc/version

 

Linux version 4.19.38+ (builder@6628e7f94e5a) (gcc version 8.3.0 (Debian 8.3.0-2)) #1 SMP PREEMPT Mon Oct 14 20:34:37 UTC 2019

 

***********************************************************************************************************

 

2. My GSM connection file is as follows:

 

root@debian:~# nmcli connection show id cellular4g

 

connection.id:                          cellular4g

connection.uuid:                        ce204ddd-8e3e-4a15-8435-e4b7f399e353

connection.stable-id:                   --

connection.type:                        gsm

connection.interface-name:              --

connection.autoconnect:                 yes

connection.autoconnect-priority:        0

connection.autoconnect-retries:         3

connection.multi-connect:               0 (default)

connection.auth-retries:                -1

connection.timestamp:                   1571799683

connection.read-only:                   no

connection.permissions:                 --

connection.zone:                        --

connection.master:                      --

connection.slave-type:                  --

connection.autoconnect-slaves:          -1 (default)

connection.secondaries:                 --

connection.gateway-ping-timeout:        0

connection.metered:                     unknown

connection.lldp:                        default

connection.mdns:                        -1 (default)

connection.llmnr:                       -1 (default)

ipv4.method:                            auto

ipv4.dns:                               --

ipv4.dns-search:                        --

ipv4.dns-options:                       ""

ipv4.dns-priority:                      0

ipv4.addresses:                         --

ipv4.gateway:                           --

ipv4.routes:                            --

ipv4.route-metric:                      -1

ipv4.route-table:                       0 (unspec)

ipv4.ignore-auto-routes:                no

ipv4.ignore-auto-dns:                   no

ipv4.dhcp-client-id:                    --

ipv4.dhcp-timeout:                      0 (default)

ipv4.dhcp-send-hostname:                yes

ipv4.dhcp-hostname:                     --

ipv4.dhcp-fqdn:                         --

ipv4.never-default:                     no

ipv4.may-fail:                          yes

ipv4.dad-timeout:                       -1 (default)

ipv6.method:                            auto

ipv6.dns:                               --

ipv6.dns-search:                        --

ipv6.dns-options:                       ""

ipv6.dns-priority:                      0

ipv6.addresses:                         --

ipv6.gateway:                           --

ipv6.routes:                            --

ipv6.route-metric:                      -1

ipv6.route-table:                       0 (unspec)

ipv6.ignore-auto-routes:                no

ipv6.ignore-auto-dns:                   no

ipv6.never-default:                     no

ipv6.may-fail:                          yes

ipv6.ip6-privacy:                       -1 (unknown)

ipv6.addr-gen-mode:                     stable-privacy

ipv6.dhcp-duid:                         --

ipv6.dhcp-send-hostname:                yes

ipv6.dhcp-hostname:                     --

ipv6.token:                             --

gsm.number:                             *99#

gsm.username:                           --

gsm.password:                           <hidden>

gsm.password-flags:                     0 (none)

gsm.apn:                                ctnet

gsm.network-id:                         --

gsm.pin:                                <hidden>

gsm.pin-flags:                          0 (none)

gsm.home-only:                          no

gsm.device-id:                          --

gsm.sim-id:                             --

gsm.sim-operator-id:                    --

gsm.mtu:                                auto

proxy.method:                           none

proxy.browser-only:                     no

proxy.pac-url:                          --

proxy.pac-script:                       --

GENERAL.NAME:                           cellular4g

GENERAL.UUID:                           ce204ddd-8e3e-4a15-8435-e4b7f399e353

GENERAL.DEVICES:                        ttyUSB1

GENERAL.STATE:                          activated

GENERAL.DEFAULT:                        yes

GENERAL.DEFAULT6:                       no

GENERAL.SPEC-OBJECT:                    --

GENERAL.VPN:                            no

GENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/ActiveConnection/2

GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/Settings/1

GENERAL.ZONE:                           --

GENERAL.MASTER-PATH:                    --

IP4.ADDRESS[1]:                         10.10.145.85/30

IP4.GATEWAY:                            10.10.145.86

IP4.ROUTE[1]:                           dst = 10.10.145.84/30, nh = 0.0.0.0, mt = 700

IP4.ROUTE[2]:                           dst = 0.0.0.0/0, nh = 10.10.145.86, mt = 700

IP4.DNS[1]:                             223.87.253.100

IP4.DNS[2]:                             223.87.253.253

IP6.GATEWAY:                            --

 

***********************************************************************************************************

 

3. The log of NeworkManager is as follows:

root@debian:~# cat /var/log/syslog | grep NetworkManager

 

Oct 23 05:05:36 iot2040b-debian NetworkManager[274]: <info>  [1571807136.3727] NetworkManager (version 1.14.6) is starting... (for the first time)

Oct 23 05:05:36 iot2040b-debian NetworkManager[274]: <info>  [1571807136.3733] Read config: /etc/NetworkManager/NetworkManager.conf (lib: no-mac-addr-change.conf)

Oct 23 05:05:36 iot2040b-debian NetworkManager[274]: <info>  [1571807136.4012] bus-manager: acquired D-Bus service "org.freedesktop.NetworkManager"

Oct 23 05:05:36 iot2040b-debian NetworkManager[274]: <info>  [1571807136.4111] manager[0xaaaaeaab5020]: monitoring kernel firmware directory '/lib/firmware'.

Oct 23 05:05:36 iot2040b-debian NetworkManager[274]: <info>  [1571807136.4113] monitoring ifupdown state file '/run/network/ifstate'.

Oct 23 05:05:36 iot2040b-debian dbus-daemon[273]: [system] Activating via systemd: service name='org.freedesktop.hostname1' unit='dbus-org.freedesktop.hostname1.service' requested by ':1.5' (uid=0 pid=274 comm="/usr/sbin/NetworkManager --no-daemon ")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.4172] hostname: hostname: using hostnamed

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.4174] hostname: hostname changed from (none) to "iot2040b-debian"

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.4186] dns-mgr[0xaaaaeaac3120]: init: dns=default, rc-manager=resolvconf

Oct 23 05:05:37 iot2040b-debian dbus-daemon[273]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.5' (uid=0 pid=274 comm="/usr/sbin/NetworkManager --no-daemon ")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5695] ifupdown:       interface-parser: parsing file /etc/network/interfaces

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5697] ifupdown:       interface-parser: source line includes interfaces file(s) /etc/network/interfaces.d

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5699] ifupdown:       interface-parser: finished parsing file /etc/network/interfaces

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5700] ifupdown: management mode: unmanaged

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5700] settings: Loaded settings plugin: SettingsPluginIfupdown ("/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-settings-plugin-ifupdown.so")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5701] settings: Loaded settings plugin: NMSKeyfilePlugin (internal)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5923] keyfile: new connection /etc/NetworkManager/system-connections/cellular4g (ce204ddd-8e3e-4a15-8435-e4b7f399e353,"cellular4g")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5965] manager: rfkill: WiFi enabled by radio killswitch; enabled by state file

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5975] manager: rfkill: WWAN enabled by radio killswitch; enabled by state file

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5982] manager: Networking is enabled by state file

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.5992] dhcp-init: Using DHCP client 'dhclient'

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6317] Loaded device plugin: NMWwanFactory (/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-device-plugin-wwan.so)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6429] Loaded device plugin: NMWifiFactory (/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-device-plugin-wifi.so)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6604] Loaded device plugin: NMTeamFactory (/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-device-plugin-team.so)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6807] Loaded device plugin: NMBluezManager (/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-device-plugin-bluetooth.so)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6849] Loaded device plugin: NMAtmManager (/usr/lib/aarch64-linux-gnu/NetworkManager/1.14.6/libnm-device-plugin-adsl.so)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6885] device (lo): carrier: link connected

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6901] manager: (lo): new Generic device (/org/freedesktop/NetworkManager/Devices/1)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.6975] manager: (eth0): new Ethernet device (/org/freedesktop/NetworkManager/Devices/2)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.7103] keyfile: add connection /run/NetworkManager/system-connections/Wired connection 1.nmconnection (a763cb2c-3b39-3bde-b726-0fde88041a85,"Wired connection 1")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.7132] settings: (eth0): created default wired connection 'Wired connection 1'

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.7172] device (eth0): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.8126] manager: (eth1): new Ethernet device (/org/freedesktop/NetworkManager/Devices/3)

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.8275] keyfile: add connection /run/NetworkManager/system-connections/Wired connection 2.nmconnection (5e3aaea2-5d3a-3718-a421-9d6fe181c167,"Wired connection 2")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.8304] settings: (eth1): created default wired connection 'Wired connection 2'

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.8330] device (eth1): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.9752] modem-manager: ModemManager available

Oct 23 05:05:43 iot2040b-debian NetworkManager[274]: <info>  [1571807143.9209] manager: startup complete

Oct 23 05:05:48 iot2040b-debian systemd[1]: NetworkManager-dispatcher.service: Succeeded.

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4621] modem["ttyUSB1"]: modem state changed, 'disabled' --> 'enabling' (reason: user preference)

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4634] manager: (ttyUSB1): new Broadband device (/org/freedesktop/NetworkManager/Devices/4)

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4657] device (ttyUSB1): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4680] device (ttyUSB1): modem state 'enabling'

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4710] device (ttyUSB1): state change: unavailable -> disconnected (reason 'none', sys-iface-state: 'managed')

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4733] policy: auto-activating connection 'cellular4g' (ce204ddd-8e3e-4a15-8435-e4b7f399e353)

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4777] device (ttyUSB1): Activation: starting connection 'cellular4g' (ce204ddd-8e3e-4a15-8435-e4b7f399e353)

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4783] device (ttyUSB1): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')

Oct 23 05:06:08 iot2040b-debian NetworkManager[274]: <info>  [1571807168.4803] manager: NetworkManager state is now CONNECTING

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.3977] modem["ttyUSB1"]: modem state changed, 'enabling' --> 'enabled' (reason: user-requested)

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.4845] modem["ttyUSB1"]: modem state changed, 'enabled' --> 'connecting' (reason: user-requested)

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.4856] modem["ttyUSB1"]: modem state changed, 'connecting' --> 'unknown' (reason: user-requested)

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.4857] device (ttyUSB1): state change: prepare -> disconnected (reason 'user-requested', sys-iface-state: 'managed')

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.4886] manager: NetworkManager state is now DISCONNECTED

Oct 23 05:06:11 iot2040b-debian NetworkManager[274]: <info>  [1571807171.5153] modem["ttyUSB1"]: modem state changed, 'unknown' --> 'registered' (reason: unknown)

 

******************************************************************************************************************

 

4. The log of ModemManager is as follows:

 

root@debian:~#  cat /var/log/syslog | grep ModemManager

 

Oct 23 05:05:35 iot2040b-debian ModemManager[263]: <info>  ModemManager (version 1.10.0) starting in system bus...

Oct 23 05:05:36 iot2040b-debian dbus-daemon[273]: [system] Activating via systemd: service name='org.freedesktop.PolicyKit1' unit='polkit.service' requested by ':1.4' (uid=0 pid=263 comm="/usr/sbin/ModemManager --filter-policy=strict ")

Oct 23 05:05:37 iot2040b-debian NetworkManager[274]: <info>  [1571807137.9752] modem-manager: ModemManager available

Oct 23 05:05:40 iot2040b-debian ModemManager[263]: <info>  Couldn't check support for device '/sys/devices/platform/interconnect@100000/4000000.dwc3/4010000.usb/xhci-hcd.0.auto/usb1/1-1/1-1.4': not supported by any plugin

Oct 23 05:05:40 iot2040b-debian ModemManager[263]: <info>  Couldn't check support for device '/sys/devices/platform/pruss0_eth': not supported by any plugin

Oct 23 05:06:04 iot2040b-debian ModemManager[263]: <info>  [device /sys/devices/platform/interconnect@100000/4000000.dwc3/4010000.usb/xhci-hcd.0.auto/usb1/1-1/1-1.2] creating modem with plugin 'Huawei' and '6' ports

Oct 23 05:06:04 iot2040b-debian ModemManager[263]: <warn>  Could not grab port (tty/ttyUSB5): 'Cannot add port 'tty/ttyUSB5', unhandled serial type'

Oct 23 05:06:04 iot2040b-debian ModemManager[263]: <warn>  Could not grab port (tty/ttyUSB2): 'Cannot add port 'tty/ttyUSB2', unhandled serial type'

Oct 23 05:06:04 iot2040b-debian ModemManager[263]: <info>  Modem for device '/sys/devices/platform/interconnect@100000/4000000.dwc3/4010000.usb/xhci-hcd.0.auto/usb1/1-1/1-1.2' successfully created

Oct 23 05:06:08 iot2040b-debian ModemManager[263]: <info>  Modem: state changed (unknown -> disabled)

Oct 23 05:06:09 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (disabled -> enabling)

Oct 23 05:06:09 iot2040b-debian ModemManager[263]: <info>  Simple connect started...

Oct 23 05:06:09 iot2040b-debian ModemManager[263]: <info>  Simple connect state (4/8): Wait to get fully enabled

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (enabling -> enabled)

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Simple connect state (5/8): Register

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: 3GPP Registration state changed (unknown -> registering)

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Simple connect state (6/8): Bearer

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Simple connect state (7/8): Connect

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (enabled -> connecting)

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <warn>  Couldn't find associated cdc-wdm port for 'net/wwan0'

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (connecting -> unknown)

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: 3GPP Registration state changed (registering -> home)

Oct 23 05:06:11 iot2040b-debian ModemManager[263]: <info>  Modem /org/freedesktop/ModemManager1/Modem/0: state changed (unknown -> registered)

 

******************************************************************************************************************

 

5. The status of my GSM module is as follows:

 

root@debian:~# mmcli -m 0

 

  --------------------------------

  General  |            dbus path: /org/freedesktop/ModemManager1/Modem/0

           |            device id: 0d490040902fa7c16849164490dbad5b61fc4758

  --------------------------------

  Hardware |         manufacturer: Huawei Technologies Co., Ltd.

           |                model: ME909s-821

           |             revision: 11.617.00.00.00

           |            supported: gsm-umts

           |              current: gsm-umts

           |         equipment id: 867223021127691

  --------------------------------

  System   |               device: /sys/devices/platform/interconnect@100000/4000000.dwc3/4010000.usb/xhci-hcd.0.auto/usb1/1-1/1-1.2

           |              drivers: option1, cdc_ether

           |               plugin: Huawei

           |         primary port: ttyUSB1

           |                ports: ttyUSB1 (at), ttyUSB3 (at), wwan0 (net), ttyUSB4 (at)

  --------------------------------

  Numbers  |                  own: +8613699437296

  --------------------------------

  Status   |       unlock retries: sim-pin (3), sim-pin2 (3), sim-puk (10), sim-puk2 (10)

           |                state: registered

           |          power state: on

           |          access tech: lte

           |       signal quality: 64% (recent)

  --------------------------------

  Modes    |            supported: allowed: 4g; preferred: none

           |                       allowed: 3g; preferred: none

           |                       allowed: 2g; preferred: none

           |                       allowed: 2g, 3g, 4g; preferred: none

           |              current: allowed: 2g, 3g, 4g; preferred: none

  --------------------------------

  IP       |            supported: ipv4, ipv6, ipv4v6

  --------------------------------

  3GPP     |                 imei: 867223021127691

           |          operator id: 46000

           |        operator name: CMCC

           |         registration: home

  --------------------------------

  3GPP EPS | ue mode of operation: csps-2

  --------------------------------

  SIM      |            dbus path: /org/freedesktop/ModemManager1/SIM/0

  --------------------------------

  Bearer   |            dbus path: /org/freedesktop/ModemManager1/Bearer/0

 

 

With best regards,
Nian Gao

Siemens Ltd., China
RC-CN DI FA R&D SW
Tianyuan road No.99
611731 CHENGDU, China
mailto:nian gao siemens com
www.siemens.com/ingenuityforlife
www.siemens.com/ingenuityforlife



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]