4G/5G Dial-Up
This document explains how to perform dial-up on Linux systems with Neardi 3399Pro, 3568, and 3588 models using commands.
Install Tool Packages
Install usbutils
sudo apt update
sudo apt install usbutils
Downloadnd5g installation package
Install nd5g
sudo dpkg -i utilneardi-nd5g1.0_arm64.deb
Check if the installation was successful
neardi@LPA3588:~$ dpkg --list | grep nd5g
ii nd5g 1.0-ubuntu20.04.neardi arm64 Neardi 4G/5G dial application.
Dial-Up
sudo nd5g
The result of a successful dial-up:
neardi@LPA3588:~$ sudo nd5g
[sudo] password for neardi:
Neardi 5G Dial APP
Dialing .... [ 8%]
Product Module: EC20F
Dialing ............. [ 25%] terminate called without an active exception
pppd options in effect:
debug # (from /etc/ppp/peers/quectel-ppp)
nodetach # (from /etc/ppp/peers/quectel-ppp)
dump # (from /etc/ppp/peers/quectel-ppp)
noauth # (from /etc/ppp/peers/quectel-ppp)
user test # (from /etc/ppp/peers/quectel-ppp)
password ?????? # (from /etc/ppp/peers/quectel-ppp)
remotename 3gppp # (from /etc/ppp/peers/quectel-ppp)
/dev/ttyUSB3 # (from /etc/ppp/peers/quectel-ppp)
115200 # (from /etc/ppp/peers/quectel-ppp)
lock # (from /etc/ppp/peers/quectel-ppp)
connect chat -s -v -f /etc/ppp/peers/quectel-chat-connect # (from /etc/ppp/peers/quectel-ppp)
disconnect chat -s -v -f /etc/ppp/peers/quectel-chat-disconnect # (from /etc/ppp/peers/quectel-ppp)
nocrtscts # (from /etc/ppp/peers/quectel-ppp)
modem # (from /etc/ppp/peers/quectel-ppp)
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/quectel-ppp)
novj # (from /etc/ppp/peers/quectel-ppp)
novjccomp # (from /etc/ppp/peers/quectel-ppp)
ipcp-accept-local # (from /etc/ppp/peers/quectel-ppp)
ipcp-accept-remote # (from /etc/ppp/peers/quectel-ppp)
ipparam 3gppp # (from /etc/ppp/peers/quectel-ppp)
noipdefault # (from /etc/ppp/peers/quectel-ppp)
ipcp-max-failure 30 # (from /etc/ppp/peers/quectel-ppp)
defaultroute # (from /etc/ppp/peers/quectel-ppp)
usepeerdns # (from /etc/ppp/peers/quectel-ppp)
noccp # (from /etc/ppp/peers/quectel-ppp)
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)
AT^M^M
OK
-- got it
send (ATE0^M)
expect (OK)
^M
ATE0^M^M
OK
-- got it
send (ATI;+CSUB;+CSQ;+CPIN?;+COPS?;+CGREG?;&D2^M)
Aborted
neardi@LPA3588:~$ expect (OK)
^M
^M
Quectel^M
EC20F^M
Revision: EC20CEHDLGR06A09M1G^M
^M
SubEdition: V02^M
^M
+CSQ: 28,99^M
^M
+CPIN: READY^M
^M
+COPS: 0,0,"CHINA MOBILE",7^M
^M
+CGREG: 0,1^M
^M
OK
-- got it
send (AT+CGDCONT=1,"IP","3gnet",,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/ppp/peers/quectel-chat-connect finished (pid 1196), status = 0x0
Serial connection established.
using channel 1
Using interface ppp0
Connect: ppp0 <--> /dev/ttyUSB3
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0xee802559> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0xedefdc5> <pcomp> <accomp>]
sent [LCP ConfAck id=0x0 <asyncmap 0x0> <auth chap MD5> <magic 0xedefdc5> <pcomp> <accomp>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0xee802559> <pcomp> <accomp>]
sent [LCP EchoReq id=0x0 magic=0xee802559]
rcvd [LCP DiscReq id=0x1 magic=0xedefdc5]
rcvd [CHAP Challenge id=0x1 <1436f1b1197c6a49840b24da990dd01e>, name = "UMTS_CHAP_SRVR"]
sent [CHAP Response id=0x1 <15579b898bf2201094a906b200d961c0>, name = "test"]
rcvd [LCP EchoRep id=0x0 magic=0xedefdc5 ee 80 25 59]
rcvd [CHAP Success id=0x1 ""]
CHAP authentication succeeded
CHAP authentication succeeded
sent [IPCP ConfReq id=0x1 <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns2 0.0.0.0>]
rcvd [IPCP ConfReq id=0x0]
sent [IPCP ConfNak id=0x0 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x1 <addr 10.132.233.76> <ms-dns1 211.136.150.86> <ms-dns2 211.136.150.88>]
sent [IPCP ConfReq id=0x2 <addr 10.132.233.76> <ms-dns1 211.136.150.86> <ms-dns2 211.136.150.88>]
rcvd [IPCP ConfReq id=0x1]
sent [IPCP ConfAck id=0x1]
rcvd [IPCP ConfAck id=0x2 <addr 10.132.233.76> <ms-dns1 211.136.150.86> <ms-dns2 211.136.150.88>]
Could not determine remote IP address: defaulting to 10.64.64.64
not replacing default route to eth0 [192.168.1.1]
local IP address 10.132.233.76
remote IP address 10.64.64.64
primary DNS address 211.136.150.86
secondary DNS address 211.136.150.88
Script /etc/ppp/ip-up started (pid 1208)
Script /etc/ppp/ip-up finished (pid 1208), status = 0x0
Check the network status:
neardi@LPA3588:~$ ifconfig
ppp0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 10.132.233.76 netmask 255.255.255.255 destination 10.64.64.64
ppp txqueuelen 3 (Point-to-Point Protocol)
RX packets 4 bytes 52 (52.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 4 bytes 58 (58.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Error Analysis
Phenomenon One
neardi@LPA3588:~$ sudo nd5g
Neardi 5G Dial APP
Dialing ........ [ 15%]
Unknow module
Cannot find any 4G/5G modules!
Dialing ...................................................... [100%]
No 4G/5G module found: :Check if you purchased the 4G/5G module.
Phenomenon Two
neardi@LPA3588:~$ sudo nd5g
[sudo] password for neardi:
Neardi 5G Dial APP
Dialing .... [ 8%]
Product Module: EC20F
Dialing ........ [ 15%]
No SIM card!
Dialing ...................................................... [100%]
No SIM card found: Check if the SIM card is inserted and properly seated.
Phenomenon Three
Dial-up is successful, but pinging different networks fails
Check if the antenna is properly connected and if the APN settings are correct.
Phenomenon Four
Dial-up is successful, but the connection drops after some time and redialing fails
Check if the module version is up to date.
Reapply power to the dial-up module, then try dialing again.
RK3399Pro series
echo 157 > /sys/class/gpio/export;
echo out > /sys/class/gpio/gpio157/direction; //power off
echo 1 > /sys/class/gpio/gpio157/value; // power on
RK3568系列
echo 22 > /sys/class/gpio/export;
echo out > /sys/class/gpio/gpio22/direction; //power off
echo 1 > /sys/class/gpio/gpio22/value; // power on
RK3588系列
echo 120 > /sys/class/gpio/export;
echo out > /sys/class/gpio/gpio120/direction; //power off
echo 1 > /sys/class/gpio/gpio120/value; // power on
AT Command Queries
Description | AT Command |
---|---|
Check if the network is registered | echo -en "AT+QENG="SERVINGCELL"\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Check if the SIM card is working | echo -e "AT+CPIN?\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Check SIM card network activation | echo -e "AT+CEREG?\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Confirm SIM card system status | echo -e "AT+CGDCONT?\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Query SIM card serial number | echo -e "AT+CGSN\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Query SIM card firmware version | echo -e "AT+CGMR\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Set or query terminal error report | echo -e "AT+CMEE\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Restart SIM card | echo -e "AT+NRB\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
Query SIM card signal strength | echo -e "AT+CSQ\r\n" > /dev/ttyUSB3 && cat /dev/ttyUSB3 |
More Information
DownloadQuecOpen for more detailed AT commands.