飛凌嵌入式OK3588-C開發板是一款性能強勁的旗艦產品,采用核心板+底板的分體式設計,基于Rockchip RK3588處理器設計,該處理器具有超高性能,包含4核Cortex-A55和4核Cortex-A76架構,Cortex-A55主頻高達1.8GHz,Cortex-A76主頻高達2.4GHz,且內置 NPU,功能豐富,可玩性極高。今天我就將借助OK3588-C開發板進行4G模組使用與測試。
一、Gobinet/QMI-WWAN/PPP撥號概述
1. Gobinet撥號
GOBI 高通Gobi無線寬帶芯片技術,只需一個模塊即可支持多種移動寬帶網絡和眾多移動運營商。高通公司稱全新的芯片將基于Gobi 4G LTE無線基帶、MDM9615和MDM9215。這種技術可以在FDD和TDD網絡下進行LTE連接,同時支持HSPA+和EV-DO網絡、2G/3G網絡。這意味著用戶可以在本地使用高速4G LTE網絡,在其他地方使用3G網絡。Gobi平臺在MDM芯片組的基礎上還提供了軟件增強層,這樣可以使用不同技術下的無線連接更簡單。
2. QMI-WWAN協議撥號
QMI: Qualcom Message Interface
MSM: Mobile station mode
AP: Application Procesor
高通平臺目前都是非對稱多核心,最主要的是AP和Modem。兩個處理器怎么進行通信呢,我們把AP和Modem當作兩個主機,問題就變得了很簡單,TCP/IP協議不是一種非常成功的進程間跨主機通信方式。高通沒有采用這種方式,但是借鑒了TCP/IP的框架設計。
Qualcomm MSM Interface,作用用于AP和BP側的交互,通俗說法就是讓設備終端TE(可以是手機,PDA,計算機)
對高通BP側的AMSS系統進行操作,如調用函數,讀取數據,設置其中的NV項等。
3.PPP協議撥號:點對點協議
PPP(點到點協議)在撥號過程中用于MS和PC間數據交互、協商。在撥號流程的初期首先開啟的就是PC和MS直接的PPP過程,在撥號成功后,還需要依靠PPP協議對IP包進行封裝傳輸數據。
官網源碼:https://ppp.samba.org
二 、驅動檢查
首先檢查是否有USB設備信息。
[backcolor=rgba(18, 18, 18, 0.5)]
然后在dev目錄下查看設備。
[backcolor=rgba(18, 18, 18, 0.5)]
另外在dev下還有一個qcqmi0。
[backcolor=rgba(18, 18, 18, 0.5)]
說明驅動已經集成了GobiNet。
三、撥號上網
撥號程序使用移遠提供的quectel-CM,這是一個4G連接管理程序,交叉編譯后得到可執行bin“quectel-CM”,將quectel-CM下的Makefile文件修改成如下,然后 make
CC:= aarch64-linux-gnu-gcc
[backcolor=rgba(18, 18, 18, 0.5)]
把這個bin放到OK3588-C開發板上啟動后上述一、二驅動沒有問題的情況下直接執行該bin就可以。將quectel-CM可執行程序拷貝到OK3588-C開發板中。
【注】移動是[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)]
接下來就是ping一下看是否可以聯網。
# ping 211.149.226.120
[backcolor=rgba(18, 18, 18, 0.5)]
可以看到能ping通外網。
這樣設備就可以作為一個移動的網關的,配上無線網絡,就可以做一個無線路由器了。
|