|
|
1.文件说明
1 Z2 }0 ~, t/ \; B3 uAndroid OS系统
2 Q& `! \: o! f- G, O7 [ 文件说明:# U2 _$ r0 J$ C1 H% L; I) j2 I
Android_tool/rtlbtmp: 应用程序
! C4 c, d# l$ H A$ U0 Q Android_tool/btmp.default.so: 应用程序
T; r1 y$ \! p% P% {, o BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
/ X& x+ w8 r, \+ _" J# C5 @$ x BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config 8 y; H5 I- R! g6 ~! F6 G
Readme/Readmexxxx.txt: 本说明文档
1 O) ]/ L1 w+ Y! v7 N! d4 m/ D1 R) q User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
' b& k! x- A2 o/ q
7 z, }- c$ w9 P/ O- e" a 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
6 s' r- z3 v! x& }! r ---------------------------------------------------------------------------------, j, V% M \3 B0 j
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |2 K b+ u$ ~$ {1 G6 f7 x2 _' i* q* i8 R
|---------------------------------------------------------------------------------|
* w# [) Y7 A0 q4 n3 l3 p | RTL8703AS | rtl8703as_config | mp_rtl8703as_config |, t# O( k; L8 ?) L9 L
| RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |
1 D2 U. J) [1 b5 p/ x& C5 T6 k | RTL8723AS | rtl8723as_config | mp_rtl8723as_config |
8 S( f4 U0 ^% ?; g1 [8 m: s | RTL8723A | rtl8723a_config | mp_rtl8723a_config |/ i3 w' L* i' H6 d
| RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
% B, C/ A$ ?6 a* S! f | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |# d3 N b, f9 J7 z: L3 p: O
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |' j& _8 v- q v
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |0 p% T. ?$ S7 R" u
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
7 H% j3 K) y5 Z( \7 K. } J | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
- y+ ?8 h+ q5 \& F( K3 _+ I | RTL8723CU | rtl8723c_config | mp_rtl8723c_config |
: w6 c$ H R& U3 ~ | RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |( u/ z4 T, j" d$ u7 B3 o, o
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |! q1 H8 x; @, b& g
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |% m2 M6 G6 l ]: _% d% A7 k
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |; w8 Z6 i$ B* q0 x
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |! k1 ]& v. R7 Y+ T8 G
| RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
& O; V: A6 a8 d$ b9 U o' z! ~ | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
9 |! y5 N$ [/ \ | RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
' _. J+ ~+ B9 t | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |, e4 X3 p7 V5 {: f* m1 Y5 [
| RTL8821AS | rtl8821as_config | mp_rtl8821as_config |/ q4 G) P) r I
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
! a/ V% }7 _2 j8 ] | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |+ ]$ k6 b! H( R& h/ e1 M2 A
| RTL8821CE | rtl8821c_config | mp_rtl8821c_config |. g. T5 H! u( Z6 z4 B
| RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |- q# M* g7 H# w* X b: H
| RTL8821CU | rtl8821c_config | mp_rtl8821c_config |8 L/ Q6 \7 N+ F% s! y
| RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |2 D, Q- T/ h7 e0 O
| RTL8822BE | rtl8822b_config | mp_rtl8822b_config |
6 J, K! y' Y" i. W | RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |
Z1 p. W( u: {/ E! f, x6 c+ A8 G! g+ f | RTL8822BU | rtl8822b_config | mp_rtl8822b_config |
% ^( x5 K5 E2 A! I& w | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |* A0 Z& M) a7 J
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |: ^3 A* x E, [
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
; o# Q3 G9 W& n' p% u+ I" _0 b0 S | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |# ?" D$ j) y$ L* ~2 [* G
---------------------------------------------------------------------------------$ v; d# W2 C; y+ j2 N/ c3 O
Linux OS 系统
* h2 B) d2 x5 f2 {, I 文件说明:
# C% z0 F$ q: J9 W/ U Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成' P5 m" z# Q4 T4 r
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
. j) h0 P; g3 v0 V! E! [ BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
" i* C! R5 m e0 T. d2 m Readme/Readmexxxx.txt: 本说明文档5 A: G/ f3 m: ]2 Q0 g5 x: W) U4 h, q
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集/ r3 B/ [7 ^! P
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
0 k9 q% I4 `2 P' e7 G -----------------------------------------------------------------------------------4 w) m, L$ T" L' u7 u- S4 s0 z
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |) N: D! q* t6 L$ E; |. x8 O; [7 N
|----------------------------------------------------------------------------------|9 m* E$ S( y% v- w! j. T' A
| RTL8703AS | rtl8703a_config | mp_rtl8703as_config |' s4 n. Y% _- i Q1 R
| RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
& E' @% H) t, A6 B3 g1 a | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |" C/ \$ J8 C# h7 h: k
| RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
9 q3 J( n3 P) r5 j | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |3 n, _+ y; w1 h. Y
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
) m2 i! {, W& ` | RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |' m; V2 B+ q @- t' L/ A0 J7 U
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
% A8 |4 K n6 F& Z/ T. u" A | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
8 ?+ q' D3 a/ Q | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
: F. f7 b& G( a) g6 K | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |6 r; g1 E; @* O: G3 D
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
. R/ X2 P" J' q7 o) Y; f9 P" g | RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |
, C" Z9 x. H6 G; T! y | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |- {+ l3 K# B! {- u7 m# u2 D3 ?8 @: T9 i$ k
| RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |1 w) L$ a5 W; T4 M; u$ |
| RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
( Y |9 x# F# @ | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |0 T9 |8 K. J+ H4 K+ k( S
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
+ E; P/ Z9 o5 Z! q | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |3 ^4 [* T7 _5 V! \7 f$ q
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |- `5 o6 G* m5 v" b
| RTL8821CS | rtl8821c_config | mp_rtl8821c_config |# y7 J8 `( e+ D) s$ O: X
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |6 Z: V" Q! e; S
| RTL8822BS | rtl8822b_config | mp_rtl8822b_config |
0 h0 V3 j! Q$ `1 c | RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |
0 {) w4 P$ s/ k$ ~7 J% S | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |/ z% `( }# l0 Z' C8 g1 ?
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
- j) z% J7 J+ r: m, t+ i& U+ Y | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
4 K1 y) `4 O5 ~$ s9 h7 o5 f | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
6 H8 Y! s- t' x s+ g8 F: e -----------------------------------------------------------------------------------" B& Z5 p/ o: M. z2 h0 t: r
/ y% B* \* A- o) s) E2.运行环境搭建
9 E' @9 L, l/ d2 i( y/ ~0 CAndroid OS 环境
0 p+ k @/ U. z9 s; b将 tool 所需文件放到系统里0 E2 t [# W4 c
将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
1 f$ Y& [# p5 l+ fadb push rtlbtmp /system/bin/5 @# z3 V$ _) J2 x r
adb chmod 777 /system/bin/rtlbtmp6 t2 `; Y$ W1 V' l0 E1 V( }2 T
将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;
9 ~0 K8 c; L( N$ \adb push btmp.default.so /system/lib/hw/
: j( Z; c& Z3 A( @" C% G) P, K3 c3 tadb chmod 644 /system/lib/hw/btmp.default.so3 z" l0 U7 ?7 C, t' U
将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;7 b7 X& w- ~4 \" i
adb push mp_rtlxxxx_config /system/etc/firmware/; B/ ^7 F+ z& Q# l- M5 X! W( t# ~
adb chmod 644 /system/etc/firmware/mp_rtlxxxx_config8 G# U3 C8 r& c4 U. a+ A" m! Z2 b
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;& \( t6 B9 v0 h+ Y7 Q# J. `- k' V
adb push mp_rtlxxxx_fw /system/etc/firmware/
, X& `( ^" U- [% L! Oadb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw
9 i9 Q: B F8 I0 h9 a$ ?
* J) C0 b; Z2 S1 W0 ~. C+ J, f9 e" l s0 D6 T; }" e9 [
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面
) r: S& w3 P" n4 A- b将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;
! B5 V A O' Ucp rtlbtmp /vendor/bin/
7 {, i9 Z7 `* K3 @chmod 777 /vendor/bin/rtlbtmp7 K0 B" C) B- s: k5 \$ A, r8 U
将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;0 @4 B1 p. x7 {% m: ]# R% P) Y
cp btmp.default.so /vendor/lib/hw/
2 _9 x& O E: V' rchmod 644 /vendor/lib/hw/btmp.default.so
: F- Y) _* m" H8 \2 h将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;4 ?; Z. }4 K L3 [" S' b8 b& ~) e
cp mp_rtlxxxx_config /vendor/firmware/
( p" ?; H2 U4 ^% ]: O$ p# }$ mchmod 644 /system/vendor/firmware/mp_rtlxxxx_config2 S, b0 q( b) H) [" n! g# b) w2 @
将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;* |; W3 \, _: y, ~. f
cp mp_rtlxxxx_fw /vendor/firmware/) W7 ~+ J% @. Q3 |: Q
chmod 644 /vendor/firmware/mp_rtlxxxx_fw
, X' O9 a1 b" F t0 G, x以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;
0 o4 _$ q e) l* V0 _1 d. {9 H" O8 t 关闭 normal BT: U% K! W3 e: }) c. d
rtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:) b% `; z! P! K# _( h
service call bluetooth_manager 8(关) /6(开)
. u6 b5 G! Y# B. F$ @或者- X' S7 Z3 v' C
cd /system/lib/hw
1 W4 R+ r, ~+ G! }( ], }5 O1 C. Amv bluetooth.default.so bluetooth.default.so_ORG
( Y& }8 @4 a( P R' L(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
, C0 u+ S5 H9 m/ L4 x8 Rreboot; }) c' E$ @/ c6 O% h
3 \7 G0 q& ^; A/ e
Linux OS 环境1 A( m8 c8 \. X1 ?. k4 p! L9 @$ ?: |
将 tool 所需文件放到系统里
/ {8 V3 G: ?, rcp rtlbtmp /usr/sbin/5 `0 A. @7 r6 O1 w% m1 \
chmod 777 /usr/sbin/rtlbtmp# b7 t6 \9 r2 I
cp mp_rtlxxxx_config /lib/firmware/$ ~) O$ a; m1 K* N
chmod 644 /lib/firmware/mp_rtlxxxx_config
3 q3 m2 c0 J7 ~! Y9 u; h" Qcp mp_rtlxxxx_fw /lib/firmware/$ b$ U$ x$ H. F* ~( y
chmod 644 /lib/firmware/mp_rtlxxxx_fw3 \5 [+ N0 h) |, k1 }
UART 接口芯片准备2 _: \2 c& w* N# X7 H
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;
8 [/ v, i$ |- w- M- V, V U O6 Z USB 接口芯片准备
! b0 z% _- B3 v x' V! x- b先打开 normal 蓝牙,再 hciconfig hci0 up% b5 h8 w3 h; z3 e6 a9 P8 J6 R4 U
$ s0 `. H$ m& ]+ w) i
7 r5 Q, Z: P, W+ w1 S% }, @ w+ {( y3.BT RF Performance Test & TX Power Calibration
) F. ]+ o/ H7 u# d, }# O3 L参考User Guide/ G! x* x/ [7 Z: G" V
#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
1 z$ m6 b" K& b4 p, {% c2 W- Z2 K# f& E( B. e4 _5 q
; k0 `, R; _3 [$ O$ z0 L一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!
: [9 Q/ P# l* V+ h
1 I( Q# m" C+ d$ K6 N% O8 O9 Y, B) Y9 [. T5 T. O( G4 Z
|
|