|
|
1.文件说明9 H, }1 n& g f/ o5 I
Android OS系统
' c4 Z, x8 z4 v: @) y+ U 文件说明:# g6 U) ]3 k- u0 w! q+ ^& u
Android_tool/rtlbtmp: 应用程序
- [$ b/ w7 A/ A7 d! c. _3 k: x+ @ Android_tool/btmp.default.so: 应用程序
( W% I2 W, ]7 N' f) i) ` BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
~4 z) ?( K8 K" l$ d BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
8 X. C2 Q3 M" \2 q' p+ n0 d7 { Readme/Readmexxxx.txt: 本说明文档
" E9 D+ N# s$ x5 h2 ]) @, Z User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
% E3 j1 y T6 V 3 m0 r3 I) O, Q' Y; \
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
5 N o& z" ?+ a; t) K5 q ---------------------------------------------------------------------------------
$ _* f+ v6 X; b& B. b, t, h | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |% M0 R( {! k% {8 c! ^ t
|---------------------------------------------------------------------------------|
9 Q" i: U9 [5 z- L0 [ | RTL8703AS | rtl8703as_config | mp_rtl8703as_config |
( {' t, S$ D ^# I5 N( B | RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |' B2 C8 ^7 b2 M4 D' t" A
| RTL8723AS | rtl8723as_config | mp_rtl8723as_config |
, B' J2 h- {2 J+ O# h1 ?5 K/ m | RTL8723A | rtl8723a_config | mp_rtl8723a_config |
7 Q l; k9 y) L/ C | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
( `* R4 G8 L3 N. |: O | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
$ q( r9 T# b- X | RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |
! v& K; b! E# }& i2 W+ g% V9 r | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
2 N8 `8 |# C G& Y" D1 Z | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
! R! R/ K$ Y- m$ b# x | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |2 W, E; H; w: }3 j: t8 p. V% G* j
| RTL8723CU | rtl8723c_config | mp_rtl8723c_config |, A! U8 r+ K9 q" L; n5 [9 P1 y
| RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |1 v! u; J/ b+ v3 Z6 d1 K
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |
/ y: P1 h) a9 q | RTL8723DU | rtl8723d_config | mp_rtl8723d_config |) G, s& X% H0 Y% v
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
?, Y1 P: P2 p$ ^ | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
# l9 p& _- N- g4 ^5 B9 S3 [: m | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |7 B& Q$ e1 r0 q: V
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |7 c/ r8 `7 n3 \' @
| RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
, V0 v! q& M, C1 m2 j4 Z4 d | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |- i, z/ x o4 R& Z# a6 t
| RTL8821AS | rtl8821as_config | mp_rtl8821as_config |
/ Z: _4 f) O$ ]6 n0 J: U | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
/ G% H1 Z k$ g7 o/ O* M | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
% J5 E/ E' t$ |( n- w9 n | RTL8821CE | rtl8821c_config | mp_rtl8821c_config |
* @. r1 Y d/ Y+ `* |" t | RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |
2 d' i3 M/ t/ ?. j | RTL8821CU | rtl8821c_config | mp_rtl8821c_config |7 A, W! |3 c; F5 U+ Y# e+ q0 l
| RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config | w9 G. a! b! m* s
| RTL8822BE | rtl8822b_config | mp_rtl8822b_config |$ g0 S8 K2 m* x1 W2 @1 E* V; ?! r
| RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |
4 q4 G9 h& Z. d | RTL8822BU | rtl8822b_config | mp_rtl8822b_config | [$ Z" L3 T, D# Y6 h$ j7 P/ G$ B
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |2 }. Q8 `1 p) l- M' F
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |- w2 j9 v0 t2 H" H
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |6 f7 L- n. v# ]: {* f
| RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
9 G! L9 f& O0 h# x2 P& r ---------------------------------------------------------------------------------
9 Y+ U+ b' e& S& a0 GLinux OS 系统
- ^9 V' S! D& m3 k; ? 文件说明:; _3 _- @& n$ ]% x4 y
Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成: ]1 ~& x& v1 `$ x* n
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
! c: S7 N3 E8 [+ y. m" { BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config $ H9 I) e! D- x, O% e) w& r- z
Readme/Readmexxxx.txt: 本说明文档+ V ?; q% w# u
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集
4 e2 i7 C9 `, ], M; F+ {/ v/ M3 L7 H 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
/ i8 `& a+ N) U- k0 e3 E2 k -----------------------------------------------------------------------------------' w6 q7 w" i/ w, ?- Y
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |2 k! r _4 X3 X1 \5 ^
|----------------------------------------------------------------------------------|
, M+ b0 O: S; o9 K, S | RTL8703AS | rtl8703a_config | mp_rtl8703as_config |
. }6 a7 q) z$ f. x& F! z7 T | RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
8 d( g0 E- H- c5 j! Y' b. }! E: X | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |" Q- W: j- U5 n5 p( @: k7 ]& {
| RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
0 S: C h7 u" i+ j% A. W; b- Z | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |; x' p1 j! G4 d+ z( _( U. \
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |) p+ k% k. z. D& Y1 _
| RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |3 r3 C6 R- s J" B/ H
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
) x% Q. E% G6 X0 W+ F | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
0 c; l: E6 ~; l | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
" O& n3 y r! M, @7 a; Q | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |2 e! ~% c/ F$ O8 ?- X' t0 A
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |0 R% w# H" |& |/ h* k( M! u8 Y9 ]
| RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |8 N8 M; W% U" F3 o0 I
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |) C U, e& x) H v# v- A# R& H+ W: k
| RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |/ e9 d0 E+ C& h" {$ `7 X
| RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |; S5 E) Z% \9 r1 \) h( h3 X' }
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |& h5 J+ v+ r0 p5 ~* d! g; H
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
1 t4 K$ X8 p6 ?% P9 U2 k | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |" l7 X# H4 k) u9 y* m
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
7 i, P: l) C* b, Y3 A1 R | RTL8821CS | rtl8821c_config | mp_rtl8821c_config |; ~2 `* n4 g. t U
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |
8 N9 B$ Q, v2 |: Q | RTL8822BS | rtl8822b_config | mp_rtl8822b_config |
$ Q8 K; f0 Z2 J9 m$ d2 I | RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |
( p' B# B! {7 b. i P' z | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |: @0 k4 m4 E- B5 y
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |4 R9 U/ l4 h+ ?( v% w2 b" m
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |/ y" |5 w( K, H* B# ]8 V
| RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |2 t. w. Q$ ?6 K! O$ H7 L8 J1 L5 s
-----------------------------------------------------------------------------------. n# A7 d: X; d' k* @$ g, J5 |
Z* y! j+ R: Q |
2.运行环境搭建
7 n& P2 ?0 N' E6 e+ NAndroid OS 环境: u W! U: g3 ]. {8 ?+ s- u5 ~5 i
将 tool 所需文件放到系统里
& ~: m8 w8 y9 Y' a5 m; M将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
8 Z" p) v& D( a, ^adb push rtlbtmp /system/bin/0 a7 [8 {. p, Z G5 k
adb chmod 777 /system/bin/rtlbtmp
& \( e) `% _$ h) n& Z4 L$ i m将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;. K0 V! W. d# F& F+ i6 c2 r
adb push btmp.default.so /system/lib/hw/
/ c9 ?* ^# M! L( ~. Nadb chmod 644 /system/lib/hw/btmp.default.so
" d; s4 k7 T9 d$ L7 p将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;9 A8 w& `3 C3 O& ?# r+ w
adb push mp_rtlxxxx_config /system/etc/firmware/
5 N m& a& l1 E0 C3 k6 radb chmod 644 /system/etc/firmware/mp_rtlxxxx_config
$ O. j/ [6 a6 g. r$ L7 N4 T0 c1 q8 y将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;
/ F3 w/ Q# x2 }7 c/ I4 O) |0 v% kadb push mp_rtlxxxx_fw /system/etc/firmware/
6 F* B/ A! A* p: z5 @adb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw
# v) n* i: G* z$ o0 h
8 m% B9 a& V( ]6 g; }$ A" i; a4 z% X6 m% p8 f5 ^4 O; [# V) i
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面' }! D+ y3 L0 v& h. f5 m, o" K
将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;- x4 {; q2 Y4 I7 L! Z; G
cp rtlbtmp /vendor/bin/
" S$ v9 q+ d' l/ H2 C1 z$ dchmod 777 /vendor/bin/rtlbtmp- ?7 P4 }' D h" ~
将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;9 w! y5 H$ w! b. V; h. ], v
cp btmp.default.so /vendor/lib/hw/+ z! Q2 X3 Q( A/ h" b1 o& D0 n
chmod 644 /vendor/lib/hw/btmp.default.so
6 B6 }3 A- P) Q7 k& n3 A将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;
: I5 B4 z d$ Y" w8 y* fcp mp_rtlxxxx_config /vendor/firmware/
& n& ~7 V+ n4 @+ s- o5 U+ X2 t. uchmod 644 /system/vendor/firmware/mp_rtlxxxx_config
6 K) O" I5 l: C/ {. B$ o z将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
# A+ e3 j( q$ `* Z# I) Ycp mp_rtlxxxx_fw /vendor/firmware/
9 J) `6 B. P3 Z' E) H4 g! bchmod 644 /vendor/firmware/mp_rtlxxxx_fw: y' p$ h, m/ |9 \' O; g4 q6 @( V& F
以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;
$ B- X* ?0 Y& z7 B: U3 c; Q 关闭 normal BT
' }5 H9 Y0 V# ~+ xrtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:
# Z) r: X3 A/ K$ m8 [service call bluetooth_manager 8(关) /6(开)
7 I m' G, G! D2 a( u; I或者
& C9 |& h0 K5 h, l; Ncd /system/lib/hw& t5 S9 J% ?$ E! b1 X
mv bluetooth.default.so bluetooth.default.so_ORG
+ }6 M8 ?4 d1 e(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
: V1 E1 m6 G, C. p( W1 {2 k2 jreboot: h- b# r) }. A+ |" T: V
" Y$ S* C8 R @8 o0 S7 i8 wLinux OS 环境' u# I4 L2 ^1 p7 e
将 tool 所需文件放到系统里* t9 I" ?' _8 g$ z8 g A5 s
cp rtlbtmp /usr/sbin/
5 |( I1 O$ |0 n$ v8 s0 {chmod 777 /usr/sbin/rtlbtmp
# y+ N; S# e" x$ t0 p- _4 R" V6 b0 ^7 ocp mp_rtlxxxx_config /lib/firmware/6 R' }( L, m2 |
chmod 644 /lib/firmware/mp_rtlxxxx_config
- c; X: b$ S/ H/ U2 ^+ H$ [cp mp_rtlxxxx_fw /lib/firmware/
& N* q9 i0 L/ u) hchmod 644 /lib/firmware/mp_rtlxxxx_fw
+ x( g' W4 c; h UART 接口芯片准备2 E& Z5 _2 l* O
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;' G9 W$ D% F9 s. M
USB 接口芯片准备' J! A4 L9 b- V+ W8 N5 X( @
先打开 normal 蓝牙,再 hciconfig hci0 up9 _9 P4 E/ ?$ @% R: D, A+ l- y+ _
+ ~$ R1 m/ v" E* T
# ?" P2 G) O& X& |( {; i+ r
3.BT RF Performance Test & TX Power Calibration3 z* S. `9 h$ p! w" x s3 u9 b" W8 Y
参考User Guide2 y' ]% I$ S) @1 ^
#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide; P2 n L6 ? s5 V4 M( b# [
3 c, d+ {# Q$ q; _; I# W) U7 ~- p4 z. O1 E) d
一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!
+ ^- b$ t8 Y2 C+ F, @3 V; m1 {
. p' A/ Y p$ @4 i6 ]7 j; g9 Q6 U1 x& u4 e
|
|