|
|
1.文件说明
" s) o3 {" u% _" z, X) FAndroid OS系统$ J/ D, k4 r8 u/ }% Y5 C$ }, g& q) [9 h
文件说明:
/ o9 v/ h2 J% f/ \ Android_tool/rtlbtmp: 应用程序
( K5 h% M8 W8 D8 K: O Android_tool/btmp.default.so: 应用程序
}, c1 n. J8 n7 v BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware) w- o9 g2 a' K! `, v* | L" X
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config ( m% C2 t; l+ h+ }! s- p" B
Readme/Readmexxxx.txt: 本说明文档6 P% p7 ]7 v& l# r
User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
" V7 O3 {9 U- q7 J; V$ k4 R5 l& r% }
6 e7 z' X- U3 k6 r 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
( d. L4 N+ _, B ---------------------------------------------------------------------------------
1 R8 E2 E" Y- r7 f4 @1 M | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |8 r1 |0 [' T1 W3 o& U
|---------------------------------------------------------------------------------|& f* v6 D* Q1 U; K$ \! I/ z
| RTL8703AS | rtl8703as_config | mp_rtl8703as_config |8 ]* R% N6 `. P: m, S) d) |
| RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |
8 K( m. ~5 ~# B1 S" Q8 O* q | RTL8723AS | rtl8723as_config | mp_rtl8723as_config |
5 p4 T. x5 V1 M4 P | RTL8723A | rtl8723a_config | mp_rtl8723a_config |; `% z$ O* V: O
| RTL8723AE | rtl8723a_config | mp_rtl8723a_config |6 E, {2 W9 h6 `6 F6 y
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |/ [ a9 T9 s8 g1 R* F
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |
6 e: Y# Z8 y. V% Z7 m) a | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |' e/ i/ J+ [/ @1 h4 P
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |1 {7 S. ?0 p( B" ? k$ e+ n
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
" }+ R* {; Z5 O/ O% O5 b | RTL8723CU | rtl8723c_config | mp_rtl8723c_config |
O3 {( b$ o" T# F, { | RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |' ?7 z( v6 ^+ f
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |" S. u5 o- Y4 W1 [
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |+ Q3 b1 p8 H2 j( a
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
* h3 b; Q2 z. x0 G2 D | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |0 ], U! l) X1 K+ s% [7 Q v9 f
| RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |8 C6 k( y+ `6 B) D, M1 @
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |! j3 U+ v. m/ @& ]$ M8 m2 S
| RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
& j* }- [) ?( L* ?+ l3 H. y# D. M | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |
3 b' N, B+ c' {2 z1 S, d# N; v | RTL8821AS | rtl8821as_config | mp_rtl8821as_config |6 C- V4 V ]4 Y0 V6 u) b
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |# C/ y- s; C. t1 {6 F
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |5 R. \/ b- x7 d8 b
| RTL8821CE | rtl8821c_config | mp_rtl8821c_config |! O- z6 ]3 B6 w8 h' m6 O- M8 m( ?
| RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |7 N6 R+ S4 R T2 h0 p
| RTL8821CU | rtl8821c_config | mp_rtl8821c_config |
8 [$ `, b: b; e- }) Q | RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |
* a' w: F/ h3 ^3 { | RTL8822BE | rtl8822b_config | mp_rtl8822b_config |) I/ r, _6 w% s- \; C
| RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |
% Y! P7 v0 }' X* T- i7 Y) g. n4 ~ | RTL8822BU | rtl8822b_config | mp_rtl8822b_config |5 r3 K8 q7 q% p5 y0 X
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |% ~7 O# I" o5 f
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
/ z2 L( X5 G- X& y. e | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |* {! k! y7 n) ~0 A* A
| RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |* j( H0 t* r: w7 `" H
---------------------------------------------------------------------------------0 }" M1 {# f: o5 P1 r
Linux OS 系统0 \ e# t- {3 M. Q
文件说明:; a0 I) Z) z1 m( P. ~
Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成
* G* O( G/ y9 l l BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
, O8 b# g% |9 M& K8 n2 E BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
% ]3 O2 _- B' O$ E: _ Readme/Readmexxxx.txt: 本说明文档6 }+ A: J8 O# |8 y: Q
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集; J2 [9 Q- T) A
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:
6 o. {$ `4 ^, }1 b' G( q" T -----------------------------------------------------------------------------------. i, K" }3 U: f3 y9 r# z5 A. w
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |' n% q$ q% N' \
|----------------------------------------------------------------------------------|
9 M, j) a* J7 e! r. m | RTL8703AS | rtl8703a_config | mp_rtl8703as_config |
( G; j0 l; a( x, H | RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
# _. ?# Z) r" v4 E; C! a | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
# H2 t# @+ f; t# x2 g | RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
* x2 D$ i- L) g% Y+ {) N: T7 o | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |) v0 l9 [: S3 F' a
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
% s, O* \8 n; ~ n9 z | RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |3 [# \2 ~, k3 t- A7 w& v$ R' f/ W
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |6 c0 b* c/ _* V5 t' N$ c
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |* U8 @ R% c9 l, H) v, z8 k# h
| RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
' d/ V% a. j; I* x3 z9 n | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |
# y; E1 t8 R: y | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
& A! e; c% d1 h1 [ | RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |
6 v: h0 J" p" n4 k- Y: H" } | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
2 V N* L+ s' m" h/ b4 N | RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
6 v& W3 I7 S1 o! N | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |
4 L- I8 R) H7 A" g4 @6 D" U | RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
. A+ X, P+ `6 k5 F | RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
+ r; b' A8 q" } | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |& ~! P- _9 o( [2 Y: y
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
, \6 d. e" M- L0 }. K4 y | RTL8821CS | rtl8821c_config | mp_rtl8821c_config |; E4 }( \: s1 P& k+ M
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |+ T2 [1 y: G! ^ ]" b/ W$ A
| RTL8822BS | rtl8822b_config | mp_rtl8822b_config |
# V8 C* ~3 N1 f* S' ]7 d- e# ^# R | RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |- G$ F$ k3 ~5 {8 E+ d
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
5 O# b# o. n$ a) v) P/ d | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |" k3 O, ~" J7 E3 s9 Q* }
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
9 R* `! P# C4 j" ? D* j- w# q | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
. \9 M( N- l3 R! o+ X -----------------------------------------------------------------------------------" y8 S- G& c. `, d1 O; F1 d9 Z- `
5 O9 e* B1 ^) K0 C4 _, n1 J2.运行环境搭建+ `- j Z: ^. g! n8 ~5 }8 U* K2 p
Android OS 环境5 L, P2 w \& ~( O$ t: o
将 tool 所需文件放到系统里1 K! A. V# k- N% f* R/ Z
将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
* w/ o6 e( h) r3 e0 A e- Xadb push rtlbtmp /system/bin/
2 {, ]( ^- h$ D/ t* g: Sadb chmod 777 /system/bin/rtlbtmp$ x& e& u$ ^4 ], L6 ^
将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;3 _3 \6 h/ v& D( z& C* W
adb push btmp.default.so /system/lib/hw/
9 _* V/ x5 b4 w, Hadb chmod 644 /system/lib/hw/btmp.default.so
. { t6 o4 o$ {将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;! p4 ~7 o& \! ]' v+ e
adb push mp_rtlxxxx_config /system/etc/firmware/
, ~" V% v) R6 D; G% ~. T+ Zadb chmod 644 /system/etc/firmware/mp_rtlxxxx_config0 D# q3 g7 S$ A+ w4 t
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;
( h: D* I$ ^4 ~* o Kadb push mp_rtlxxxx_fw /system/etc/firmware/
0 m) `& s( U% D, Fadb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw1 v) ]5 ]% Q' N
7 O* }' N$ \& {: N* Z5 g- V
$ ^: F* s# M, s( h#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面
. Q/ q; @, X" ^! L将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;) v( f4 J0 o8 _
cp rtlbtmp /vendor/bin/7 p0 U& n+ B3 a& p- E5 f
chmod 777 /vendor/bin/rtlbtmp
) n. k3 n6 |$ b+ E' | \6 R将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;! H- G* J2 G- F3 F- ]8 D
cp btmp.default.so /vendor/lib/hw/
7 f: f- G" Z% Dchmod 644 /vendor/lib/hw/btmp.default.so+ Z, W# l% J( U# A+ v
将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644; Z P! w7 x) x3 e( M
cp mp_rtlxxxx_config /vendor/firmware/5 F' o" b& V* h, U
chmod 644 /system/vendor/firmware/mp_rtlxxxx_config
& E4 O+ ]" z( O9 ~) U9 D$ Q& R将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644; P: J- k- p- B
cp mp_rtlxxxx_fw /vendor/firmware/
1 k( z6 j g ?; @& e5 a2 vchmod 644 /vendor/firmware/mp_rtlxxxx_fw
, v$ i# h; B' r" o7 z以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;! n+ k% }# N# ?. T$ T
关闭 normal BT
6 Z) {; L) t9 x3 ^rtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:
' O' I& q+ b& k) a9 Q, ^service call bluetooth_manager 8(关) /6(开)' o/ s4 K5 J0 F/ I8 j
或者
- [0 i: a% O) Z; V* [cd /system/lib/hw
: U' J) a" m% |0 C5 ]2 S: M0 imv bluetooth.default.so bluetooth.default.so_ORG+ u9 u7 l) ?/ _0 R
(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
/ R8 U/ V; \- Ireboot
' v7 E! @- Y& N( q. K; ]
9 O0 ?7 R+ k$ Y0 G$ G7 f! xLinux OS 环境
' u* f' {' x( W& F S3 L 将 tool 所需文件放到系统里, \% d# s# E i. ?$ A, _. f0 ~4 o
cp rtlbtmp /usr/sbin/# w1 p6 _0 p$ K$ `4 T" r
chmod 777 /usr/sbin/rtlbtmp# r& q# R: Y& W5 s
cp mp_rtlxxxx_config /lib/firmware/
7 E% [) |2 u g: \ schmod 644 /lib/firmware/mp_rtlxxxx_config3 ~' E `/ M- {$ u6 Y4 U
cp mp_rtlxxxx_fw /lib/firmware/
6 |; J( k& p7 H# Fchmod 644 /lib/firmware/mp_rtlxxxx_fw: A3 m, P, d, w* F t1 n% \7 y
UART 接口芯片准备
7 ?1 Q6 D: F; A! V2 w7 ~6 D请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;; L& G6 b& `5 v: z. q
USB 接口芯片准备
+ K$ b( {. O. ~! {9 O& @先打开 normal 蓝牙,再 hciconfig hci0 up6 T3 q; q( w1 q& O2 u Z) `, a5 C9 X
6 d# U. _6 R7 }. y N: c; q
* A E# a4 K) ~# K/ j3.BT RF Performance Test & TX Power Calibration* `4 d, X. J, T3 F
参考User Guide
4 ^, P, L3 u7 Y#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
: Y! _8 E, C& @0 E) O1 b" q* l5 F2 X2 L( b# i
4 ~, Y* ?' i9 U, J" q+ ]4 V1 Z
一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!" l( F( Y/ d5 f$ x' ~
3 C2 e; C; ^) a* D- T% c1 g
. Z0 @. O# ]. ~" f9 Z" w! M
|
|