Quectel EG25 Base HAT Connection Unavailable

Followed hardware and software setup for Raspberry Pi with Base HAT and Quectel EG25 Module (libqmi).

Shows “Cellular Connection Unavailable” on Sixfab Connect Dashboard. I am able to receive an IP lease, but cannot ping anything using wwan0. See AT command outputs below:

~ $ ifconfig wwan0
wwan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 169.254.172.211 netmask 255.255.0.0 broadcast 169.254.255.255
inet6 fe80::2675:16b4:37c0:266 prefixlen 64 scopeid 0x20
ether c2:ac:23:c6:cc:75 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 35 bytes 4984 (4.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

~ $ atcom --port /dev/ttyUSB2 AT
AT
OK

~ $ atcom --port /dev/ttyUSB2 AT+CPIN?
AT+CPIN?
+CPIN: READY

OK

~ $ atcom --port /dev/ttyUSB2 AT+QGMR
AT+QGMR
EG25GGBR07A08M2G_30.006.30.006

OK

~ $ atcom --port /dev/ttyUSB2 AT+CPAS
AT+CPAS
+CPAS: 0

OK

~ $ atcom --port /dev/ttyUSB2 AT+CFUN?
AT+CFUN?
+CFUN: 1

OK

~ $ atcom --port /dev/ttyUSB2 AT+COPS?
AT+COPS?
+COPS: 0,0,“T-Mobile Twilio”,7

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="band"
AT+QCFG=“band”
+QCFG: “band”,0xbff,0x1e00b0e18df,0x0

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="nwscanseq"
AT+QCFG=“nwscanseq”
+QCFG: “nwscanseq”,0403010502

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="nwscanmode"
AT+QCFG=“nwscanmode”
+QCFG: “nwscanmode”,0

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="iotopmode"
AT+QCFG=“iotopmode”
ERROR

~ $ atcom --port /dev/ttyUSB2 AT+CGDCONT?
AT+CGDCONT?
+CGDCONT: 1,“IP”,“super”,“0.0.0.0”,0,0,0,0
+CGDCONT: 2,“IPV4V6”,“ims”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,0
+CGDCONT: 3,“IPV4V6”,“SOS”,“0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”,0,0,0,1

OK

~ $ atcom --port /dev/ttyUSB2 AT+CREG?
AT+CREG?
+CREG: 0,5

OK

~ $ atcom --port /dev/ttyUSB2 AT+CSQ
AT+CSQ
+CSQ: 21,99

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCSQ
AT+QCSQ
+QCSQ: “LTE”,72,-103,91,-18

OK

~ $ atcom --port /dev/ttyUSB2 AT+QNWINFO
AT+QNWINFO
+QNWINFO: “FDD LTE”,“310260”,“LTE BAND 12”,5035

OK

~ $ atcom --port /dev/ttyUSB2 AT+CGATT?
AT+CGATT?
+CGATT: 1

OK

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="usbnet"
AT+QCFG=“usbnet”
+QCFG: “usbnet”,0

OK

Additional troubleshooting commands:

~ $ atcom --port /dev/ttyUSB2 ATI
ATI
Quectel
EG25
Revision: EG25GGBR07A08M2G

OK

~ $ atcom --port /dev/ttyUSB2 AT+ICCID?
AT+ICCID?
ERROR

~ $ cat /etc/os-release
PRETTY_NAME=“Debian GNU/Linux 11 (bullseye)”
NAME=“Debian GNU/Linux”
VERSION_ID=“11”
VERSION=“11 (bullseye)”
VERSION_CODENAME=bullseye
ID=debian
HOME_URL=“https://www.debian.org/
SUPPORT_URL=“Debian -- User Support
BUG_REPORT_URL=“https://bugs.debian.org/

~ $ uname -a
Linux tpg-raspi-2 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr 3 17:24:16 BST 2023 aarch64 GNU/Linux

~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 052: 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 4: Dev 52, If 0, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 52, If 1, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 52, If 2, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 52, If 3, Class=Vendor Specific Class, Driver=option, 480M
|__ Port 4: Dev 52, If 4, Class=Vendor Specific Class, Driver=qmi_wwan, 480M

~ $ 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=06.01
S: Manufacturer=Linux 6.1.21-v8+ 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=03 Cnt=01 Dev#= 52 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#=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= 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= 4
D: Ver= 3.00 Cls=09(hub ) Sub=00 Prot=03 MxPS= 9 #Cfgs= 1
P: Vendor=1d6b ProdID=0003 Rev=06.01
S: Manufacturer=Linux 6.1.21-v8+ 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

Hi,

If you are using Sixfab CORE, you should not make any libqmi settings or send any AT commands that could break your cellular connection. Please choose either one of them.

@ensar I should choose either one of what? As far as I know, the AT and libqmi commands I’ve sent are necessary for troubleshooting. Do I need to follow any of the tutorials at the following: Tutorials?

Thank you for the detailed information you provided. Everything seems to be working smoothly. However, the Sixfab CORE configures the modem in a different mode than QMI. Therefore, the CORE services continuously work in the background to handle this configuration and ensure the establishment of the cellular connection. There is no need for you to follow any tutorials. Just follow here:

Thank you for your quick replies. Does this mean I should do a full wipe of the raspberry pi and reload Sixfab core from the dashboard install curl code? Currently, the hostname on the dashboard is incorrect and I don’t know if that has anything to do with connection issues as well.

No, you have already completed the installation. Just wait for the CORE services to establish the cellular connection, and there is no need to follow any tutorials. It may take some time. To speed up the process, you can restart the service with the following command:

sudo systemctl restart core_manager

1 Like

Just curious about this configuration:

~ $ atcom --port /dev/ttyUSB2 AT+QCFG="usbnet"
AT+QCFG=“usbnet”
+QCFG: “usbnet”,0

OK

I changed this from 1 to 0 when I went through the tutorials the first time. Should I change this back for the core manager to work properly?

Yes, you can change it with the command below, but CORE services will also do this.

AT+QCFG="usbnet",1

CORE services was not changing that option so I manually did that and the usb interface now shows up in Sixfab connect. I show “Online” with data being registered, but still no connection available.
image

If you activate the remote support setting of your device and share the support key with me, I can help you quickly. Could you PM me your remote-support token so that I can check and solve it? Thanks.