IPCP ConfReq Gets No Response

While trying to start up the PPP network interface, it fails at the IPCP ConfReq step. It’s unclear if this is related to a configuration issue, a network issue, or something else. This is using the Quectel EG25-G mini PCIe on the 3G/4G Hat. Raspberry Pi is a 4b, the Sixfab_PPP_Installer was used to set up PPP.

I tested the T-Mobile SIM card in an Android phone and was able to use 3G and 4G data, so it does not appear to be an issue with the SIM, Carrier, or Plan.

~ $ sudo pon
pppd options in effect:
debug		# (from /etc/ppp/peers/provider)
updetach		# (from /etc/ppp/peers/provider)
persist		# (from /etc/ppp/peers/provider)
dump		# (from /etc/ppp/peers/provider)
noauth		# (from /etc/ppp/peers/provider)
remotename 3gppp		# (from /etc/ppp/peers/provider)
/dev/ttyS0		# (from /etc/ppp/peers/provider)
115200		# (from /etc/ppp/peers/provider)
lock		# (from /etc/ppp/peers/provider)
connect chat -s -v -f /etc/chatscripts/chat-connect -T fast.t-mobile.com		# (from /etc/ppp/peers/provider)
disconnect chat -s -v -f /etc/chatscripts/chat-disconnect		# (from /etc/ppp/peers/provider)
nocrtscts		# (from /etc/ppp/peers/provider)
modem		# (from /etc/ppp/peers/provider)
asyncmap 0		# (from /etc/ppp/options)
lcp-echo-failure 4		# (from /etc/ppp/options)
lcp-echo-interval 30		# (from /etc/ppp/options)
hide-password		# (from /etc/ppp/peers/provider)
novj		# (from /etc/ppp/peers/provider)
novjccomp		# (from /etc/ppp/peers/provider)
ipcp-accept-local		# (from /etc/ppp/peers/provider)
ipcp-accept-remote		# (from /etc/ppp/peers/provider)
ipparam 3gppp		# (from /etc/ppp/peers/provider)
noipdefault		# (from /etc/ppp/peers/provider)
ipcp-max-failure 30		# (from /etc/ppp/peers/provider)
defaultroute		# (from /etc/ppp/peers/provider)
usepeerdns		# (from /etc/ppp/peers/provider)
noccp		# (from /etc/ppp/peers/provider)
noipx		# (from /etc/ppp/options)
abort on (BUSY)
abort on (NO CARRIER)
abort on (NO DIALTONE)
abort on (ERROR)
abort on (NO ANSWER)
timeout set to 30 seconds
send (AT^M)
expect (OK)
^M
OK
 -- got it

send (ATE0^M)
expect (OK)
^M
^M
OK
 -- got it

send (AT+CPIN?^M)
expect (OK)
^M
^M
+CPIN: READY^M
^M
OK
 -- got it

send (AT+CSQ^M)
expect (OK)
^M
^M
+CSQ: 21,99^M
^M
OK
 -- got it

send (AT+CREG?^M)
expect (OK)
^M
^M
+CREG: 0,1^M
^M
OK
 -- got it

send (AT+CGREG?^M)
expect (OK)
^M
^M
+CGREG: 0,1^M
^M
OK
 -- got it

send (AT+COPS?^M)
expect (OK)
^M
^M
+COPS: 0,0,"T-Mobile",7^M
^M
OK
 -- got it

send (AT+CGDCONT=1,"IP","fast.t-mobile.com",,0,0^M)
expect (OK)
^M
^M
OK
 -- got it

send (ATD*99#^M)
expect (CONNECT)
^M
^M
CONNECT
 -- got it

Script chat -s -v -f /etc/chatscripts/chat-connect -T fast.t-mobile.com finished (pid 1879), status = 0x0
Serial connection established.
using channel 2
Using interface ppp0
Connect: ppp0 <--> /dev/ttyS0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x748f61af> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x3 <asyncmap 0x0> <auth chap MD5> <magic 0xab875e30> <pcomp> <accomp>]
No auth is possible
sent [LCP ConfRej id=0x3 <auth chap MD5>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x748f61af> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x4 <asyncmap 0x0> <magic 0xab875e30> <pcomp> <accomp>]
sent [LCP ConfAck id=0x4 <asyncmap 0x0> <magic 0xab875e30> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0x748f61af]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
rcvd [LCP DiscReq id=0x5 magic=0xab875e30]
rcvd [LCP EchoRep id=0x0 magic=0xab875e30 74 8f 61 af]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
sent [LCP EchoReq id=0x1 magic=0x748f61af]
IPCP: timeout sending Config-Requests
sent [LCP TermReq id=0x2 "No network protocols running"]
sent [LCP TermReq id=0x3 "No network protocols running"]
Connection terminated.
abort on (ERROR)
abort on (NO DIALTONE)

Sending break to the modem
send (+++^M)
send (+++^M)
send (+++^M)

Goodbye
Script chat -s -v -f /etc/chatscripts/chat-disconnect finished (pid 2190), status = 0x0
Serial link disconnected.
Modem hangup

Additional system info here:

~ $ uname -a
Linux butlr-gateway 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux
~ $ cat /proc/cpuinfo 
processor	: 0
model name	: ARMv7 Processor rev 3 (v7l)
BogoMIPS	: 126.00
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 1
model name	: ARMv7 Processor rev 3 (v7l)
BogoMIPS	: 126.00
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 2
model name	: ARMv7 Processor rev 3 (v7l)
BogoMIPS	: 126.00
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

processor	: 3
model name	: ARMv7 Processor rev 3 (v7l)
BogoMIPS	: 126.00
Features	: half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32 
CPU implementer	: 0x41
CPU architecture: 7
CPU variant	: 0x0
CPU part	: 0xd08
CPU revision	: 3

Hardware	: BCM2711
Revision	: b03115
Serial		: 1000000017cdd8d4
Model		: Raspberry Pi 4 Model B Rev 1.5
~ $ atcom -p /dev/ttyS0 AT+COPS?

+COPS: 0,0,"T-Mobile",7

OK

~ $ atcom -p /dev/ttyS0 AT+CSQ

+CSQ: 23,99

OK
~ $ sudo cat /etc/ppp/peers/provider
# /etc/ppp/peers/provider
/dev/ttyS0 115200
# The chat script, customize your APN in this file
connect 'chat -s -v -f /etc/chatscripts/chat-connect -T fast.t-mobile.com'
# The close script
disconnect 'chat -s -v -f /etc/chatscripts/chat-disconnect'
# Hide password in debug messages
hide-password
# The phone is not required to authenticate
noauth
persist
# Debug info from pppd
debug
# If you want to use the HSDPA link as your gateway
defaultroute
# pppd must not propose any IP address to the peer
noipdefault
# No ppp compression
novj
novjccomp
noccp
ipcp-accept-local
ipcp-accept-remote
local
# For sanity, keep a lock on the serial line
lock
modem
dump
updetach
# Hardware flow control
nocrtscts
remotename 3gppp
ipparam 3gppp
ipcp-max-failure 30
# Ask the peer for up to 2 DNS server addresses
usepeerdns

Hi,

Thank you for providing the detailed logs and system information.

PPP (Point-to-Point Protocol) is a legacy protocol, and in many cases, it’s more efficient to use modern methods such as ECM (Ethernet Control Model) or QMI (Qualcomm MSM Interface) for establishing network connections. These protocols are better suited for current technologies, offering improved performance and reliability.

Switching to either ECM or QMI could resolve your connection issues and provide a more robust and efficient network setup.
If you need any assistance in making this change, feel free to ask. We’re here to help!