EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 飞凌嵌入式 于 2023-6-16 13:56 编辑 $ P6 u" M |6 o5 }+ u+ V# ^
~9 W% ?! p. A# S
本篇试用报告由发烧友 ouxiaolong提供,感谢ouxiaolong的支持。飞凌嵌入式会持续开展开发板有奖试用活动,更有京东E卡等着你!欢迎大家的持续关注。 4 [, N. F/ x4 s3 H% x1 d: F
飞凌嵌入式OK3588-C开发板是一款性能强劲的旗舰产品,采用核心板+底板的分体式设计,基于Rockchip RK3588处理器设计,该处理器具有超高性能,包含4核Cortex-A55和4核Cortex-A76架构,Cortex-A55主频高达1.8GHz,Cortex-A76主频高达2.4GHz,且内置 NPU,功能丰富,可玩性极高。今天我就将借助OK3588-C开发板进行4G模组使用与测试。
" H. k8 V& M) M, ^3 m- e& D " c5 z) @; G! ^( y8 q1 e. @5 f
/ U- Q s2 H, F一、Gobinet/QMI-WWAN/PPP拨号概述
3 N. ?9 n" W& C9 M2 f- H" a+ t
1. Gobinet拨号 GOBI 高通Gobi无线宽带芯片技术,只需一个模块即可支持多种移动宽带网络和众多移动运营商。高通公司称全新的芯片将基于Gobi 4G LTE无线基带、MDM9615和MDM9215。这种技术可以在FDD和TDD网络下进行LTE连接,同时支持HSPA+和EV-DO网络、2G/3G网络。这意味着用户可以在本地使用高速4G LTE网络,在其他地方使用3G网络。Gobi平台在MDM芯片组的基础上还提供了软件增强层,这样可以使用不同技术下的无线连接更简单。 , P3 M7 c" E+ h- y* R4 U# U
2. QMI-WWAN协议拨号 QMI: Qualcom Message InteRFace MSM: Mobile station mode AP: Application Procesor
$ O3 c* S% v( p- O4 P( U
高通平台目前都是非对称多核心,最主要的是AP和Modem。两个处理器怎么进行通信呢,我们把AP和Modem当作两个主机,问题就变得了很简单,TCP/IP协议不是一种非常成功的进程间跨主机通信方式。高通没有采用这种方式,但是借鉴了TCP/IP的框架设计。 Qualcomm MSM Interface,作用用于AP和BP侧的交互,通俗说法就是让设备终端TE(可以是手机,PDA,计算机) 对高通BP侧的AMSS系统进行操作,如调用函数,读取数据,设置其中的NV项等。 $ |) s, j# e0 |4 P
3.PPP协议拨号:点对点协议 PPP(点到点协议)在拨号过程中用于MS和PC间数据交互、协商。在拨号流程的初期首先开启的就是PC和MS直接的PPP过程,在拨号成功后,还需要依靠PPP协议对IP包进行封装传输数据。 官网源码:https://ppp.samba.org ) I$ F" a) s) h" c4 y% z
* Q3 B- ]& s9 j5 C/ S! R/ E
二、驱动检查
e" {' Q$ Q+ ~# i, R首先检查是否有USB设备信息。 然后在dev目录下查看设备。 另外在dev下还有一个qcqmi0。 说明驱动已经集成了GobiNet。 # [/ J- ?1 X+ O3 ?8 e
! O9 ?! h( T; t. I
7 A& G1 ]: @9 ^. _1 B; X/ S$ A
三、拨号上网拨号程序使用移远提供的quectel-CM,这是一个4G连接管理程序,交叉编译后得到可执行bin“quectel-CM”,将quectel-CM下的Makefile文件修改成如下,然后 make CC:= aarch64-linux-gnu-gcc 0 O e) D& |; h, \5 z3 s! t' J
把这个bin放到OK3588-C开发板上启动后上述一、二驱动没有问题的情况下直接执行该bin就可以。将quectel-CM可执行程序拷贝到OK3588-C开发板中。 : m6 e/ K* N4 `7 c
【注】移动是[cmnet],电信是[ctnet]。 $ ./quectel-CM -s ctnet & root@ok3588:~# [03-16_23:36:36:353] WCDMA<E_QConnectManager_Linux&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 usb0 udhcpc: started, v1.30.1 udhcpc: sending discover udhcpc: sending select for 10.21.127.53 udhcpc: 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
% A V/ D# [( F$ b2 N; W. g; o$ I
4 Q6 d5 S2 A6 i# y+ ~9 x
这就是拨号成功了,当然也可查看IP信息。 接下来就是ping一下看是否可以联网。 # ping 211.149.226.120 可以看到能ping通外网。 这样设备就可以作为一个移动的网关的,配上无线网络,就可以做一个无线路由器了。 2 e% q ]/ @0 A, c# {6 P
- P5 O+ A. z! G5 r& Q* N
|