|
|
1.文件说明
# ]- Y' t6 G: o) `7 J. ?1 o- u/ `- IAndroid OS系统; r( F! ]6 G+ \
文件说明:) X- o, |2 M6 N2 M5 M
Android_tool/rtlbtmp: 应用程序4 A7 z1 \- s' ]* ~) k$ @
Android_tool/btmp.default.so: 应用程序
4 i/ E- p9 O$ y; `( ?9 Q BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware# N; R6 h1 M& @+ b1 f* y6 j* O* M
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
' m4 h& M, a; L4 K% N- c# T Readme/Readmexxxx.txt: 本说明文档" p0 H7 Y, W% J1 Z! o; g7 n
User Guide/MP tool User guide for androidxxx.pdf:mp tool 的命令集$ [7 j6 S* _; R* p3 s" V4 t( K
9 t# z* V7 S3 e! |$ f5 X* b* d
下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:0 ]& H7 x9 l2 ~
---------------------------------------------------------------------------------! H% }- x+ b5 J& I
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
- T( W/ X) Q+ F8 {# X |---------------------------------------------------------------------------------|$ |+ {' q+ o. f& ~5 ]3 P
| RTL8703AS | rtl8703as_config | mp_rtl8703as_config |
, U; t! D/ f | | RTL8703BS | rtl8703bs_config | mp_rtl8703bs_config |) m/ l* e0 P8 [& }" G
| RTL8723AS | rtl8723as_config | mp_rtl8723as_config |
" d5 b7 C" n, Z- S) ~+ O5 G | RTL8723A | rtl8723a_config | mp_rtl8723a_config |& R% a! e$ W3 F/ m' J. E- ~
| RTL8723AE | rtl8723a_config | mp_rtl8723a_config |& [+ z1 g+ T8 S& Y, l/ f0 Y5 ]9 W
| RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
& k9 v+ X! V0 w2 F | RTL8723BS | rtl8723bs_config | mp_rtl8723bs_config |2 x4 ?* m0 P1 {4 i
| RTL8723BE | rtl8723b_config | mp_rtl8723b_config |
4 q, i0 j: T, d5 V$ G | RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |
4 B1 [ A6 x8 i* @, _ | RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |" _5 k3 K0 O& n+ A
| RTL8723CU | rtl8723c_config | mp_rtl8723c_config |
6 W' x# t$ [3 {" S8 u+ p | RTL8723DS | rtl8723ds_config | mp_rtl8723ds_config |4 |% `. y7 f/ ?* g) n
| RTL8723DE | rtl8723d_config | mp_rtl8723d_config |( ~3 A3 Q2 c8 r. U# o; x
| RTL8723DU | rtl8723d_config | mp_rtl8723d_config |) D9 p. ?1 [' X8 ^6 m
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config | P- Y# O! s& V. z
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
% K2 C: @% A7 P7 Y$ @ | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config | V4 W6 b6 n. q0 Z5 v
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |
) l5 h" I3 a6 ~" P | RTL8761AUV | rtl8761a_config | mp_rtl8761a_config |
) z- ^: e3 D& B; N | RTL8761AW + 8192EU | rtl8761aw8192eu_config | mp_tl8761aw8192eu_config |6 x: z* j- C/ B$ x
| RTL8821AS | rtl8821as_config | mp_rtl8821as_config | y- p2 L# t/ e$ B
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |$ L* ^: b( I' s7 i5 f: A( M+ u
| RTL8821AU | rtl8821a_config | mp_rtl8821a_config |+ p4 E r1 e: L+ b. N' h
| RTL8821CE | rtl8821c_config | mp_rtl8821c_config |9 S! Y7 k0 B; l' _( J8 d* `
| RTL8821CS | rtl8821cs_config | mp_rtl8821cs_config |9 T& O8 ~' M: e: g- r; H
| RTL8821CU | rtl8821c_config | mp_rtl8821c_config |$ H7 Y) I2 ~: d# a4 x" O
| RTL8822BS | rtl8822bs_config | mp_rtl8822bs_config |
- q( S( S, z' c: C8 y) d; O | RTL8822BE | rtl8822b_config | mp_rtl8822b_config |# M( s7 g3 j2 L0 \7 Z
| RTL8822BEH | rtl8822bs_config | mp_rtl8822bs_config |# P7 @+ |& j: o o. G! @8 o
| RTL8822BU | rtl8822b_config | mp_rtl8822b_config |+ R7 o& } X' q0 `& ~* S
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |9 P4 E% S) X9 U/ O
| RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |0 _* j% O; v1 F# \+ b
| RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
* B+ d" \3 g" A8 X" b; E& t# Q* W | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
* O# ?, j4 V) o ---------------------------------------------------------------------------------1 @# M$ f1 u; \8 I
Linux OS 系统
' {& |1 W4 O: ? 文件说明:
. j3 ^$ q' g( |) M8 ?4 ~0 ^ Linux_tool/rtlbtmp: 应用程序,需客户提供平台的交叉编译工具链来生成
& j' _( T* q2 L2 ]1 [, v n7 L' F+ R BT_Firmware/mp_rtlxxx_fw: 蓝牙芯片专用的 firmware' ~7 y% `* I8 i
BT_Config/mp_rtlxxx_config 蓝牙芯片专用的 config
i! y. X) P9 `, n Readme/Readmexxxx.txt: 本说明文档$ k! h$ m* Y5 }
User Guide/MP tool User guide for linuxxxx.pdf:mp tool 的命令集
' ?& p7 `& p4 G E' x' w; L9 O; B 下面是蓝牙芯片名称、rtlxxx_config、mp_rtlxxx_config 的名称表:" p; l2 c. f& f( I
-----------------------------------------------------------------------------------( S7 z+ B. t4 P+ U- Z! H& L
| 蓝牙芯片名称 | rtlxxx_config名称 | mp_rtlxxx_config名称 |
_2 Y7 W% \$ E- N0 F |----------------------------------------------------------------------------------|8 c4 ^& x1 s# w% T* w+ s+ K
| RTL8703AS | rtl8703a_config | mp_rtl8703as_config |2 z& e# `$ A+ v+ i/ A3 n1 {
| RTL8703BS | rtl8703b_config | mp_rtl8703bs_config |
' M2 r4 @4 j; L. K1 C+ R4 B% { | RTL8723AE | rtl8723a_config | mp_rtl8723a_config |
3 t5 y0 @4 o8 w- R N | RTL8723AS | rtl8723a_config | mp_rtl8723as_config |
# b' b: a. g% J4 N4 I | RTL8723AU | rtl8723a_config | mp_rtl8723a_config |
2 P; V g2 R" r | RTL8723BE | rtl8723b_config | mp_rtl8723b_config |$ Q0 W. j& O2 Y$ W+ M; J/ ]0 J
| RTL8723BS | rtl8723b_config | mp_rtl8723bs_config |0 x. r+ q, Z! ?. j; @+ J0 {
| RTL8723BU | rtl8723bu_config | mp_rtl8723bu_config |+ o( a0 g& C; {8 l# w+ J- e
| RTL8723CS | rtl8723cs_xx_config | mp_rtl8703bs_config |
E+ l+ Y" J( i" ?4 B | RTL8723DS | rtl8723d_config | mp_rtl8723ds_config |8 p) _+ Q/ f7 _! r, H! C- ?
| RTL8723DU | rtl8723du_config | mp_rtl8723d_config |- \& C# B5 n! u- T# Z, A' M ?
| RTL8761AT | rtl8761at_config | mp_rtl8761at_config |
) i% H# A1 m! b: ?# | q# F% J | RTL8761ATV | rtl8761a_config | mp_rtl8761at_config | Y/ p/ C* M5 I
| RTL8761AU | rtl8761a_config | mp_rtl8761a_config |
& ~* h8 B) o4 f1 o1 a- P | RTL8761AW + 8192EU | rtl8761aw_config | mp_tl8761aw8192eu_config |
) l* W3 n+ t+ N. p" n9 a) w* I | RTL8761AU + 8192EE | rtl8761a_config | mp_rtl8761a_config |: ]: d$ N3 _. M, d7 u( D3 [
| RTL8761AU + 8812AE | rtl8761a_config | mp_rtl8761a_config |3 H' T8 c& l( z' t0 T/ j9 z( v
| RTL8821AE | rtl8821a_config | mp_rtl8821a_config |
9 F7 L- ~. X' |, x) _! b5 Q | RTL8821AS | rtl8821a_config | mp_rtl8821a_config |
# H9 |+ {/ R( _6 z; e0 T# s, x | RTL8821AU | rtl8821a_config | mp_rtl8821a_config |
6 _$ ]0 P9 a* J | RTL8821CS | rtl8821c_config | mp_rtl8821c_config |8 W2 v3 v3 u1 X" \$ h) b
| RTL8821CU | rtl8821cu_config | mp_rtl8821c_config |" n/ W$ m! W, g% x% B9 t
| RTL8822BS | rtl8822b_config | mp_rtl8822b_config |) J9 a4 C% }/ @, H, C
| RTL8822BU | rtl8822bu_config | mp_rtl8822b_config |0 b. J3 ]" b9 Z2 R$ `
| RTL8761BU | rtl8761b_config | mp_rtl8761b_config |
2 @# K6 W; S' w {7 m( U# T | RTL8761BT | rtl8761bt_config | mp_rtl8761bt_config |
8 ?/ M, s. I4 N | RTL8822CU | rtl8822c_config | mp_rtl8822c_config |
# a ?( N: r( l* s- u; f( q | RTL8822CS | rtl8822cs_config | mp_rtl8822cs_config |
' r5 G8 Y% z$ t" n$ Q -----------------------------------------------------------------------------------
# G9 P$ a- Z- X W
0 v5 S5 D* ?! ?1 Q, w( S3 R2.运行环境搭建/ V' Q% p8 I; K7 f1 M2 i7 r3 [
Android OS 环境
; h! F1 k( \: s3 m将 tool 所需文件放到系统里
4 s8 S- [) H, h7 Q! O2 }将 rtlbtmp 文件放到 /system/bin/目录,并修改权限为 777;
9 ^2 n" q# [% r! Vadb push rtlbtmp /system/bin/ k N0 n5 l3 p3 a% l5 ^: H/ r
adb chmod 777 /system/bin/rtlbtmp( @( u! ?) Y* b8 m
将 btmp.default.so 文件放到 /system/lib/hw/目录,并修改权限为 644;
# S0 |. h% z/ H& ~0 Zadb push btmp.default.so /system/lib/hw/
) W8 u" Q1 Z8 ]adb chmod 644 /system/lib/hw/btmp.default.so" q" o) U) ^4 k. }
将 mp_rtlxxxx_config 文件放到 /system/etc/firmware/目录,并修改权限为 644;
_& E8 t, F2 I; [: Z" q0 m6 Uadb push mp_rtlxxxx_config /system/etc/firmware/
& N' ^9 X6 v4 D1 N, Y) f# U! y% h0 U1 `adb chmod 644 /system/etc/firmware/mp_rtlxxxx_config
$ S( k' e2 A% R; m7 ~将 mp_rtlxxxx_fw 文件放到 /system/etc/firmware/目录,并修改权限为 644;2 Q5 u! }9 ~6 m! H' R& N
adb push mp_rtlxxxx_fw /system/etc/firmware/
# a; F9 R9 l" v( Q4 Sadb chmod 644 /system/etc/firmware/mp_rtlxxxx_fw1 t& ?% Q9 X! C/ } p E
, T" p4 @* Z" P$ |$ F: ~' b+ T2 t
' f2 Y( s6 w) V1 W
#Note: 从Android 8.0及以后的系统开始,以上文件都将放到/vendor/目录下面& ~& h# }( `2 j3 ]/ B
将 rtlbtmp 文件放到 /vendor/bin/目录,并修改权限为 777;$ H, E- u% f$ l; e4 E9 }2 a2 a
cp rtlbtmp /vendor/bin/
- E7 \ O6 I2 ?) w* S+ K( p4 c) Schmod 777 /vendor/bin/rtlbtmp
( ~6 f! B: e: Y; _, L将 btmp.default.so 文件放到/vendor/lib/hw/目录,并修改权限为 644;
9 a, Z5 _3 p2 v8 P! \% a8 w$ ucp btmp.default.so /vendor/lib/hw/
* @' D5 w+ r9 C$ `. Ychmod 644 /vendor/lib/hw/btmp.default.so
8 p: \: i% N, d* ^将 mp_rtlxxxx_config 文件放到 /vendor/firmware/目录,并修改权限为 644;
1 K7 i' N/ w* o- bcp mp_rtlxxxx_config /vendor/firmware// k+ a/ p7 `* U# N$ P3 u, O5 B/ M
chmod 644 /system/vendor/firmware/mp_rtlxxxx_config$ m1 |& ^# e, h1 ?/ V9 F
将 mp_rtlxxxx_fw 文件放到 /vendor/firmware/目录,并修改权限为 644;
, J3 L% S3 \- s2 A6 |cp mp_rtlxxxx_fw /vendor/firmware/# [2 E! G# P! L4 x5 S2 Y4 _
chmod 644 /vendor/firmware/mp_rtlxxxx_fw
~# ^- _6 |+ ?以上文件建议放到 SDK 里,不会影响正常的蓝牙使用;3 [$ l4 u9 P9 B; T
关闭 normal BT
8 K1 L# u" @. V8 S( |8 |' e& ^" qrtlbtmp 使用的时候都需要先关闭 normal 的蓝牙,如果 UI 上不能关闭蓝牙,可以使用如下的方案: s9 E* }) G% W" P% W0 U% u
service call bluetooth_manager 8(关) /6(开)
f& v; S+ f# y8 V& m2 f或者! J; p% T v$ }; m: ~: M E& x7 v
cd /system/lib/hw" t- e5 @1 H* v
mv bluetooth.default.so bluetooth.default.so_ORG
- l/ I* M9 _: p2 \: j. }. ~(for android P 之后:是在 /system/lib/目录,mv libbluetooth.so libbluetooth.so_ORG)+ u% }- v. m0 t
reboot
1 B( u' J: t% }* T5 o; E$ e8 n
7 i, l" |; H2 _+ {Linux OS 环境+ r) X# i' U q0 [2 Q8 Y
将 tool 所需文件放到系统里2 T4 W/ o+ I9 ^0 [) U: v
cp rtlbtmp /usr/sbin/! k E! \/ G9 I! l. B
chmod 777 /usr/sbin/rtlbtmp# k1 X% b% R/ N' E9 x
cp mp_rtlxxxx_config /lib/firmware/( s# M: F6 g, @# N; I- y( a% H' Y' c6 a
chmod 644 /lib/firmware/mp_rtlxxxx_config
. Y" x' ]; x6 }1 ] A# L; vcp mp_rtlxxxx_fw /lib/firmware/
% P8 o; H5 A0 P) I, k' Cchmod 644 /lib/firmware/mp_rtlxxxx_fw
$ W7 c8 F( L# z3 R2 C UART 接口芯片准备$ _1 L4 f' |+ U
请关闭 normal 蓝牙,即开机后默认不加载 rtk_hciattach 等流程;
: |) k. g7 }( Y6 \ USB 接口芯片准备
! [: }. F' D$ ?% g+ x9 V2 n先打开 normal 蓝牙,再 hciconfig hci0 up
^3 K7 W) Q' a) F w6 P
0 k: a# D& j7 L# J# x) m+ o$ ?/ }' R& S# @; L( v7 {9 J3 m) |
3.BT RF Performance Test & TX Power Calibration5 `5 ?3 X( O/ d1 N8 ~8 u
参考User Guide
7 \2 h# q' |* k: P#Note:8761B & 8822C 相比之前的IC比较特殊,参考单独的User Guide
8 |; _0 S# `# t: I
$ b$ i# I7 A, f
" I' L0 E" Q$ A一般就是要细化linux还是Android,对应其中kernle版本有对应的config、fw、btmp.default.so、rtlbtmt、rtlbtmt_clt、rtlbtmt_skt,一些疑问可沟通!
2 u. W! q' @3 l0 C/ c h. u; A8 G2 s( b( Y7 ~5 E; B3 w
/ \# ?1 i9 u) r4 f. a |
|