For the Raspberry Pi 4G/LTE Cellular Modem Kit, I’ve successfully been able to follow the official instructions here.
I’m able to get an internet connection when using a Quectel Modem and Verizon 5G Sim Card.
However, after following the instructions here, I’m unable to get an internet connection via UART with the USB disconnected.
I am able to send AT commands to the modem via ttyS0, however, pings to google.com fail with:
$ ping www.google.com
ping: www.google.com: Temporary failure in name resolution
Another thread mentioned that I may have to setup PPP, however after trying that solution I’m still getting the same error.
Is there something I’m missing here?
Also, I’ve provided verbose debugging information below.
Modem Output w/ Modem Kit USB Connected:
AT+CPIN?
+CPIN: READY
OK
AT+QGMR
EG25GGBR07A08M2G_30.006.30.006
OK
AT+CPAS
+CPAS: 0
OK
AT+CFUN?
+CFUN: 1
OK
AT+COPS?
+COPS: 0,0,"Verizon ",7
OK
AT+QCFG="band"
+QCFG: "band",0x0,0x1008,0x0
OK
AT+QCFG="nwscanseq"
+QCFG: "nwscanseq",0501030402
OK
AT+QCFG="nwscanmode"
+QCFG: "nwscanmode",3
OK
AT+QCFG="iotopmode"
ERROR
AT+CGDCONT?
+CGDCONT: 1,"IPV4V6","vzwinternet","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 2,"IPV4V6","VZWADMIN","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 3,"IPV4V6","VZWINTERNET","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 4,"IPV4V6","VZWAPP","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 5,"IPV4V6","VZWEMERGENCY","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,1
+CGDCONT: 6,"IPV4V6","VZWCLASS6","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
OK
AT+CREG?
+CREG: 0,3
OK
AT+CSQ
+CSQ: 21,99
OK
AT+QCSQ
+QCSQ: "LTE",71,-105,116,-13
OK
AT+QNWINFO
+QNWINFO: "FDD LTE","311480","LTE BAND 4",2050
OK
AT+CGATT?
+CGATT: 1
OK
AT+QCFG="usbnet"
+QCFG: "usbnet",1
OK
System Output w/ Modem Kit USB Connected:
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 0403:6011 Future Technology Devices International, Ltd FT4232H Quad HS USB-UART/FIFO IC
Bus 001 Device 004: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 007: ID 2c7c:0125 Quectel Wireless Solutions Co., Ltd. EC25 LTE modem
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ 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 7, If 5, Class=CDC Data, Driver=cdc_ether, 480M
|__ Port 1: Dev 7, If 3, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 1: Dev 7, If 1, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 1: Dev 7, If 4, Class=Communications, Driver=cdc_ether, 480M
|__ Port 1: Dev 7, If 2, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 1: Dev 7, If 0, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 3: Dev 4, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 3: Dev 4, If 1, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 3: Dev 4, If 2, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 4: Dev 5, If 1, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 5, If 2, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 5, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 5, If 3, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
$ usb-devices
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev=05.10
S: Manufacturer=Linux 5.10.17-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 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=480 MxCh= 4
D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2109 ProdID=3431 Rev=04.21
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
T: Bus=01 Lev=02 Prnt=02 Port=00 Cnt=01 Dev#= 7 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= 6 Cfg#= 1 Atr=a0 MxPwr=500mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=option
I: If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
I: If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
I: If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
I: If#=0x4 Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether
I: If#=0x5 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=02 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c52b Rev=12.11
S: Manufacturer=Logitech
S: Product=USB Receiver
C: #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=98mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid
I: If#=0x1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
I: If#=0x2 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=03 Dev#= 5 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0403 ProdID=6011 Rev=08.00
S: Manufacturer=FTDI
S: Product=Quad RS232-HS
C: #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=500mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=05.10
S: Manufacturer=Linux 5.10.17-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
$ dmesg | grep ttyUSB
[ 5.562657] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
[ 5.567974] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB1
[ 5.575337] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB2
[ 5.582401] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB3
[ 5.625128] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB4
[ 5.626010] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB5
[ 5.626726] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB6
[ 5.627390] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB7
[ 340.276111] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[ 340.277089] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[ 340.278079] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[ 340.279237] option1 ttyUSB7: GSM modem (1-port) converter now disconnected from ttyUSB7
[ 340.921264] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB4
[ 340.921917] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB5
[ 340.922579] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB6
[ 340.923261] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB7
[ 354.102150] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[ 354.103164] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[ 354.108331] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[ 354.109654] option1 ttyUSB7: GSM modem (1-port) converter now disconnected from ttyUSB7
[ 367.103281] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB4
[ 367.104413] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB5
[ 367.105280] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB6
[ 367.106161] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB7
Below is debugging information after following instructions here
I used step 1. Standalone installation, and installed with the settings:
- 2: 3G, 4G/LTE Base Shield
- vzwinternet (for the APN)
- n (no username/password)
- ttyS0 (for the device)
Modem Output w/o Modem Kit USB Connected:
AT+CPIN?
+CPIN: READY
OK
AT+QGMR
EG25GGBR07A08M2G_30.006.30.006
OK
AT+CPAS
+CPAS: 0
OK
AT+CFUN?
+CFUN: 1
OK
AT+COPS?
+COPS: 0
OK
AT+QCFG="band"
+QCFG: "band",0x0,0x1008,0x0
OK
AT+QCFG="nwscanseq"
+QCFG: "nwscanseq",0501030402
OK
AT+QCFG="nwscanmode"
+QCFG: "nwscanmode",3
OK
AT+QCFG="iotopmode"
ERROR
AT+CGDCONT?
+CGDCONT: 1,"IPV4V6","super","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 2,"IPV4V6","VZWADMIN","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 3,"IPV4V6","VZWINTERNET","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 4,"IPV4V6","VZWAPP","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
+CGDCONT: 5,"IPV4V6","VZWEMERGENCY","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,1
+CGDCONT: 6,"IPV4V6","VZWCLASS6","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
OK
AT+CREG?
+CREG: 0,2
OK
AT+CSQ
+CSQ: 22,99
OK
AT+QCSQ
+QCSQ: "LTE",78,-103,149,-10
OK
AT+QNWINFO
+QNWINFO: "FDD LTE","310260","LTE BAND 4",2325
OK
AT+CGATT?
+CGATT: 0
OK
AT+QCFG="usbnet"
+QCFG: "usbnet",0
OK
System Output w/o Modem Kit USB Connected:
$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 0403:6011 Future Technology Devices International, Ltd FT4232H Quad HS USB-UART/FIFO IC
Bus 001 Device 003: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
$ 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 3: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 3: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 3: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 4: Dev 4, If 1, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 4, If 2, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 4, If 0, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
|__ Port 4: Dev 4, If 3, Class=Vendor Specific Class, Driver=ftdi_sio, 12M
$ usb-devices
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=480 MxCh= 1
D: Ver= 2.00 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=1d6b ProdID=0002 Rev=05.10
S: Manufacturer=Linux 5.10.17-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 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=480 MxCh= 4
D: Ver= 2.10 Cls=09(hub ) Sub=00 Prot=01 MxPS=64 #Cfgs= 1
P: Vendor=2109 ProdID=3431 Rev=04.21
S: Product=USB2.0 Hub
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=01 Dev#= 3 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=046d ProdID=c52b Rev=12.11
S: Manufacturer=Logitech
S: Product=USB Receiver
C: #Ifs= 3 Cfg#= 1 Atr=a0 MxPwr=98mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=01 Driver=usbhid
I: If#=0x1 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=01 Prot=02 Driver=usbhid
I: If#=0x2 Alt= 0 #EPs= 1 Cls=03(HID ) Sub=00 Prot=00 Driver=usbhid
T: Bus=01 Lev=02 Prnt=02 Port=03 Cnt=02 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=0403 ProdID=6011 Rev=08.00
S: Manufacturer=FTDI
S: Product=Quad RS232-HS
C: #Ifs= 4 Cfg#= 1 Atr=80 MxPwr=500mA
I: If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x1 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
I: If#=0x3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio
T: Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=5000 MxCh= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=05.10
S: Manufacturer=Linux 5.10.17-v7l+ xhci-hcd
S: Product=xHCI Host Controller
S: SerialNumber=0000:01:00.0
C: #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I: If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
$ dmesg | grep ttyUSB
[ 5.562934] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB0
[ 5.566145] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB1
[ 5.569432] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB2
[ 5.572648] usb 1-1.4: FTDI USB Serial Device converter now attached to ttyUSB3
[12370.725550] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB4
[12370.725974] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB5
[12370.726356] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB6
[12370.726751] usb 1-1.1: GSM modem (1-port) converter now attached to ttyUSB7
[14232.589576] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[14232.592422] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[14232.593811] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[14232.594867] option1 ttyUSB7: GSM modem (1-port) converter now disconnected from ttyUSB7
$ dmesg | grep ttyS0
[ 1.577169] fe215040.serial: ttyS0 at MMIO 0xfe215040 (irq = 38, base_baud = 62500000) is a 16550