|
1.文件说明6 i2 M% H4 h/ [0 F! b. }% W
Android OS系统
" l: j, A+ v. f5 _ 文件说明:
9 h+ ~6 K: W* l- O# y/ _2 ^ Android_tool/rtlbtmp: 应用程序" b% W! f; c1 |8 u5 B
Android_tool/btmp.default.so: 应用程序
9 \! q3 m9 {) J* l9 e BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware7 ]$ h% G( i3 f5 E R1 ], S1 {+ l2 w5 h
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
# b0 p# I. W0 S Readme/Readmexxxx.txt: 本说明文档. R6 S9 R& ^. ^+ t# {
User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集
6 L, t" v8 k. S- O$ V( g7 T3 ~8 ]* W
% f& L% s( Z! }/ [. j5 v R; { 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:, u! y( ?0 _9 O! L- {( k
---------------------------------------------------------------------------------
9 {, R2 b/ f- C1 ^& J3 p | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |. P2 K; X- C1 b' `% h/ f- z4 C4 D
|---------------------------------------------------------------------------------|
3 z" ? n- F- L, f | RTL8703AS | rtl8703as_config | mp_rtl8703as_config |
/ A7 g$ k& R' ]& N$ m | RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |5 N6 @6 l6 R" }% [
| RTL8723AS | rtl8723as_config | mp_rtl8723as_config |: u8 V1 n6 |4 A L; o+ ?
| RTL8723A | rtl8723a_config | mp_rtl8723a_config |
3 l( h9 V9 \4 ~, V. R | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |( X' K$ p* U, t9 }
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |7 M, e6 t$ |# f5 `* I6 p* W3 m
| RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |
. ^& ^. i' W R | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |, \, j& c9 V, ]" L3 J& f0 b: l
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |- m. V3 E7 t) M7 _% W
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |$ v. d6 J" `% x
| RTL8723CU | rtl8723c_config | mp_rtl8723c_config |
6 W2 m# G, G: x- d/ E | RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |
! ^/ h2 d9 {8 s& }+ ~ | RTL8723DE | rtl8723d_config | mp_rtl8723d_config |1 [* A& t2 P8 v
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |' j! t& d$ B" W7 j! i8 f$ ?# I {
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
6 ^( Y; E3 ?7 _: I8 e0 } | RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
* j- Q( k+ v/ i% l" T | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |# @8 i+ a) U! J6 c
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |0 ]: a% b4 p, I' K. D9 C0 n
| RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |4 Z$ _! F4 H! n/ v" D
| RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |
7 ^# |+ R) n- F9 Z/ U | RTL8821AS | rtl8821as_config | mp_rtl8821as_config |% E7 V' a! u3 ?5 E' w& M
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
. O* z" n1 q N4 O& E+ `) x0 v! D | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |& N ?/ |" }& T5 W1 n& Q+ g
| RTL8821CE | rtl8821c_config | mp_rtl8821c_config |
1 Q! x" \7 ~" \# ^" i0 ?. d2 x | RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |
) U: k0 e6 S% u | RTL8821CU | rtl8821c_config | mp_rtl8821c_config | P& p) x( ]' Y7 V3 u
| RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |' w0 u5 `9 ~3 n Z8 h! Q# f, l/ f3 q& Q
| RTL8822BE | rtl8822b_config | mp_rtl8822b_config |/ N0 E, D0 I; A/ X
| RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |/ p" k8 k9 g+ O/ j/ _3 Q L3 ^
| RTL8822BU | rtl8822b_config | mp_rtl8822b_config |1 e: r7 i, b# H2 S2 [( M
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |. u" }; J: X& n* |+ E- c7 `; d% B
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |0 H1 [3 `0 @% W: `/ }% U1 e
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
3 b; F% l! e6 \" c2 j ] | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |3 I+ `& H# G, F
---------------------------------------------------------------------------------
' w% m8 D% H) [9 a# O7 L6 WLinux OS 系统
5 o: ?9 g) j! z9 ?; `1 I* L 文件说明:7 w' t$ J: W( H
Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成! D; d1 T+ b: J
BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware
0 o3 ^7 x' e+ p* F/ M- R" D BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config 7 Z7 U6 Y0 p: p E
Readme/Readmexxxx.txt: 本说明文档
+ g/ G, G+ Z/ q6 q6 J7 d8 n User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集) `6 ?& V, _1 n8 e
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:4 R1 f9 g8 t& \
-----------------------------------------------------------------------------------
0 j' k- |" A1 o* ~1 F | 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
* g' j8 b$ a3 N: d9 G |----------------------------------------------------------------------------------|
4 j+ |( h; ]6 h8 e7 X$ b) C | RTL8703AS | rtl8703a_config | mp_rtl8703as_config |1 C1 o( r# y3 e
| RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |4 X- T8 X, p( ~- {' l2 j( A& r
| RTL8723AE | rtl8723a_config | mp_rtl8723a_config |2 W& P1 M$ U! ?& o& t" _
| RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
6 I: A, [+ v3 A& p6 N9 [8 f. ~" M | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
$ G+ ^7 f' A+ w% H" j | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
8 R- z1 q9 D5 r2 g9 w | RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |
9 Z1 c4 b( W+ V8 |( q | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
" x1 Q2 f% K# F/ j4 K | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
4 ]3 l/ y8 ~( c( ^$ m | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |
# q& o N% s/ a B$ V( [% O | RTL8723DU | rtl8723du_config | mp_rtl8723d_config |
% b/ g l7 Q) _5 d" { | RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
+ s& \/ R6 C% h' a! H | RTL8761ATV | rtl8761a_config | mp_rtl8761at_config |5 U& T3 _4 y4 \' }2 h( n9 t+ E
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |! w- @1 g- |$ S0 n4 ^( S
| RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
4 p [& V3 o. ` | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |4 W7 t. B5 e+ Q7 t+ P: m$ Z; Y R% i
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |4 I* @* e+ H" x9 d9 z6 d9 E
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
, ]: b) \* L. k" `/ I | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |
5 q- S0 Q7 z/ I& G | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
8 R1 E$ a8 f" @ | RTL8821CS | rtl8821c_config | mp_rtl8821c_config |+ g: t2 E2 D# [
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |
1 \% L# r: i$ A9 ~, R2 ^; j" J- Y, g | RTL8822BS | rtl8822b_config | mp_rtl8822b_config |
* H O0 O- r" y/ o& a4 g$ B | RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |
' _ r1 x0 N& c5 O; y | RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
' d- h6 S8 q, `3 t# f) S: h; \/ s | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |7 o' C/ D0 n( e3 Z, _& L
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
5 p1 }" O0 q& k6 _* _ | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |' s! b/ u7 g* s% h) S2 @
-----------------------------------------------------------------------------------
+ k `& S& z7 Y* B$ \. ^! }
9 W9 W6 u; ? W4 E! E2 H% r9 L2.运行环境搭建
1 w! P! ^% Q j2 J, @5 @4 M, p! ~Android OS 环境; W( T( }; j6 e; l5 }
将 tool 所需文件放到系统里" N( D) e* e) g2 U
将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;, B: T! r8 J( o) _6 @7 Y; e `0 w' N! R; F
adb push rtlbtmp /system/bin/9 X5 K% ^' ^, B' G% e
adb chmod 777 /system/bin/rtlbtmp
& s/ Q* [. G. G% {将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;
# } D- B7 x% \& m; T2 _! ]adb push btmp.default.so /system/lib/hw/4 A9 ]$ o: ]: D9 n6 y
adb chmod 644 /system/lib/hw/btmp.default.so* u0 @7 Z- K6 ]7 h
将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;5 a9 J4 b0 c0 I' a5 h& Y
adb push mp_rtlxxxx_config /system/etc/firmware/
, }: f& K4 F8 I3 k4 kadb chmod 644 /system/etc/firmware/mp_rtlxxxx_config% y5 l. L6 p; ^
将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;* p0 b: v; L/ Y8 W8 p
adb push mp_rtlxxxx_fw /system/etc/firmware/( ^2 A* F6 f3 i6 W7 i* l8 F) f! q
adb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw
: N' \2 e* m5 K) X) a- P, u
5 \. p, m( r6 o9 X! }3 P" E# O1 S( T0 l3 f( {
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面5 W8 ~; K) q4 Q8 i& K: k# {
将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;. Y5 ?. E9 R$ _+ Z& S
cp rtlbtmp /vendor/bin/0 ^7 C" D8 p9 K! |* L7 O
chmod 777 /vendor/bin/rtlbtmp
+ ?$ y/ l; _) [5 f% K- n) a; N将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;
/ G l3 c+ S% s# r5 h% v8 v% i! @cp btmp.default.so /vendor/lib/hw/: i, O6 u5 h2 i$ ~, T
chmod 644 /vendor/lib/hw/btmp.default.so! H( D- ~8 ~ h2 V$ ~
将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;) W1 u& R5 k3 t
cp mp_rtlxxxx_config /vendor/firmware/
* G9 \% W) l0 a! I! @* |- ichmod 644 /system/vendor/firmware/mp_rtlxxxx_config
& N7 I" ^; T9 m: o" P+ @将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
6 ^* y* W. D3 j7 u& jcp mp_rtlxxxx_fw /vendor/firmware/
. G# D! L* g/ N* @" z8 r- ychmod 644 /vendor/firmware/mp_rtlxxxx_fw2 M- { [8 C& w; G1 _" j
以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;
, k, E# i [8 L6 g$ d+ [. O/ s 关闭 normal BT- C% o; k" A6 ^! t$ M' H# V0 N3 m, N
rtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案:3 ]' C4 P. w ?* H6 c3 d$ l: j* U
service call bluetooth_manager 8(关) /6(开)2 E/ m4 h; r; L$ i A: @
或者
, ?+ c0 [- @# L8 w' ^cd /system/lib/hw7 g7 m# p: K4 i0 V, _' X( i
mv bluetooth.default.so bluetooth.default.so_ORG
8 i4 n- V, u# v(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)
: A H6 b( t+ m* m' \reboot; P" @# V2 ~* @0 |
8 H7 Z3 J: ~$ v& SLinux OS 环境2 |% e& i# q, Q3 X2 g2 U
将 tool 所需文件放到系统里
. I, r, @% K+ G1 @cp rtlbtmp /usr/sbin/
2 g1 F" s3 u3 S: o0 I1 a4 hchmod 777 /usr/sbin/rtlbtmp
& B. K4 d, A p0 Kcp mp_rtlxxxx_config /lib/firmware/
7 g! {2 \( P" P$ o* achmod 644 /lib/firmware/mp_rtlxxxx_config8 \/ T, ~" S' _" Z
cp mp_rtlxxxx_fw /lib/firmware/
; ]' c. Q/ _6 d j- M' L# i( C6 Tchmod 644 /lib/firmware/mp_rtlxxxx_fw; E3 [/ A5 Q- u2 s1 R
UART 接口芯片准备4 c# r. z, R0 V/ W; v3 U' _
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;
* r0 g' ]0 d+ _0 n. K. ~$ O USB 接口芯片准备
# H# j9 h+ L* f+ {6 X. V$ ?先打开 normal 蓝牙,再 hciconfig hci0 up
r- l/ P5 s1 l% J+ J
, A4 r' \ t8 T% F7 A
( W. C2 v4 n+ d; q, V" `3.BT RF Performance Test & TX Power Calibration Q7 p4 @) L, ]9 N. F8 s
参考User Guide4 ]+ V# @$ t% q% v
#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
9 [! S/ O4 N/ P# `; u" z0 [8 Q( W/ l. Y+ ^* ^( T* L- C* o
5 _+ u' K! L8 h5 ]5 t* L
一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!
" @2 o: i/ n- X1 n5 ]' T% N d# O$ z! h
% N. J1 S9 }! _! S
|
|