蓝牙+ Android + scatternet拓扑

时间:2011-07-26 12:20:49

标签: android networking bluetooth

我在蓝牙和Android方面遇到了一些概念上的麻烦。正如我一直在研究的那样,蓝牙允许多达7个从设备彼此连接到构建微微网络的同一主设备。此外,BT允许主设备充当另一个微微网的从设备,构建一个散射网络,其中所有设备可以使用上层协议相互连接。

我的问题是关于蓝牙行为和Android。

1)你怎么能在Android中知道你的设备充当主设备或从设备,或者是作为另一个微微网的从设备的主设备,还是奴隶连接到形成散射网的两个主设备?

2)蓝牙仅允许每个主设备有7个活动从设备(先前在查询扫描期间选择),以及“停放”模式下最多255个从设备(同步监听主设备但未激活)。你怎么能连接到这个“公园”设备?只有当其中一个活动链接断开,因为链接断开,例如一个“停放”可以连接?

3)您是否可以在Android(或BlueZ到Android)上配置设备以不同的模式工作,如“嗅探”或“暂停”以实现耗电目的?

4)Android API是否可以向同一个微微网的所有从属设备进行广播?如果是的话,我希望它能够发送自定义数据信息。

非常感谢您提前帮助我。

2 个答案:

答案 0 :(得分:4)

要添加 - 散射网还有一种可能性 - 一个设备在多个微微网中充当从属设备。

  

1)你怎么能在Android中知道你的设备充当主设备或从设备,或者是作为另一个微微网的从设备的主设备,还是奴隶连接到形成散射网的两个主设备?

你不能 - 我不认为有一个公共API - 而且这个想法对于应用来说应该没关系。

  

2)蓝牙仅允许每个主设备有7个活动从设备(先前在查询扫描期间选择),以及“停放”模式下最多255个从设备(同步监听主设备但未激活)。你怎么能连接到这个“公园”设备?只有当其中一个活动链接断开,因为链接断开,例如一个“停放”可以连接?

基本上 - 蓝牙可以连接并与多达7个设备进行有效连接,然后可以将有源设备置于停放模式,并且它可以在停放模式下拥有大量设备(也超过255个),因此设备移动停止从连接 - 活动状态,反之亦然。但在任何一点上,你只能拥有7个有源设备 因此,主设备可以通过保持(7)激活和休息来管理大量设备,并在活动和停放模式之间保持切换。

说完所有这些 - 不再使用停放模式 - 它在蓝牙规范中被弃用,并且还容易出现许多互操作性问题。

  

3)您是否可以在Android(或BlueZ到Android)上配置设备以不同的模式工作,如“嗅探”或“暂停”以实现耗电目的?

应用程序API没有任何内容可供使用 - 但通常设备会在不活动时切换到嗅探(由底层蓝牙堆栈的策略管理算法控制)。再次保持很少使用 - Sinff是通常用于蓝牙省电的最佳模式。

  

4)Android API是否可以向同一个微微网的所有从属设备进行广播?如果是的话,我希望它能够发送自定义数据信息。

再次没有用于广播的API - 但是对于蓝牙,可以向所有活动甚至停放的设备广播。是的,它也可以发送自定义数据。

但遗憾的是,没有API可供开发人员利用和使用蓝牙技术提供的大量功能。

答案 1 :(得分:2)

适用于Android的Beddernet ,开源框架,允许您与大量设备进行通信。

看看这个,也许对你的情况有帮助。

https://code.google.com/p/beddernet/

相关问题