|
飛凌嵌入式OK3588-C開(kāi)發(fā)板是一款性能強勁的旗艦產(chǎn)品,采用核心板+底板的分體式設計,基于Rockchip RK3588處理器設計,該處理器具有超高性能,包含4核Cortex-A55和4核Cortex-A76架構,Cortex-A55主頻高達1.8GHz,Cortex-A76主頻高達2.4GHz,且內置 NPU,功能豐富,可玩性極高。今天我就將借助OK3588-C開(kāi)發(fā)板進(jìn)行4G模組使用與測試。
一、Gobinet/QMI-WWAN/PPP撥號概述
1. Gobinet撥號
GOBI 高通Gobi無(wú)線(xiàn)寬帶芯片技術(shù),只需一個(gè)模塊即可支持多種移動(dòng)寬帶網(wǎng)絡(luò )和眾多移動(dòng)運營(yíng)商。高通公司稱(chēng)全新的芯片將基于Gobi 4G LTE無(wú)線(xiàn)基帶、MDM9615和MDM9215。這種技術(shù)可以在FDD和TDD網(wǎng)絡(luò )下進(jìn)行LTE連接,同時(shí)支持HSPA+和EV-DO網(wǎng)絡(luò )、2G/3G網(wǎng)絡(luò )。這意味著(zhù)用戶(hù)可以在本地使用高速4G LTE網(wǎng)絡(luò ),在其他地方使用3G網(wǎng)絡(luò )。Gobi平臺在MDM芯片組的基礎上還提供了軟件增強層,這樣可以使用不同技術(shù)下的無(wú)線(xiàn)連接更簡(jiǎn)單。
2. QMI-WWAN協(xié)議撥號
QMI: Qualcom Message Interface
MSM: Mobile station mode
AP: Application Procesor
高通平臺目前都是非對稱(chēng)多核心,最主要的是AP和Modem。兩個(gè)處理器怎么進(jìn)行通信呢,我們把AP和Modem當作兩個(gè)主機,問(wèn)題就變得了很簡(jiǎn)單,TCP/IP協(xié)議不是一種非常成功的進(jìn)程間跨主機通信方式。高通沒(méi)有采用這種方式,但是借鑒了TCP/IP的框架設計。
Qualcomm MSM Interface,作用用于A(yíng)P和BP側的交互,通俗說(shuō)法就是讓設備終端TE(可以是手機,PDA,計算機)
對高通BP側的AMSS系統進(jìn)行操作,如調用函數,讀取數據,設置其中的NV項等。
3.PPP協(xié)議撥號:點(diǎn)對點(diǎn)協(xié)議
PPP(點(diǎn)到點(diǎn)協(xié)議)在撥號過(guò)程中用于MS和PC間數據交互、協(xié)商。在撥號流程的初期首先開(kāi)啟的就是PC和MS直接的PPP過(guò)程,在撥號成功后,還需要依靠PPP協(xié)議對IP包進(jìn)行封裝傳輸數據。
官網(wǎng)源碼:https://ppp.samba.org
二 、驅動(dòng)檢查
首先檢查是否有USB設備信息。
[backcolor=rgba(18, 18, 18, 0.5)]
然后在dev目錄下查看設備。
[backcolor=rgba(18, 18, 18, 0.5)]
另外在dev下還有一個(gè)qcqmi0。
[backcolor=rgba(18, 18, 18, 0.5)]
說(shuō)明驅動(dòng)已經(jīng)集成了GobiNet。
三、撥號上網(wǎng)
撥號程序使用移遠提供的quectel-CM,這是一個(gè)4G連接管理程序,交叉編譯后得到可執行bin“quectel-CM”,將quectel-CM下的Makefile文件修改成如下,然后 make
CC:= aarch64-linux-gnu-gcc
[backcolor=rgba(18, 18, 18, 0.5)]
把這個(gè)bin放到OK3588-C開(kāi)發(fā)板上啟動(dòng)后上述一、二驅動(dòng)沒(méi)有問(wèn)題的情況下直接執行該bin就可以。將quectel-CM可執行程序拷貝到OK3588-C開(kāi)發(fā)板中。
【注】移動(dòng)是[cmnet],電信是[ctnet]。
$ ./quectel-CM -s ctnet &root@ok3588:~# [03-16_23:36:36:353] WCDMALinux&Android_V1.1.34 [03-16_23:36:36:356] ./quectel-CM profile[1] = ctnet///0, pincode = (null) [03-16_23:36:36:364] Find /sys/bus/usb/devices/1-1 idVendor=2c7c idProduct=0125 [03-16_23:36:36:370] Find /sys/bus/usb/devices/1-1:1.4/net/usb0 [03-16_23:36:36:375] Find usbnet_adapter = usb0 [03-16_23:36:36:380] Find /sys/bus/usb/devices/1-1:1.4/GobiQMI/qcqmi0 [03-16_23:36:36:386] Find qmichannel = /dev/qcqmi0 [03-16_23:36:36:454] Get clientWDS = 7 [03-16_23:36:36:486] Get clientDMS = 8 [03-16_23:36:36:518] Get clientNAS = 9 [03-16_23:36:36:550] Get clientUIM = 10 [03-16_23:36:36:583] Get clientWDA = 11 [03-16_23:36:36:614] requestBaseBandVersion EC20CEFAGR06A08M4G [03-16_23:36:36:710] requestGetSIMStatus SIMStatus: SIM_READY [03-16_23:36:36:710] requestSetProfile[1] ctnet///0 [03-16_23:36:36:774] requestGetProfile[1] ctnet///0 [03-16_23:36:36:806] requestRegistrationState2 MCC: 0, MNC: 0, PS: Detached, DataCap: UNKNOW [03-16_23:36:36:837] requestQueryDataCall IPv4ConnectionStatus: DISCONNECTED [03-16_23:36:36:902] requestRegistrationState2 MCC: 0, MNC: 0, PS: Detached, DataCap: UNKNOW [03-16_23:36:40:870] requestRegistrationState2 MCC: 0, MNC: 0, PS: Detached, DataCap: UNKNOW [03-16_23:36:41:958] requestRegistrationState2 MCC: 0, MNC: 0, PS: Detached, DataCap: UNKNOW [03-16_23:36:42:118] requestRegistrationState2 MCC: 0, MNC: 0, PS: Attached, DataCap: 1XEVDO_REVB [03-16_23:36:42:182] requestRegistrationState2 MCC: 0, MNC: 0, PS: Attached, DataCap: 1XEVDO_REVB [03-16_23:36:42:214] requestSetupDataCall QMUXResult = 0x1, QMUXError = 0xe [03-16_23:36:44:166] requestRegistrationState2 MCC: 460, MNC: 11, PS: Detached, DataCap: UNKNOW [03-16_23:36:45:158] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE [03-16_23:36:45:222] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE [03-16_23:36:45:285] requestSetupDataCall WdsConnectionIPv4Handle: 0x871aef60 [03-16_23:36:45:382] requestRegistrationState2 MCC: 460, MNC: 11, PS: Attached, DataCap: LTE [03-16_23:36:45:413] requestQueryDataCall IPv4ConnectionStatus: CONNECTED [03-16_23:36:45:478] ifconfig usb0 up [03-16_23:36:45:496] Fail to access /usr/share/udhcpc/default.script, errno: 2 (No such file or directory) [03-16_23:36:45:500] busybox udhcpc -f -n -q -t 5 -i usb0udhcpc: started, v1.30.1udhcpc: sending discoverudhcpc: sending select for 10.21.127.53udhcpc: lease of 10.21.127.53 obtained, lease time 7200 [03-16_23:36:46:534] requestRegistrationState2 MCC: 460, MNC: 3, PS: Attached, DataCap: 1XEVDO_REVB [03-16_23:36:46:566] requestRegistrationState2 MCC: 460, MNC: 3, PS: Attached, DataCap: 1XEVDO_REVB
這就是撥號成功了,當然也可查看IP信息。
[backcolor=rgba(18, 18, 18, 0.5)]
接下來(lái)就是ping一下看是否可以聯(lián)網(wǎng)。
# ping 211.149.226.120
[backcolor=rgba(18, 18, 18, 0.5)]
可以看到能ping通外網(wǎng)。
這樣設備就可以作為一個(gè)移動(dòng)的網(wǎng)關(guān)的,配上無(wú)線(xiàn)網(wǎng)絡(luò ),就可以做一個(gè)無(wú)線(xiàn)路由器了。
|
|