|
|
1.文件说明
' i6 @+ u& H; _. D7 V3 }Android OS系统
! o% P: _7 i* n* U2 s/ o 文件说明:! _9 s) h( a: T
Android_tool/rtlbtmp: 应用程序: J7 O* N" J- L7 D: L
Android_tool/btmp.default.so: 应用程序
& Y( E: y$ G, A! {0 y BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware6 c2 `& o' @- Z t b" R
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config ( F" m" F1 p; b: j8 y F! L
Readme/Readmexxxx.txt: 本说明文档: K0 c/ i% \5 c
User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
d+ a7 g, y$ I) O% v - J& b- |/ }3 [% U6 k
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
) x+ b9 o5 |. U2 q" v: n. m ---------------------------------------------------------------------------------" S4 [$ t6 N6 j" p: o6 L
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |% Q+ K7 E$ _$ f$ w; j; G; ]5 {
|---------------------------------------------------------------------------------|% a0 s! S9 {. @( x
| RTL8703AS | rtl8703as_config | mp_rtl8703as_config |
- z! Z& X* L* w( r | RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |
_; W0 P# Q5 u. P! U | RTL8723AS | rtl8723as_config | mp_rtl8723as_config |+ }. J/ e3 b! y/ t* K! n" ^; L
| RTL8723A | rtl8723a_config | mp_rtl8723a_config |1 F9 k1 _' D% c+ M7 k
| RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
+ A; y- ]( N5 d! u) q" I G2 f" _ | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |9 t. W2 J r8 ?, n$ Z) |( p
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |" w& ?% w9 h2 O
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |8 W% y# w) G: q2 x$ j# T) X: b& x# e' r
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
& T( U9 p ]. H | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |4 l/ q+ a5 u m
| RTL8723CU | rtl8723c_config | mp_rtl8723c_config |! ]" B! L* w- L* K
| RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |! z) f/ N" {$ Z2 Z$ E1 Y5 x: R' O& U
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |; X0 t9 g0 S1 C- m
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |
3 X$ f6 D# Q4 Y; v- }3 ?. S | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
# p* }" a" C% r+ m$ } | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
: X+ i/ g4 k' D V3 f& x | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
0 b% h3 m" o+ N1 L p | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |0 s/ o* v' w* E6 S6 ?; [; Q
| RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |- q7 ` @* T- ]* O8 O& Z7 L2 j
| RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |$ k! j3 b7 w E1 Y7 _
| RTL8821AS | rtl8821as_config | mp_rtl8821as_config |
\, s6 c" A J9 V9 C | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
6 j' q& H1 k% z5 E+ M" n, k2 D: J | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
) M1 l- P+ X% ^. m! c9 c | RTL8821CE | rtl8821c_config | mp_rtl8821c_config |
- o" I! ]1 Z; a3 D | RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |+ g; }6 m5 v- p8 g" Y- U: Y
| RTL8821CU | rtl8821c_config | mp_rtl8821c_config |
' ^3 U& w W7 o% [1 Q& M% j | RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |
I: ^, i" a/ I9 |3 Y% m | RTL8822BE | rtl8822b_config | mp_rtl8822b_config |
( A; }0 S% l, U6 b/ s1 W' M5 h! K | RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |/ v# W* E* G6 O6 v" _1 r
| RTL8822BU | rtl8822b_config | mp_rtl8822b_config |8 O* P* S# e* \& A" z
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
+ i6 {& n. l5 a* k! T7 a6 I | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |; U* _# a/ d, k
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |# j( u" {: G0 h$ G5 c/ u" z% h; A& f
| RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |# o9 B0 ]) Y/ \/ p b. w
---------------------------------------------------------------------------------' p* |2 ?, ^% R/ q' r R, J! Q
Linux OS 系统
( w9 ~8 {9 [6 {7 P _( y/ j- S 文件说明:! n5 h& F8 F( h+ U
Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成( }" H) h5 T; t1 q
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware# h: o1 [9 C- R) o
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
5 s7 K" f% Y& J/ W0 |, t! Y Readme/Readmexxxx.txt: 本说明文档
! {3 b! N/ x6 Y W7 M" j User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集
. m; P: C$ {* x; W, Q' G 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
6 X4 S3 T" Z7 c: q% C% R -----------------------------------------------------------------------------------% K: m7 \1 p A* v; s0 p: L$ I8 Z
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
) S, H6 o" ~" [) L |----------------------------------------------------------------------------------|. b5 i7 n4 P, I5 M# @0 [' l* ]
| RTL8703AS | rtl8703a_config | mp_rtl8703as_config |7 u6 N' u8 K. Z% t; x
| RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
* I3 R A4 S" D1 ? S, ?9 F | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |3 S2 k- F$ ^& Z1 e) c
| RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
. a6 ], g! u7 L) S | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
( @9 G& m$ |% f' B5 q$ X/ ] | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
0 U/ e z: a, Y- o4 @/ C3 a9 { | RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |
% }7 q, @) h: Q, G7 F: w! W$ O | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
5 R' S, R9 X ^& y% z( q0 C | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
& s. ?8 d' S( X | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |. C, I; }# i+ D) \% v9 G& R
| RTL8723DU | rtl8723du_config | mp_rtl8723d_config |5 J: D+ I1 B' ~
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |$ d# ?/ C+ J& q* N
| RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |
4 T1 N# ^1 m" \8 n! p | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |- a% v, N! @' B7 v- D, U
| RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
H* M& r" L: Q- u/ f | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
5 p+ d2 z9 R" u+ t2 E6 a | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
! O; h, v4 x! G! m, b4 D9 C* T; q/ s3 g | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |$ E" `6 H# e0 H$ K2 Q- f( d! f
| RTL8821AS | rtl8821a_config | mp_rtl8821a_config |
0 y# D: {& Q/ F4 _( @ | RTL8821AU | rtl8821a_config | mp_rtl8821a_config | A6 k9 M; @' z( z1 Z: n
| RTL8821CS | rtl8821c_config | mp_rtl8821c_config |( h# r7 V. X7 i0 K7 h. _' J
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |* b! G! o; v: R9 `& w0 l
| RTL8822BS | rtl8822b_config | mp_rtl8822b_config |0 [( G2 I) I2 `1 @
| RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |
) y: V" ] A% M5 P8 r S3 m | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |$ s' T8 C" E ]$ [( b9 I
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
# `" k2 _8 K5 a | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
- g) O6 Q+ K- X1 K9 Y/ x8 j | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
Z2 d6 ?+ T; ], |) w% T/ l -----------------------------------------------------------------------------------1 H# ]5 P5 Q5 O- b/ j9 w
4 q& l8 L) A8 Q2 n, B( ^9 { q6 o2.运行环境搭建( H) x1 p- F' c$ l2 |
Android OS 环境* Y4 |: p. J6 {* C7 S t8 g, V
将 tool 所需文件放到系统里
3 d1 ~0 P, e, `. k, |0 q将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;7 e2 _$ b% W5 s3 j
adb push rtlbtmp /system/bin/
. Q1 T2 a2 K" g; eadb chmod 777 /system/bin/rtlbtmp
+ |" n: ~. S9 g1 K将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;
; W0 {/ w# O# L6 |9 R9 j" g; Qadb push btmp.default.so /system/lib/hw/
: S1 _. I, y f% radb chmod 644 /system/lib/hw/btmp.default.so4 m. r9 y4 E' V( i, |( o
将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;
) r2 y6 B1 p) R8 R P: uadb push mp_rtlxxxx_config /system/etc/firmware/
% A# b1 P* P6 s( e" zadb chmod 644 /system/etc/firmware/mp_rtlxxxx_config: _# P! O* B: ~5 h; E* [" Z
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;+ m" }* K. b6 e
adb push mp_rtlxxxx_fw /system/etc/firmware/
" c% h- I- m$ badb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw$ f" o0 w$ z; B$ y
* O) Y0 v1 {% o, ]9 N
E$ Q! C4 l8 k* s+ Y9 e, U
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面: d2 v* o5 S( |2 y! U( P$ j' `2 X4 Z
将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;1 W8 M! M: u0 U0 q& ?( o$ l& I3 t
cp rtlbtmp /vendor/bin/
/ { }, u* i- M. \" G& W7 r% ichmod 777 /vendor/bin/rtlbtmp
5 ]5 h+ F: `. c6 Z4 A9 a# [( H3 a将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;
5 d3 e8 ^, L- p- ycp btmp.default.so /vendor/lib/hw/. m' b% C8 D, O; `$ \ ^8 A, g
chmod 644 /vendor/lib/hw/btmp.default.so1 |/ N" Q9 \& S W
将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;
& N4 m5 N% v8 S) Y- ^& w7 P0 ]cp mp_rtlxxxx_config /vendor/firmware/
3 L' a: }1 `+ r0 X1 |" H( @% Achmod 644 /system/vendor/firmware/mp_rtlxxxx_config
! B8 Z$ {% y0 ?/ B8 Y1 c) r5 X+ e将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
3 c4 D z6 \3 X; I8 ~3 n" t: gcp mp_rtlxxxx_fw /vendor/firmware/
) z. z% e- M3 v8 Mchmod 644 /vendor/firmware/mp_rtlxxxx_fw9 n+ B. t3 h& i5 ^3 ~
以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;8 o, [( @" Y: {& }8 P8 n
关闭 normal BT
0 n3 M; B) w( }2 @% ]- Nrtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:
( ^* [( G T4 D' D. z' jservice call bluetooth_manager 8(关) /6(开)3 K! [6 J: h3 N$ J7 m" m& e
或者
% o1 D- P5 Q8 W" I; Kcd /system/lib/hw
" f* \$ w. |1 v8 B' ~mv bluetooth.default.so bluetooth.default.so_ORG' S: Y( z7 _) A& T) [0 F/ E
(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
/ b/ X: Z" a3 Y- @6 x+ ireboot ~5 B& I x6 q- \. K2 J* O! [
" b! N- ]7 q* j- J: L+ u+ z2 }! }- Z
Linux OS 环境2 E A6 V: v" C t1 ]! e! |: h
将 tool 所需文件放到系统里
0 a4 k1 ~/ J, m' l2 p6 V* P7 A1 z% Ncp rtlbtmp /usr/sbin/
" ~% I/ \5 a' [# y% V1 p& Bchmod 777 /usr/sbin/rtlbtmp
# |/ c7 E( L: ycp mp_rtlxxxx_config /lib/firmware/5 M: f: l# B0 L7 _" Z/ y
chmod 644 /lib/firmware/mp_rtlxxxx_config5 v) }) r; i) J# f" U0 |6 ?" q
cp mp_rtlxxxx_fw /lib/firmware/ P6 _! t8 n: c# D+ U7 L
chmod 644 /lib/firmware/mp_rtlxxxx_fw* F/ G! _; K4 O y# }- g- H( D
UART 接口芯片准备/ X1 {* L$ x, j% o8 B1 Q
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;9 N: V( v4 o$ q6 G4 `- Z
USB 接口芯片准备
- |- h* g- o3 h* X* w先打开 normal 蓝牙,再 hciconfig hci0 up
/ r6 v9 V" U3 Y, Z3 |6 f0 x) L% A9 F. ?6 o2 U+ }
\5 W. P& R) ]" W: i
3.BT RF Performance Test & TX Power Calibration' }1 q5 o. c+ e3 N4 ], u/ ]. ~
参考User Guide
) a; r! m1 H9 w#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide- E+ j; W* }" ]
4 a+ v j. `8 l8 r1 x
( T+ \4 q* x; L5 u( S) F一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!% \! H# w7 q8 ~
. S8 |. ~4 _" F3 \0 c2 z
+ V' Y8 |' g3 D% \* L1 ]) d2 b |
|