Part Number:CC2538Other Parts Discussed in Thread: CC2592, Z-STACK, CC2530
CC2538+CC2592的板子,进入PM3模式后,通过按键唤醒,发送数据,协调器收不到数据。
同样的程序,不用POWER_SAVING,一切正常。通过调试跟踪,确认数据确实已经发出。我用的是Z-Stack 3.0.2,
编译选项:
BDB_REPORTING
ewarm
CC2538_USE_ALTERNATE_INTERRUPT_MAP=1
FEATURE_RESET_MACRO
SECURE=1
TC_LINKKEY_JOIN
NV_INIT
NV_RESTORE
POWER_SAVING
NWK_AUTO_POLL
xZTOOL_P1
xMT_TASK
xMT_APP_FUNC
xMT_SYS_FUNC
xMT_ZDO_FUNC
xMT_APP_CNF_FUNC
xLCD_SUPPORTED=DEBUG
MULTICAST_ENABLED=FALSE
ZCL_READ
ZCL_DISCOVER
ZCL_WRITE
ZCL_BASIC
ZCL_IDENTIFY
ZCL_ON_OFF
ZCL_GROUPS
配置:
-DRFD_RCVC_ALWAYS_ON=FALSE
-DPOLL_RATE=0
-DQUEUED_POLL_RATE=0
-DRESPONSE_POLL_RATE=0
请问有没有朋友使用CC2538+CC2592方案的节电模式的,麻烦告诉我一下应该怎么配置以及需要修改哪些地方的代码?非常感谢。
bin xue:
终端使用节电模式,协调器需要做什么修改吗?
,
Cherry Zhou:
您好我们已收到您的问题并升级到英文论坛寻求帮助,如有答复将尽快回复您。谢谢!
,
YiKai Chen:
建議抓包看看狀況,需要你的抓包檔來查看問題在那
,
bin xue:
谢谢你的建议,我跟踪了一下,应该是终端没有发出去,程序执行了AF_DataRequest,但没有执行到macTxFrame这个函数。不知道为什么。DPOLL_RATE设置在1000~5000工作正常,大于5000,比如10000就不行了。估计还是和Data Request Polling有关。如果设置为0,进入到PM3模式也是一样的现象,程序执行不到macTxFrame这个函数。
,
YiKai Chen:
我們產品polling rate設置為60秒也不會有問題、估計你改到協議栳其他地方導致的
,
bin xue:
你们也是用了CC2592的吗?
,
YiKai Chen:
我們產品是用CC2530+CC2592
,
bin xue:
确实如你所说,我是在应用层的代码中修改的polling rate。配置文件里修改就可以到60秒都OK。要用PM3,这个值得设置为0,唤醒后,数据还是发不出去。
,
YiKai Chen:
要用PM3,試試唤醒后加個延時再发数据看看出不出的去
,
bin xue:
试过了。还是不行。
,
YiKai Chen:
你延時多久?另外要不要在发数据前也先檢查devState是不是在DEV_END_DEVICE的狀態了再发数据
,
bin xue:
我用了变通的笨办法,即唤醒后,先NLME_SetPollRate( 100 );延时300后,再发送数据,然后再NLME_SetPollRate( 0 );进入PM3。这样能发送出去了。不过还需要多测试看看稳定性如何。遇到同样问题的朋友可以试试看。
,
Cherry Zhou:
好的,您先多测试下看看,后续如果有问题您也可以继续提出来。