|
|
1.文件说明: a. x$ Y. C& N) m1 o$ e
Android OS系统
8 I0 B% i$ m! V, o( f$ ]+ c 文件说明:
8 n/ M6 a4 T' _# m) d( j6 l! o Android_tool/rtlbtmp: 应用程序
3 i! A4 H1 G7 S4 r1 M Android_tool/btmp.default.so: 应用程序
( w$ T+ p, k: J x BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
2 N! e5 |5 S: B+ B) G BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config + _" x8 U$ ?0 s% n
Readme/Readmexxxx.txt: 本说明文档
' ?2 T* w7 b) r/ Y; C3 g f9 i7 k User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
# G. L) S4 x8 r( P p# H
' @ y! k" V, { V' a( ~7 r9 h 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:* e# C; ]- `, n( g0 V! M
---------------------------------------------------------------------------------
; i4 H8 I, t. O3 n1 W | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
3 a/ X: u) d3 K3 p0 @- E9 o0 H' D |---------------------------------------------------------------------------------|+ z, k7 f# s& l' Y9 U/ w$ {) A
| RTL8703AS | rtl8703as_config | mp_rtl8703as_config |1 Z! h- W% B. d/ o2 |7 J0 A
| RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |0 V1 q' B: A0 k% W `2 X, x
| RTL8723AS | rtl8723as_config | mp_rtl8723as_config |5 {# K d Y6 d* D0 P! y
| RTL8723A | rtl8723a_config | mp_rtl8723a_config |
1 ~3 s; e2 F% P6 I* V! k | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |! v9 \1 n5 n; K" ^
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |4 p0 U7 N7 `& d H
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |1 N, D) S3 X3 E
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
T) `' M3 @, }+ w3 E | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
4 L* N" U3 c/ u# q' {+ H | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
* Q; |6 D2 q( h | RTL8723CU | rtl8723c_config | mp_rtl8723c_config |$ F6 J* ]2 \( h% o
| RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |2 N2 ]& I: s, }+ N8 m6 k! o
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |9 s/ _2 V$ Y- Q6 n# ]
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |
8 e8 ]! F7 T. B+ k# ~% f | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
# b! I* ^0 [, l& `, c | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
* n+ {) f* c) r7 m% P1 _# z | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
8 w I. q/ y+ o1 ~/ E/ T | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
+ _4 ?5 }# I4 u% c% @; p. a1 E | RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
: p0 C. c9 F, T% S | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |
% L$ c0 i* v F- i" S+ ~( C | RTL8821AS | rtl8821as_config | mp_rtl8821as_config |
+ @7 x7 J" R" S+ U; f | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
! w- l* ~, f/ m | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |; z$ Z/ C+ A' C/ T9 ~( F8 k
| RTL8821CE | rtl8821c_config | mp_rtl8821c_config |
1 P9 ?- Z8 c' A) U a8 R( [ | RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |; d4 Q6 @1 V/ o+ ?& ]" K4 e2 p1 i: j" i
| RTL8821CU | rtl8821c_config | mp_rtl8821c_config |5 h' S6 m- c& ~
| RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |% j O$ i8 t) A+ D
| RTL8822BE | rtl8822b_config | mp_rtl8822b_config |
+ \9 R3 F9 \; g8 ] | RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |
3 f) \" E3 M/ ] v, S* B | RTL8822BU | rtl8822b_config | mp_rtl8822b_config |
. y1 g, L3 P# Z/ o7 H | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |4 I( T+ ~$ u4 L, _2 T; N
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
5 C# r! ~$ W' S" c | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
, k3 e9 n( q. S) ` | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |/ f7 E& o0 T- A0 K
---------------------------------------------------------------------------------$ u0 W. T4 |0 D
Linux OS 系统
3 R M; {+ M6 a7 [ 文件说明:
8 `+ ]; k7 r$ d/ n+ w& k, L8 K: g Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成
# x4 V! @0 V: u1 n BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
. G/ T% V8 ~* [8 o1 G BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config - J( {! e6 j; _
Readme/Readmexxxx.txt: 本说明文档; t0 z$ K( u6 @% R# s8 [) x
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集
$ z" f! @; a* K5 n- d- I 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:. ~4 k/ o) J; v. Z" o
-----------------------------------------------------------------------------------# r& |$ [ [* h+ B
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 | m [$ F2 Q0 C5 T/ x- T b; C% n
|----------------------------------------------------------------------------------|& S% \ W* B$ G8 ~+ X2 y* [
| RTL8703AS | rtl8703a_config | mp_rtl8703as_config |7 t: ^8 U$ r/ V8 F! M( U
| RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
7 n8 y' I: y% B | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |9 ]: `& y, N2 t7 [2 U* {" Y ^
| RTL8723AS | rtl8723a_config | mp_rtl8723as_config |% J$ N# R9 _. {, h
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |& e# Y |; D% k2 o& N) G1 M
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |7 x. D% Q' \% I% c+ o
| RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |
1 |0 F, {+ \ j) f# F | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |5 }' d7 Q3 Z `% _ U; u5 p
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |4 c! y' [* f- u2 w
| RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
8 j8 X2 {1 Y; [" P6 }: V | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |
" ]$ I' Y$ s @6 ]1 Q8 W: Z9 f; l; B | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |" b. i1 ]1 U1 a# j& a" [0 a
| RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |& B- u+ u/ z! X+ o. w' a
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |+ i* _7 M& B9 M# Y; K
| RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
) g* v- C$ t# z; l4 h7 o | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |/ r. m( \* l8 S" ?, B0 z
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
# K7 n) N( \$ m. b0 B6 x | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
; X: p+ T, V! R* H | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |8 ^( ]$ E+ L3 [. a! F
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |0 C+ T& ?! Y) t+ Z2 X: w
| RTL8821CS | rtl8821c_config | mp_rtl8821c_config |
0 K8 ^, w1 T! \. K8 c | RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |6 [3 ?8 t/ t. \/ A& z' {7 `
| RTL8822BS | rtl8822b_config | mp_rtl8822b_config |0 Z- o: @% U8 i
| RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |
5 w K0 `0 H) v0 c( T: t | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
7 \" r I" W; Y; X! n5 F! Z | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |7 A1 X5 R5 Z- E) q
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
, d0 f7 S0 h9 W' {7 B | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |9 u. p7 H4 D0 J0 [
-----------------------------------------------------------------------------------
; w2 n2 s8 ?' l4 I" D5 d$ P- L9 S5 b4 h0 S; E( z7 d
2.运行环境搭建4 ]( |" I$ C* k" F$ h) R' J
Android OS 环境0 t1 y6 A9 R2 h: {
将 tool 所需文件放到系统里
& D! c2 V, e) n, X将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
5 y* k I' u) ~5 W% t1 h% s+ fadb push rtlbtmp /system/bin/
! ^* H8 u2 c* [+ }4 r! l$ dadb chmod 777 /system/bin/rtlbtmp, @* B Z4 o3 ]' ~# m& N
将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;
) S( k0 O) j* u9 R) D. j/ J; I2 t Nadb push btmp.default.so /system/lib/hw/
1 T7 P) R2 d2 `! k) madb chmod 644 /system/lib/hw/btmp.default.so
( {+ B2 L& l! X% o将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;
) G3 E, G) x/ p+ |2 aadb push mp_rtlxxxx_config /system/etc/firmware/. g0 Z e$ w- z1 ^6 e
adb chmod 644 /system/etc/firmware/mp_rtlxxxx_config6 ~1 m$ a' A: |) {
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;
) j, V' ] f2 `7 F6 t+ z8 S. {adb push mp_rtlxxxx_fw /system/etc/firmware/( u$ n! k6 y$ O1 e" m- q8 d5 X
adb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw
( h0 t& L/ \# L8 D
0 q' g# i7 R( U7 j: a4 P1 R
& X& S; d6 y- {1 g s! D( X1 w#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面
2 } F3 \8 ~5 @2 p5 v将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;. E0 S [& l; V; P {
cp rtlbtmp /vendor/bin/- K3 O6 q* `8 J; X
chmod 777 /vendor/bin/rtlbtmp
0 e; W5 u- \. B! O; D% u将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;4 V" t6 U" R6 D* F3 p, Y) U
cp btmp.default.so /vendor/lib/hw/
; [# G& w% T4 z: j8 F* u& Y. N* Vchmod 644 /vendor/lib/hw/btmp.default.so
+ w$ h1 t! @( ~9 g y4 ^将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;! c. d* F8 Q3 R# Y
cp mp_rtlxxxx_config /vendor/firmware// Z1 c: S: S* ^4 o6 N
chmod 644 /system/vendor/firmware/mp_rtlxxxx_config
' s9 I+ s5 i* L8 y' g2 I+ t2 ]. h将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
( x+ p$ D8 X9 y# P: o# fcp mp_rtlxxxx_fw /vendor/firmware/
* L( N( g n0 O" O4 Lchmod 644 /vendor/firmware/mp_rtlxxxx_fw0 S7 O6 w" ^8 J
以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;
' v, t) ~. u! i2 s: A! [ 关闭 normal BT
2 @2 [# z7 y5 X7 ortlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:
# v* C6 E0 J% _2 S4 vservice call bluetooth_manager 8(关) /6(开)$ `6 M6 z6 d+ e1 U( I
或者, N4 `. _" n4 K* g+ ^
cd /system/lib/hw
+ z* J% i6 V0 [( x* B1 gmv bluetooth.default.so bluetooth.default.so_ORG. E0 ^3 x5 J) l/ U, V4 q- z- \
(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
+ @% x, t% e/ t, Freboot' u2 A B" u$ ~1 {' P
7 W) P) I. D( V. v
Linux OS 环境
4 O0 T5 s' ~* \ R6 x 将 tool 所需文件放到系统里
% O7 b* S+ \ l8 z. qcp rtlbtmp /usr/sbin/# Y; S9 c' S* [5 R: N! f1 k
chmod 777 /usr/sbin/rtlbtmp9 J* p) Z! x% ]8 c4 E; v+ C3 p7 A/ ?
cp mp_rtlxxxx_config /lib/firmware/
; ~5 q% X! W& Y- L) E. G5 Z, ichmod 644 /lib/firmware/mp_rtlxxxx_config9 S' h- H4 t9 y1 g' C/ S4 K$ O4 B! S
cp mp_rtlxxxx_fw /lib/firmware/
5 J6 a% s' }7 h$ E+ J! z1 Ochmod 644 /lib/firmware/mp_rtlxxxx_fw3 I4 e6 R6 |3 g# x0 _6 S
UART 接口芯片准备2 _" x* g: o/ ^$ I6 g7 a
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;5 d+ o+ N% U+ b* _; v
USB 接口芯片准备- D- |! ~1 \9 N" ~1 b& Z& r
先打开 normal 蓝牙,再 hciconfig hci0 up
7 o; M2 J2 f" l7 o& |
: C8 `, B3 j; z9 G9 b3 _7 N0 p+ F! S8 M3 M$ o% z
3.BT RF Performance Test & TX Power Calibration
2 M7 v H! l1 M. S6 ?+ g参考User Guide
% Y ], Y9 l1 G% z#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
7 Z, \2 X4 l5 n
C& z; P9 w' p
0 t% w p" w! F, o1 a @一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!( B9 C2 j1 x$ e v p3 C) a
! V: t4 ]. r+ R- D/ v; B
1 L9 S9 R C" O# T |
|