找回密码
 注册
关于网站域名变更的通知
查看: 495|回复: 1
打印 上一主题 下一主题

RK3588的4G模组如何使用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2023-6-28 15:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
6 H# M5 P3 u, k5 g7 _" F
5 u# b% H7 O/ p
一、Gobinet/QMI-WWAN/PPP拨号概述) h  H: a1 \: f- F& @' p
1. Gobinet拨号# m' J* j* b% W" u

/ X1 M" r  G6 _2 \GOBI 高通Gobi无线宽带芯片技术,只需一个模块即可支持多种移动宽带网络和众多移动运营商。高通公司称全新的芯片将基于Gobi 4G LTE无线基带、MDM9615和MDM9215。这种技术可以在FDD和TDD网络下进行LTE连接,同时支持HSPA+和EV-DO网络、2G/3G网络。这意味着用户可以在本地使用高速4G LTE网络,在其他地方使用3G网络。Gobi平台在MDM芯片组的基础上还提供了软件增强层,这样可以使用不同技术下的无线连接更简单。2 C; q1 L$ U1 U; c# O" R$ |

2 d" ?6 f2 z: N- ~2. QMI-WWAN协议拨号
. p+ g% D4 \& g, j& E; z8 l3 G

* A$ \5 N9 {# O0 QQMI: Qualcom Message InteRFace
( _4 I# ^$ g) N

) f% T! ^: Y9 K! I; a# vMSM: Mobile station mode6 ~9 u8 r, z0 S- I" ?; k
- L  g6 @; I! G& L$ f4 J# l
AP: Application Procesor+ P' l( _! m, g/ Y0 x7 u
6 [. X. L2 K2 C$ i9 h2 z3 N9 z7 x% Y8 e1 ?
高通平台目前都是非对称多核心,最主要的是AP和Modem。两个处理器怎么进行通信呢,我们把AP和Modem当作两个主机,问题就变得了很简单,TCP/IP协议不是一种非常成功的进程间跨主机通信方式。高通没有采用这种方式,但是借鉴了TCP/IP的框架设计。5 }  W- u, U% E. e: |/ G5 W
; Q8 j8 |2 g. |: t, U
Qualcomm MSM Interface,作用用于AP和BP侧的交互,通俗说法就是让设备终端TE(可以是手机,PDA,计算机)' R8 z6 v1 b$ e3 H0 x
+ o; v: Q6 J, u) a& y
对高通BP侧的AMSS系统进行操作,如调用函数,读取数据,设置其中的NV项等。
4 h+ R7 b# f* X# e" {: ~

' D, h1 t9 t! z5 G2 h  M3.PPP协议拨号:点对点协议' ^! r1 g8 _: i6 M. X8 R$ I8 z& A

% q( t* Y4 J% |PPP(点到点协议)在拨号过程中用于MS和PC间数据交互、协商。在拨号流程的初期首先开启的就是PC和MS直接的PPP过程,在拨号成功后,还需要依靠PPP协议对IP包进行封装传输数据
. Y3 d0 u8 n4 r9 g; K0 G; G# M
) q0 \$ P; b) `5 U
官网源码:https://ppp.samba.org! |  i  |. J4 y+ P! ]! J

+ P3 \1 J; {- m* F二 、驱动检查
6 [" l) [# d6 Z- X

& [8 ^$ V* r" `( L& w, p8 k) g% N' v' T. _0 r

! L6 ~: H/ R+ x" o0 R8 S6 S7 G首先检查是否有USB设备信息。
* ^1 d7 z$ s1 v6 p/ m9 p

