-
不知道你在说什么!
用的什么软件协议栈?什么硬件芯片?什么应用环境?
贴这么一点代码,没时间猜你的想法!
-
串口波特率和流控设置对了吗?
另外,你用的什么版本的协议栈,感觉这个console有点老了。
-
检查一下你的开发板上的复位电路,看一下在不接仿真器时2530的复位管脚电压是多少。
-
freebsder 发表于 2015-3-19 16:19
Transactions not using APS acknowledgements may not be fragmented. Multicast and broadcast transmissions are not permitted to use fragmentation.
多谢答复!
那么关于我碰到的这种问题,能否给点建议,如果自己写程序来实现广播包拆包传输的话是否可行?
请指教,谢谢!
-
在AF_DataRequest()函数中执行程序:
if (len > afDataReqMTU( &mtu ) )
{
if (apsfSendFragmented)
{
stat = (*apsfSendFragmented)( &req );
}
else
{
stat = afStatus_INVALID_PARAMETER;
}
}
else
{
stat = APSDE_DataReq( &req );
}
当传输的数据长度大于最大长度时,会调用“拆包”函数
stat = (*apsfSendFragmented)( &req );
这里的函数返回值是1,afStatus_FAILED。
但是什么原因就不清楚了。
并且单播传输时没有问题,在广播时就不行了。
请指教,谢谢!
-
终端在给协调器发送的数据包中就包含自己的地址信息就可以了,这样协调器即不用浪费自己的RAM空间来保存所有节点的地址信息,也不用花时间来查询了。
-
这个功能好像Z-Stack目前不支持的,需要你自己编程序来实现。自己定义一个定时器,时间到就停止搜索网络。
-
不太了解你的应用环境,所以不好评论你的读卡器的使用方法。
对于你说的extendedPANID,这个我没有用过,在协议栈中搜索了一下,发现也是一个8字节的数组,感觉跟设备的IEEE地址类似,这个是指的是Zigbee网络中协调器的IEEE地址吗?新加入网络的设备会判断协调器的IEEE地址是否是自己已设定的extendedPANID数值,是则加入,不是则拒绝加入?是这样子的吗?请指教。
节点设置参数的问题,我们采用了串口数据传输的方式,考虑采用无线通信的方式,这个正在实验中,不知你有什么好的办法没有?
-
你说的攻击的情况确实有可能发生,但是多数情况下是用户使用不当造成的,比如设置了两个相同网络参数的设备。但是只要使用好了,还没有人闲着没事来攻击你的设备,毕竟不是用在什么特关键的场合。
比较感兴趣您说的设置白名单的方法,不知道你的协调器端是如何操作的,按键录入?还是有上位机软件?另外,你说的IEEE地址是芯片中的Primary地址吗,如果是的话,是不是设备生产出来后还需要手动读出设备的这个IEEE地址?
-
原帖由 shower.xu 于 2013-12-13 17:21 发表 [url=https://bbs.eeworld.com.cn/redirect.php?goto=findpost&pid=1604388&ptid=421170][/url]
TI例子里是在那个文件参数里面配置的?能给个例子么?
找到了,在cfg文件,我想说的是,那是个宏定义,我应该修改那个变量呢
/* Define the default PAN ID.
*
* Setting this to a value other than 0xFFFF ...
ZDAPP_CONFIG_PAN_ID这个数值在程序启动时赋值给了变量zgConfigPANID :
uint16 zgConfigPANID = ZDAPP_CONFIG_PAN_ID;
利用串口通信修改变量zgConfigPANID ,并保存在NV区中,以后程序每次启动都从NV区中读这个参数就可以了。
-
原帖由 shower.xu 于 2013-12-13 12:35 发表 [url=https://bbs.eeworld.com.cn/redirect.php?goto=findpost&pid=1604232&ptid=421170][/url]
这样的话不是每组网都要分开下载程序,有办法通过跳线或其他什么指定PANID么
程序是一样的,PANID等网络参数可以通过像你所说的用跳线来选择的方式,我是采用的串口设置来实现的。
-
原帖由 shower.xu 于 2013-12-13 08:46 发表 [url=https://bbs.eeworld.com.cn/redirect.php?goto=findpost&pid=1604100&ptid=421170][/url]
您有什么好的办法么?请指教
指教谈不上,我采取的办法是固定PANID,每个网络的设备的PANID设置成相同,协调器只接收属于该网络的设备。OTA功能正在实验中。
-
"在协调器端输入节点的物理地址,我们的节点传感器全部用杰士邦包死的,不留任何接口"
楼主是做什么设备的,协调器上设置白名单,是可以区分哪个节点可以加入,可是这样做岂不是操作很麻烦。
节点传感器封死了,以后程序升级怎么办?考虑过OTA吗?
-
不知道楼主的Spidermesh 网络内的路由节点能不能支持休眠工作?
-
谢谢分享!
-
谢谢分享!
-
谢谢分享!
-
谢谢分享!