|
1.文件说明
% p# ^' K% i3 d$ e h( _Android OS系统
( ?9 Z: F" u' k& f. @" v 文件说明:1 L! ^9 [( _! ]8 s( m! s9 v, y" i' Q' u
Android_tool/rtlbtmp: 应用程序! ]. x. N& G3 f; D" w: ~2 ?. R$ r
Android_tool/btmp.default.so: 应用程序0 b9 b3 i* v( d h% z! o
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware/ D$ O2 x- n) s. [/ H+ T. v0 {/ G
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
/ E1 X; r& H: D. k; @8 @ Readme/Readmexxxx.txt: 本说明文档4 b+ @( n* d+ c2 n( P
User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集# N9 Q6 t3 q7 i& `0 b L( i6 Y
2 r3 b& l, t$ i1 A3 Y8 q" F 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
: R0 [) C9 B: D/ |, t" ~ ---------------------------------------------------------------------------------
M2 @' ?& g8 y7 [( G0 w k | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
; f4 _& u1 k( k2 \3 ^0 t |---------------------------------------------------------------------------------|/ ^1 @& I# ^+ W/ i$ c8 Q }* ~
| RTL8703AS | rtl8703as_config | mp_rtl8703as_config |
2 s# X6 L$ G k# | | RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |
( J( I5 j1 ^7 n4 @0 Y6 o% m& I | RTL8723AS | rtl8723as_config | mp_rtl8723as_config |
% w# U2 X$ l7 N. R T$ M$ F9 H/ { | RTL8723A | rtl8723a_config | mp_rtl8723a_config |
% s# |4 W# w, W' N | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |% e0 u$ e! c! |
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |7 D+ ]# O' S+ Z# p8 T. W" t0 S- x
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |* U; A6 a! E8 f o- B/ k3 K
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
" u C! q6 h" Q3 k4 k' q | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |; g( s, K5 D- H3 B5 \
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |4 x" v7 V, \- @, Y' ?! [1 V
| RTL8723CU | rtl8723c_config | mp_rtl8723c_config |
% V# d- R1 E: b* J | RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |
3 d& a0 o: ^& X: K) ? | RTL8723DE | rtl8723d_config | mp_rtl8723d_config |' F2 j3 e3 G& I4 S
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |) b) H6 r1 n2 u( x; b
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
- ~5 \- c! B/ L% Z3 z1 I* u | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
) m8 Q r# P. N; Y9 G% K | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
3 F) l6 j$ n7 z! O6 ^ | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |. |' {4 F* B }8 G0 I! s, E6 m
| RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
9 t& J! J. m0 R | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |
" c: F/ z6 V1 y E8 R+ b8 e | RTL8821AS | rtl8821as_config | mp_rtl8821as_config |
6 \/ [, ]% {2 y: T7 f/ e3 a | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |) m# M! n& V2 c6 g
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
1 t' f& r; V) W7 P; h( x | RTL8821CE | rtl8821c_config | mp_rtl8821c_config |$ G' B' S& R" X; l6 u
| RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |
% l& }9 i5 [, Y% s7 H9 v! b' V' Z3 @ | RTL8821CU | rtl8821c_config | mp_rtl8821c_config |
6 W$ T6 e5 D" s( Y; U y7 o3 @5 G | RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |
+ f$ f" Y0 g8 X: q | RTL8822BE | rtl8822b_config | mp_rtl8822b_config |4 z W, @) S9 h5 _8 O+ c
| RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |* N1 e# P$ }9 n* h0 x: |
| RTL8822BU | rtl8822b_config | mp_rtl8822b_config |
# C9 f; b1 a1 h/ S; n | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |0 M! W! L" D/ u' p+ l; V" p, u
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |2 u9 o) a- q, [! u3 y
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
, j$ I; \; @. b5 N$ S: K0 l | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
' }& Z, A; a2 B9 v1 u9 ] ---------------------------------------------------------------------------------) m# b$ l* A4 r9 K. O% c, v
Linux OS 系统$ n2 K q( B7 w- u9 X1 X# h
文件说明:& @& |/ \& J4 L, V
Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成4 e/ n$ C. {; }" i4 X7 ]2 J
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
) M5 S- K y; k: C! g, \$ `( o BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config * X# V+ Y% f% q: ]* I
Readme/Readmexxxx.txt: 本说明文档/ w9 k) e0 q" {* ^ y; y4 ]- W2 U# b; c
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集
4 L# m. ]/ X" E" I$ ? 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
) z# q3 s8 j1 m# @3 {5 A: y -----------------------------------------------------------------------------------
* a1 P- z# G0 O* R' X | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |1 H! G5 Q0 N! i8 i6 g
|----------------------------------------------------------------------------------|
& e9 G1 Y9 h' {# n | RTL8703AS | rtl8703a_config | mp_rtl8703as_config |
$ e2 @* m3 g, j" s& S | RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
0 X8 Y$ i$ p' J. p" D | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
" n& M: t1 K1 u$ a \! n7 n8 u | RTL8723AS | rtl8723a_config | mp_rtl8723as_config |( a% ~: d! O4 g7 l; b5 N
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
" w% n' A! m# }* N8 K | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |7 L8 H, i8 r* ^, j
| RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |
- c: j- }. |5 }: C: W1 J5 P3 T | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
: i! V$ T7 a$ P& D3 @/ u | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
K1 o4 H% `0 j | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
0 ?' } m: t. X# T+ K | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |
, ]' {) \8 \& u$ s0 H. _$ {. k9 F | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |7 f3 D) S; K O! @$ Y% \) g
| RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |+ B. u3 J; [+ u: e' ^/ h
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
) N/ B& @% x z1 I( v( R | RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
- e0 S' [+ x9 P1 \. `* d) J | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
3 K" S b3 T4 G5 z# l | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |$ ~4 p! s! D6 G$ y3 y
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |1 ~/ r2 k# V p- Q! D7 k
| RTL8821AS | rtl8821a_config | mp_rtl8821a_config |
' a) M: ?2 V! S5 i8 j | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
3 E/ [$ v) l3 y; i0 S, s* E | RTL8821CS | rtl8821c_config | mp_rtl8821c_config |& d! c- ^8 I6 m& z( L. V
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |
# M- q$ o# N8 p. s9 l% T4 @$ B | RTL8822BS | rtl8822b_config | mp_rtl8822b_config |3 R9 P/ m9 F6 k; Q! O9 ?
| RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |6 @2 Q- N, [; V3 [0 h7 G/ }" H5 I
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
" S) m, g: _4 y) j2 m | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
8 M% T' R1 S* u! i1 K | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
& Q1 {" I2 c! U0 } m | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
' s% t' h( | M0 Y+ X0 i -----------------------------------------------------------------------------------
7 n' k: n8 m4 i4 s7 d6 D G" M% l* j/ y, I5 b7 R
2.运行环境搭建4 p+ s3 h5 `, [" b X* }2 [& r
Android OS 环境
* T0 a# u3 H7 k# z将 tool 所需文件放到系统里7 B) `& j$ N; ] C7 E
将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
5 W1 ^; R8 N+ Q8 kadb push rtlbtmp /system/bin/
# g5 w5 V! R9 o# tadb chmod 777 /system/bin/rtlbtmp: v6 i v- r" d6 B( C
将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;0 {, P; Z) i/ q
adb push btmp.default.so /system/lib/hw/
- R# Y6 ] f, Z& a) U w9 U, d- J% ?* [adb chmod 644 /system/lib/hw/btmp.default.so7 e1 }) e* j* y+ |: |+ y5 r% W8 W
将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;* T' Z" s7 Y! y
adb push mp_rtlxxxx_config /system/etc/firmware/6 q' \9 T$ a0 D: p
adb chmod 644 /system/etc/firmware/mp_rtlxxxx_config0 E7 R' {0 X5 h' j+ [0 n
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;
. I' m9 W3 H5 r4 H5 \% e j# Kadb push mp_rtlxxxx_fw /system/etc/firmware/
5 Y& ?( Q8 \% n, V7 n1 Gadb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw2 ?) k: r* l; e+ G! l% v$ A! ]4 c
3 `9 R9 s7 e! j3 p+ ?! l( [2 a3 e% {, U& C m
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面# Y2 F3 M- W: O% v' Q
将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;
; q7 Z* n4 B9 A9 \; pcp rtlbtmp /vendor/bin/) F4 V# Y3 S8 S+ a$ W7 U
chmod 777 /vendor/bin/rtlbtmp
9 j- w6 P% Y6 F6 u3 x, A% @将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;
& t" a/ K1 S$ h8 s) u ^) ecp btmp.default.so /vendor/lib/hw/$ y3 _. D- q5 n& j9 C+ R
chmod 644 /vendor/lib/hw/btmp.default.so
* C/ x5 H8 t9 i i1 W( }; i将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;
: o: S2 j; e3 _" p- ?4 _* fcp mp_rtlxxxx_config /vendor/firmware/+ K$ A9 N. [0 Y$ c
chmod 644 /system/vendor/firmware/mp_rtlxxxx_config( ?0 I1 y- N3 `" {; r9 I9 ^: {
将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
5 l6 O( c- s' v& O/ L1 Q$ \cp mp_rtlxxxx_fw /vendor/firmware/" b6 W7 z% q' u {3 S
chmod 644 /vendor/firmware/mp_rtlxxxx_fw% S3 j3 D" l$ \( I3 ?) ^# c- R1 V' o
以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;
1 U( h; [) d# a9 D3 E 关闭 normal BT
) Q) }! N8 k) S2 K1 k5 jrtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:2 v3 Q* {: h! [# ]+ [6 H
service call bluetooth_manager 8(关) /6(开)3 d: |: W) l, v; b
或者; ?+ e) U' j4 Z2 b' ~
cd /system/lib/hw1 e: @* l" m0 r E' A [
mv bluetooth.default.so bluetooth.default.so_ORG
# E {0 r4 _5 J, k; ?' x9 V7 j(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
$ [+ A- b4 ?8 n: A2 O% _: zreboot' Q+ S4 b' u$ H0 P# Z- m
$ \ ]; Q% z: W2 B. ULinux OS 环境
) P4 U1 ^1 x0 d) E/ [ 将 tool 所需文件放到系统里9 J% ?( P' O x5 M+ D; O2 a
cp rtlbtmp /usr/sbin/! s& z$ v0 `# E5 b
chmod 777 /usr/sbin/rtlbtmp
: {2 f- p3 |; O: ?$ T4 k9 O( f/ ocp mp_rtlxxxx_config /lib/firmware/
3 `" U# W, o, y( q" d: g2 Rchmod 644 /lib/firmware/mp_rtlxxxx_config2 y) o2 e* R" D
cp mp_rtlxxxx_fw /lib/firmware/* `$ {- }) I3 a3 I# A# g
chmod 644 /lib/firmware/mp_rtlxxxx_fw
4 `* L8 C/ K2 r0 k UART 接口芯片准备$ c3 \; _( B) j' o4 V3 G) }% k5 Z
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;
; Q; y+ C" ]( H+ M USB 接口芯片准备5 c0 n& b* R8 x0 T
先打开 normal 蓝牙,再 hciconfig hci0 up( w3 |& z% G4 K
* \3 U7 W; ` ]" f" X9 G5 M9 u! c3 _; x2 i
3.BT RF Performance Test & TX Power Calibration
& v+ m8 I0 `. ^/ A参考User Guide5 h" K3 T$ Y- ^9 P: i
#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
, J3 W$ ]' b' d b+ k% y& d' }, V! u6 J
+ b( {/ i: l8 f) P1 b
一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!. Q" m/ V- A6 f- p2 O4 p
3 J& D8 A; N: w& V
) d" \% C7 T) R/ B( Y3 L |
|