1 Gobinet/QMI-WWAN/PPP Dial-up Overview
1. Gobinet dial
GOBI Qualcomm Gobi wireless broadband chip technology can support multiple mobile broadband networks and many mobile operators with just one module. Qualcomm said the new chip will be based on the Gobi 4G LTE wireless baseband, MDM9615 and MDM9215. This technology can connect to LTE in FDD and TDD networks, while supporting HSPA+ and EV-DO networks, 2G/3G networks. This means that users can use high-speed 4G LTE networks locally and 3G networks elsewhere. The Gobi platform also provides a software enhancement layer based on the MDM chipset, which makes it easier to use wireless connections under different technologies.
2.QMI-WWAN protocol dialing
QMI: Qualcom Message Interface
MSM: Mobile station mode
AP: Application Procesor
Qualcomm platforms are currently all asymmetric multi-core, the most important of which are AP and Modem.
How do two processors communicate? If we regard the AP and the Modem as two hosts, the problem becomes very simple. The TCP/IP protocol is not a very successful inter-process cross-host communication method. Qualcomm did not adopt this method, but borrowed the TCP/IP framework design.
Qualcomm MSM Interface, used for interaction between AP and BP, in layman's terms, it allows the device terminal TE (can be a mobile phone, PDA, computer)
Operate the AMSS system on the Qualcomm BP side, such as calling functions, reading data, setting NV items, etc.
3. PPP protocol dial-up : Point-to-Point Protocol
PPP (Point-to-Point Protocol) is used for data exchange and negotiation between MS and PC during the dial-up process. At the beginning of the dial-up process, the PPP process between PC and MS is started first. After the dial-up is successful, the PPP protocol is still needed to encapsulate IP packets for data transmission.
2 Driver Check
The MYD-YG2UL driver already supports 4G and 5G. The EC20 4G module used here has the following interface:
As you can see, M2 is connected to USB, so if you have a USB to M2 adapter board, you can directly use the home USB interface.
After inserting the 4G module, the following information will appear:
First check if there is USB device information.
Then check the USB device in the dev directory.
There is also a cdc-wdm0 under dev.
It says the driver has integrated QMI.
3 Quectel-CM dial-up Internet access
The dialer uses quectel-CM provided by Quectel, which is a 4G connection management program. There is nothing much to say here. After cross-compilation, the executable bin "quectel-CM" is obtained.
Modify the Makefile under quectel-CM as follows, then make
CC:= ${CC}
Put this bin on the board and start it. If there is no problem with the first and second drivers, just execute this bin. Copy the quectel-CM executable program to the board.
【Note】Mobile is [cmnet], telecommunications is [ctnet].
$ ./quectel-CM -s ctnet &
or
$ ./quectel-CM &
root@myir-rzg2ul:~# ./quectel-CM -s ctnet
[09-18_01:01:55:846] Quectel_Linux_ConnectManager_SR01A01V30
[09-18_01:01:55:847] ./quectel-CM profile[1] = ctmet///0, pincode = (null)
[09-18_01:01:55:848] Find /sys/bus/usb/devices/2-1.1 idVendor=2c7c idProduct=0125
[09-18_01:01:55:849] Find /sys/bus/usb/devices/2-1.1:1.4/net/wwan0
[09-18_01:01:55:849] Find usbnet_adapter = wwan0
[09-18_01:01:55:850] Find /sys/bus/usb/devices/2-1.1:1.4/usbmisc/cdc-wdm0
[09-18_01:01:55:850] Find qmichannel = /dev/cdc-wdm0
[09-18_01:01:55:865] cdc_wdm_fd = 7
[09-18_01:01:55:962] Get clientWDS = 20
[09-18_01:01:55:994] Get clientDMS = 1
[09-18_01:01:56:026] Get clientNAS = 4
[09-18_01:01:56:058] Get clientUIM = 1
[09-18_01:01:56:091] Get clientWDA = 1
[09-18_01:01:56:123] requestBaseBandVersion EC20CEFAGR06A08M4G
[09-18_01:01:56:186] requestGetSIMStatus SIMStatus: SIM_READY
[09-18_01:01:56:187] requestSetProfile[1] ctmet///0
[09-18_01:01:56:251] requestGetProfile[1] ctmet///0
[09-18_01:01:56:282] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE
[09-18_01:01:56:314] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED
[09-18_01:01:56:378] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE
[09-18_01:01:56:858] requestSetupDataCall WdsConnectionIPv4Handle: 0x871698d0
[09-18_01:01:56:923] requestQueryDataCall IPv4ConnectionStatus: CONNECTED
[09-18_01:01:56:955] ifconfig wwan0 up
[09-18_01:01:56:988] busybox udhcpc -f -n -q -t 5 -i wwan0
udhcpc: started, v1.30.1
udhcpc: sending discover
udhcpc: sending select for 10.21.127.53
This means the dial-up is successful. Of course, you can also view the IP information.
If the dial-up fails, you can close wwan0 and dial again.
# ifconfig wwan0 down
# echo Y > /sys/class/net/wwan0/qmi/raw_ip
# ifconfig wwan0 up
# busybox udhcpc -f -n -q -t 5 -i wwan0
The next step is to ping to see if you can connect to the Internet.
# ping 211.149.226.120
【Note 1】Since network communication is required, DHCP is inevitably used. The ideal network communication method is to support the following three methods:
1. Access an existing network. This requires being able to act as a DHCP client.
2. Act as a DHCP server to dynamically assign IP.
3. Specify a fixed IP