1 L0 _3 ]# S: I' @( \: @
: v+ g9 o2 Y% W+ ], G! y( `5 ?( \3 L6 N* F
1 w, d: w! m0 b5 k6 X, w
[backcolor=rgba(18, 18, 18, 0.5)]​
# W# G9 M6 Z! [' R0 H7 n. }  y+ Z- f) m' b- U/ A  {4 _7 e8 n- i6 {
9 t! S2 s) J0 T8 l# a
0 g3 `- j8 h& F0 U2 }- m6 m* F
7 Q. j: S4 @# j. d( p9 B9 n
编辑切换为居中* Y. u3 Y( b1 p; [. P

& Z9 A  F: o, z, ~/ k7 ?% X" {3 F( t" {/ r# z0 b% n

/ D$ z( i* `* }2 g2 P2 m9 w# Q- {" z7 }$ v+ g

, ~9 a% k- a: x9 b7 D0 j5 V7 t1 X
, q' ]9 X8 ?8 f5 q1 K4 X" ?
) ]: w$ T/ z+ _/ T& f% w" }4 K! N  b* k- A
" ?9 [# B, _- R8 c( k
然后在dev目录下查看设备。
- R. w5 C! C$ _# B
/ F% @* x2 ?1 H+ A5 a$ A
5 V7 O% C$ k- |

# r* m6 E4 U" i' O8 f3 d

0 K! |  }3 c; `% K8 t
[backcolor=rgba(18, 18, 18, 0.5)]​
4 v3 r9 i! E, M. F- Q/ ^0 [. [* b: k0 P$ v4 F( z& w

% m1 n: Z/ `5 |8 b" w* v2 B$ V# p% s: P. m% T3 T. O
0 B* s9 k8 Z! t: v% W
编辑切换为居中7 P' z$ u+ w2 g6 j0 b
! C$ B  T* U% a) j, X$ b2 N

5 d' B" a3 j9 Y
/ z6 S9 [% e# c; @4 w! G' }5 ?' i! u: S0 `6 ]/ w1 @1 ^
, x, d4 U7 N1 D! p2 N

, Z- O: w: c1 {( ?! p4 B$ K' ~- G% u" Q

# }4 i2 ]1 \' n$ d. ~
# q3 {" |1 H" s) g4 k
另外在dev下还有一个qcqmi0。, O+ J0 K, P, |
+ }8 }( B& |4 i. d. O% f  W
0 J3 t3 c) I2 p% \

+ b$ ^! F. O# \6 x% F0 ?
% B$ a% V! u0 g7 _% @. ~
[backcolor=rgba(18, 18, 18, 0.5)]​! j4 E+ ]% [& A& M6 V# ^' I. d

0 |9 V% o5 W6 R+ Y: p. M0 e, V
5 K9 s, ]0 L; p. U
3 j' ]! P2 u% i. y' |: D9 l$ C
6 c0 C- i& r" z
编辑切换为居中6 n3 G) c% o% x. r
: F# y+ ~% L) l; r' W. x
" ?+ ]7 x3 u( x. t0 Q
2 w" i' z( w* s" T2 v+ C

$ P7 v/ G9 O; z' C3 J
* t! }( f8 c& z3 B6 J4 H
& @! [* A( G( Z& s! x% s4 v. P+ a/ e! s$ ~: \) U( v' c
# ^5 n- a3 _4 i% \# `0 ?/ z: L# D
$ `4 f2 F$ a8 {; p3 d5 I
说明驱动已经集成了GobiNet。
4 y  G" N2 g3 ?' ?, z2 K- x7 O6 `
; ]' F$ d0 B" w5 v# y- q+ }8 A5 }
三、拨号上网1 h$ L/ p( b  @" Y3 V1 j
拨号程序使用移远提供的quectel-CM,这是一个4G连接管理程序,交叉编译后得到可执行bin“quectel-CM”,将quectel-CM下的Makefile文件修改成如下,然后 make, Q" ]7 |% S8 W* g+ {( a2 q# b) v
7 n" Y2 {8 K  O; @; Y1 k: k
CC:= aarch64-linux-gnu-gcc
  _" n% P! J; A5 _
( m2 ]9 C2 ]$ R4 ?
[backcolor=rgba(18, 18, 18, 0.5)]​9 D4 z. a% s" |: I( z  o& `

% }, f( q" E) M+ j: D

: {: r7 D, t+ O' q: m) [0 m1 B0 _+ o* ]: N- Q$ A1 h; W+ J0 n
* Q5 A3 X& p9 |3 A; V: b& K$ S. l
编辑切换为居中1 {  q) c( y& P; {: j7 X, L
4 P0 h4 l, [0 u: b8 C" G4 ^) Z

. r; [( o4 t( V3 W
/ Y- n5 k8 t& ^' m/ B3 {; d& H# N* z7 S+ i& |! P2 B

. T( u, v% ?* W0 B! m6 }/ d! I1 Z, X7 Q4 m2 w5 k* _# h
把这个bin放到OK3588-C开发板上启动后上述一、二驱动没有问题的情况下直接执行该bin就可以。将quectel-CM可执行程序拷贝到OK3588-C开发板中。
" |  |- b4 G( d/ c3 P

4 ~. V5 s* P' r# |5 F【注】移动是[cmnet],电信是[ctnet]。
+ s  y0 d5 q2 v8 w' H/ \" @
+ C, A# s8 Q/ C, o( O5 g% O7 w
$ ./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 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
- s1 {7 `2 n6 Q  y- Q3 Q
这就是拨号成功了,当然也可查看IP信息。
) j& O7 I. L6 [3 m# l8 B: N( |
$ X  o* K, Q2 ?/ o8 p' W
/ z1 P' F0 [) o* ?

- R8 G4 ^+ J+ V0 r! i- O' T. d) e! s
7 ]& U) n6 r( G1 b7 B
[backcolor=rgba(18, 18, 18, 0.5)]​) w/ `" \4 ^0 \8 R
6 @4 m7 w3 _  R0 b5 N
; V5 Q, ?( t/ V- u" t7 `# [
2 [3 u3 b, z  C3 n" ?

# [1 S9 s7 S: S/ a. {6 L编辑切换为居中& t- |; t; h, q5 E, B3 {9 I

) ?/ R! k5 x0 a; e5 v8 j0 V6 X- x/ ^2 b; B6 A! y0 ]
7 G$ E2 w, x/ z) l
1 J7 J9 Y8 ?. s7 j, [* s8 D3 d
) ^' I5 v( b6 L8 ^9 @8 V% u! [
+ o" o9 @1 ~4 g+ J5 M" m" {

, q" e1 u9 ^% w! `- v+ R; D
6 {2 C2 Q' x1 o8 y! Y) j9 ?

: q5 A0 `* M: V# M. z$ \; T
  R: ^  g. ^5 ^* H: E
  ?) Y# M' r/ t: ^; f

: m2 ~5 r4 L2 {. d接下来就是ping一下看是否可以联网。
# y0 T0 O. x6 r" X) @
* b; @  I$ X4 G' c5 p, t
# ping 211.149.226.120% e5 H' T" a3 ^5 p4 i6 ~9 r

2 _; j5 y: c7 c5 E3 W* x! W. A) X- c2 H2 d* B, ?9 e

4 P9 J! x5 q$ `1 L% c+ D

2 d, ^; h. _8 M8 n
[backcolor=rgba(18, 18, 18, 0.5)]​
  r" Z  W% n+ _" w. o( k  w7 p8 e% \9 F! z) A8 ]
2 z3 I7 k' n) Y4 a0 s. p" [
1 z3 I# X# d1 \3 r- e

! n7 d% n/ ~: f' A编辑切换为居中
3 v, X+ N- A$ m* W+ T, j+ R3 N
/ H/ n, Y! l+ j5 A4 l2 D- C$ P# |4 ~0 q3 o. S
+ \# q3 f# P. K2 Q, Q* i( s

' k0 v/ ^" [5 o. l5 U; f4 P- [  e/ H  Z1 u! p  U1 P
) s& x( M% A+ g& Y, p; G( X$ c: I
5 v) w. K7 R$ a& n* f7 ^$ X

: k! \- i- A# |# T6 L3 F
1 z. j; D7 {; ^3 `; c1 V
可以看到能ping通外网。; p  ?4 A  p  s, g; }6 F
" B, j; z$ ^# J5 ]4 c& Y
这样设备就可以作为一个移动的网关的,配上无线网络,就可以做一个无线路由器了。0 H+ ?- x5 p7 }$ j2 z) o( u+ E* h7 b
4 V) _. c4 e% U; c3 ~

$ n$ p8 L  e% \* ^

该用户从未签到

2#
发表于 2023-6-28 18:07 | 只看该作者
有模块的开发板嘛" Z1 M+ b/ |- p# f7 G( o
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-28 09:02 , Processed in 0.125000 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表