Połączenie LTE w Ubuntu
Ubuntu 18.04 LTS umożliwia łatwą konfigurację połączenia LTE. Ten przykład pokazuje, jak skonfigurować połączenie LTE w systemie LES compact 4L z zainstalowanym modemem Quectel EG25-G MiniPCIe i kartą SIM.
Środowisko testowe
Następujące komponenty zostały użyte do przeprowadzenia testu połączenia LTE:
- LES compact 4L
- Modem Quectel EG25-G z gniazdem na kartę SIM
- Ubuntu 18.04.2 LTS Desktop
- Jądro Linuksa 4.15.0-54.58 i 4.18.0-25.26~18.04.1 (test został pomyślnie przeprowadzony z każdą z wersji jądra)
Konfiguracja połączenia LTE
Konfiguracja połączenia LTE jest możliwa w zaledwie kilku krokach za pomocą interfejsu graficznego:
Konfiguracja kodu PIN karty SIM
Jeśli aktywowałeś kod PIN na karcie SIM, musisz zapisać go w konfiguracji:
Wiersz poleceń
ip
tk@les-compact-4l:~$ ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether dc:58:bc:e0:00:16 brd ff:ff:ff:ff:ff:ff 3: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether dc:58:bc:e0:00:17 brd ff:ff:ff:ff:ff:ff 4: enp3s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether dc:58:bc:e0:00:18 brd ff:ff:ff:ff:ff:ff 5: enp4s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000 link/ether dc:58:bc:e0:00:19 brd ff:ff:ff:ff:ff:ff 6: wwp0s20u5i4: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 1000 link/none inet 10.72.242.177/30 brd 10.72.242.179 scope global noprefixroute wwp0s20u5i4 valid_lft forever preferred_lft forever tk@les-compact-4l:~$
Network Manager
W wierszu poleceń pokazuje CLI (nmcli) menedżera sieci (nm) informacje o połączeniu[1]
root@les-compact-4l:~# nmcli device DEVICE TYPE STATE CONNECTION cdc-wdm1 gsm connected Yesss Default enp1s0 ethernet disconnected -- enp2s0 ethernet unavailable -- enp3s0 ethernet unavailable -- enp4s0 ethernet unavailable -- lo loopback unmanaged -- root@les-compact-4l:~# nmcli connection NAME UUID TYPE DEVICE Yesss Default 71f7de7b-4aa2-45a0-9e8b-66c72bd66982 gsm cdc-wdm1 Wired connection 1 70d0d474-2e56-362f-b6a7-a31b5c030e23 ethernet -- Wired connection 2 d6755138-c577-3464-93d2-56b512aed030 ethernet -- Wired connection 3 f1c550e6-9682-3fd7-b3b6-3a239908de7a ethernet -- Wired connection 4 f828e8ee-3807-353a-8dfb-598af0579825 ethernet --
Informacje o połączeniach z siecią LTE są przechowywane w pliku w katalogu/etc/NetworkManager/system-connections/:
root@les-compact-4l:~# ls -l /etc/NetworkManager/system-connections/Yesss\ Default -rw------- 1 root root 265 Jul 10 16:44 '/etc/NetworkManager/system-connections/Yesss Default' root@les-compact-4l:~# cat /etc/NetworkManager/system-connections/Yesss\ Default [connection] id=Yesss Default uuid=71f7de7b-4aa2-45a0-9e8b-66c72bd66982 type=gsm autoconnect=false permissions= [gsm] apn=web.yesss.at number=*99# [serial] baud=115200 [ipv4] dns-search= method=auto [ipv6] addr-gen-mode=stable-privacy dns-search= method=ignore root@les-compact-4l:~#
Modem Manager
Sam modem może być zarządzany z linii poleceń poprzez Modem Manager:[2]
root@les-compact-4l:~# mmcli -L /org/freedesktop/ModemManager1/Modem/0 [QUALCOMM INCORPORATED] QUECTEL Mobile Broadband Module root@les-compact-4l:~# mmcli -L -v [10 Jul 2019, 17:35:18] [Debug] ModemManager process found at ':1.144' /org/freedesktop/ModemManager1/Modem/0 [QUALCOMM INCORPORATED] QUECTEL Mobile Broadband Module root@les-compact-4l:~# mmcli -m /org/freedesktop/ModemManager1/Modem/0 --firmware-list ---------------- Firmware | list: n/a root@les-compact-4l:~# mmcli -m /org/freedesktop/ModemManager1/Modem/0 --oma-status error: modem has no OMA capabilities root@les-compact-4l:~# mmcli -m 0 | grep SIM SIM | dbus path: /org/freedesktop/ModemManager1/SIM/0 root@les-compact-4l:~# mmcli -m /org/freedesktop/ModemManager1/Modem/0 --location-status ------------------------ Location | capabilities: 3gpp-lac-ci, gps-raw, gps-nmea, agps | enabled: 3gpp-lac-ci | signals: no ------------------------ GPS | refresh rate: 30 seconds root@les-compact-4l:~# mmcli -m /org/freedesktop/ModemManager1/Modem/0 --location-get -------------------------- 3GPP | operator code: 232 | operator name: 1 | location area code: FFFE | tracking area code: 157D | cell id: 001A240B root@les-compact-4l:~# mmcli -m /org/freedesktop/ModemManager1/Modem/0 --messaging-status ------------------------------- Messaging | supported storages: sm, me | default storages: me root@les-compact-4l:~#
dmesg
Wyjście z dmesg ułatwia dalszą analizę w przypadku problemów (np. nierozpoznania modem). W wersji Ubuntu 18.04 (z jądrem 4.18) modem Quectel EG-25G jest poprawnie rozpoznawany jako modem USB. Wyjście z dmesg wygląda następująco:
tk@les-compact-4l:~$ dmesg | grep -i usb [...] [ 2.140490] usb 1-5: new high-speed USB device number 3 using xhci_hcd [ 2.302664] usb 1-5: New USB device found, idVendor=2c7c, idProduct=0125, bcdDevice= 3.18 [ 2.302669] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=0 [ 2.302673] usb 1-5: Product: EG25-G [ 2.302676] usb 1-5: Manufacturer: Quectel [...] [ 4.624952] usbcore: registered new interface driver usbserial_generic [ 4.624977] usbserial: USB Serial support registered for generic [ 4.639473] usbcore: registered new interface driver option [ 4.639496] usbserial: USB Serial support registered for GSM modem (1-port) [ 4.643080] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB0 [ 4.652334] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB1 [ 4.658608] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB2 [ 4.659643] usb 1-5: GSM modem (1-port) converter now attached to ttyUSB3 [ 4.687952] usbcore: registered new interface driver cdc_wdm [ 4.702212] qmi_wwan 1-5:1.4: cdc-wdm1: USB WDM device [ 4.706604] qmi_wwan 1-5:1.4 wwan0: register 'qmi_wwan' at usb-0000:00:14.0-5, WWAN/QMI device, 02:6f:98:ba:cd:04 [ 4.706678] usbcore: registered new interface driver qmi_wwan
lsusb
tk@les-compact-4l:~$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 2c7c:0125 Bus 001 Device 002: ID 046d:c52e Logitech, Inc. MK260 Wireless Combo Receiver Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Wyjście z lsusb dla modemu jest dostępne tutaj w celach informacyjnych:
usb-devices
Wyjście z usb-devices pokazuje, że modem Quectel EG25-G został rozpoznany jako urządzenie USB 2.0 (Spd=480):
tk@les-compact-4l:~$ usb-devices T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 7 D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=1d6b ProdID=0002 Rev=04.15 S: Manufacturer=Linux 4.15.0-54-generic xhci-hcd S: Product=xHCI Host Controller S: SerialNumber=0000:00:14.0 C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0 D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=046d ProdID=c52e Rev=15.00 S: Manufacturer=Logitech S: Product=USB Receiver C: #Ifs= 2 Cfg#= 1 Atr=a0 MxPwr=98mA I: If#= 0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid I: If#= 1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid T: Bus=01 Lev=01 Prnt=01 Port=04 Cnt=02 Dev#= 3 Spd=480 MxCh= 0 D: Ver= 2.00 Cls=ef(misc ) Sub=02 Prot=01 MxPS=64 #Cfgs= 1 P: Vendor=2c7c ProdID=0125 Rev=03.18 S: Manufacturer=Quectel S: Product=EG25-G C: #Ifs= 5 Cfg#= 1 Atr=a0 MxPwr=500mA I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option I: If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option I: If#= 4 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=ff Prot=ff Driver=qmi_wwan T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 6 D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1 P: Vendor=1d6b ProdID=0003 Rev=04.15 S: Manufacturer=Linux 4.15.0-54-generic xhci-hcd S: Product=xHCI Host Controller S: SerialNumber=0000:00:14.0 C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
modinfo qmi_wwan
tk@les-compact-4l:~$ modinfo qmi_wwan filename: /lib/modules/4.15.0-54-generic/kernel/drivers/net/usb/qmi_wwan.ko license: GPL description: Qualcomm MSM Interface (QMI) WWAN driver author: Bjørn Mork <bjorn@mork.no> srcversion: D0C8B2FEE75242D14A63187 alias: usb:v1410pA021d*dc*dsc*dp*ic*isc*ip*in00* [...] alias: usb:v12D1p*d*dc*dsc*dp*icFFisc01ip09in* depends: usbnet,cdc-wdm retpoline: Y intree: Y name: qmi_wwan vermagic: 4.15.0-54-generic SMP mod_unload signat: PKCS#7 signer: sig_key: sig_hashalgo: md4
SMS Server Tools
Jeśli chcesz użyć modemu do wysyłania wiadomości SMS (np. w środowisku monitorującym), możesz to zrobić za pomocą SMS Server Tools.
Jednak w tym przypadku modem nie może być używany do połączenia LTE, gdyż uruchomiony Modem Manager blokuje narzędziu SMS Server Tools dostęp do pliku urządzenia.
Podczas korzystania z SMS Server Tools, upewnij się, że Modem Manager nie jest używany:
sudo systemctl disable ModemManager ps -eaf | grep -i ModemManager
Jeśli procesy ModemManager-a nadal działają, zakończ je poleceniem kill.
Następnie można skonfigurować SMS Server Tools, tak jak jest to opisane w artykule Instalacja SMS Server Tools w Ubuntu 12.04 LTS.
Odnośniki
- ↑ NetworkManager ohne GUI (wiki.ubuntuusers.de)
- ↑ nmcli Manpage (manpages.ubuntu.com)
Autor: Werner Fischer