TLSR8266 连接安卓9.0时 conn parameter,MTU更新失败

Discussions on BLE related products, including standard BLE devices, BLE mesh, and Apple HomeKit products
Post Reply
John_Senmedia
Posts: 9
Joined: Thu Jul 12, 2018 9:41 am

Mon Jul 22, 2019 9:23 am

你好

我用TLSR8266做项目,需要连接安卓,然后发送notify。我的传输速度很快而且数据量很大。我发现与Android6.0连接的时候,conn parameter 和 MTU可以与我firmware里面request保持一致。安卓7.0时,效果稍差一点,安卓9.0时,发现很差,丢了很多数据。用packet sniffer抓包发现,与安卓9.0连接时,显示MTU update request失败,请问是否TLSR8266不兼容安卓9.0,有没有什么办法修复?

现在同样5秒钟,与安卓6.0连接,可以收到440个notify数据,与7.0连接,可以收到312个notify数据,与安卓9.0连接,可以收到150个notify数据。(每个notify数据包含48bytes),为什么不同手机会有这么打差异?
TL_tigeryang0203
Posts: 29
Joined: Wed Jul 19, 2017 8:04 pm

Fri Aug 09, 2019 2:42 pm

1、不同的手机在一个通信间隔(connect interval)内支持的收包数量是不一样的,有的支持多包,有的支持少包。
2、如果都是基于BLE4.2,23bytes一个包,不同的手机在一个interval根据传输包的数量不同就会影响传速度,也就是notify的数量。
3、826x notify时,RF底层,你可以理解成有一个缓冲器,只能缓存一定的数量。之前的发送完了才能再缓存新的。
Post Reply