TI中文支持网
TI专业的中文技术问题搜集分享网站

concentrator入网的设备多了就不发RouterRequest,导致ActivePoints指令发不出

@vv @牛头 @marS @各位大神

cc2530 协议栈Z-StackHome1.2.2a,协调器配置成concentrator,说明网络是Many-to-one方式(?),设备采取router挂router方式入网,开启允许入网后,前面的入网都很正常,当入的设备多了后,之后的设备再入网,发送的ActivePoints指令就发不出来(抓包看不到,但是host端返回status=ZSUCCESS),后面经分析发现,能发出activePoints的时候,是因为协调器在收到设备annce信息时主动发了RouterRequest来获取这个节点的传播路径,而当发不出ActivePoints的时候都看不到RouteRequest,那么我可以认为是因为协调器没有该节点的传播路径所以消息发不出来吗?那么问题来了,为什么在设备多了的情况下协调器不发RouterRequest来获取路径呢?

在SWRA472c文档上有一句话:When the network is first started and devices have joined the network, the concentrator sends a many-to-one route request (MTOR) so that all 400 nodes can discover a route to the concentrator. 正是从这句话上我读到,当设备入网的时候concentrator会发出routeRequest来寻找路径.然而事实上并没有在协议栈里看到有发MTOR的函数,肯定又被TI隐藏了,所以各位大神,能否帮我看看是怎么一回事,回答正确有奖励哟(¥100+).下面是放图时间:

1.正常入网,有routerRequest

2.正常入网有routerRequest

3.失败,没有ActivePoints,显示SourceRouteFailue

4.失败,没有ActivePoints,

miffy:

1、你看的是AN123文档,也就是TI在圣地亚哥实验室测试的400+ node 组网实验,他们应该用的是CC2538,MTO方案,但不是CC2530,CC2530的RAM有限,但是路由表一项,都会超过RAM限制导致build阶段出错;

2、AN123文档里面提到MTO有一个打开开关:

CONCENTRATOR_ENABLE

3、正如AN123开始所说的,While traditional ZigBee networks encompass 5-20 nodes,CC2530由于RAM最大只有8K,所以最多不可能维持更多节点的入网,估计就是二三十个节点最多了。

4、我们都换成CC2538了,CC2530在Large Network Deployments方面不行

wei shi5:

回复 miffy:

你好 如你所言 已经换了cc2538了 但是现在的问题是:当一个终端节点切换父节点(这时候协调器在线),发了updateDevice给协调器了,而且后续还有DeviceAnnce发出来,但是协调器将后续的消息仍然发给了这个终端的父节点 这是为什么,这个MTo的问题搞了都一个多月了 还是没有一点进展 一点都不稳定 ,我都快没信心了 能不能帮帮我啊,还是说TI的协议栈有问题?  大神能不能加个qq 1006601833  我还有一些问题,不知道你是不是碰到过,求帮助

赞(0)
未经允许不得转载:TI中文支持网 » concentrator入网的设备多了就不发RouterRequest,导致ActivePoints指令发不出
分享到: 更多 (0)