This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2530: 终端失去父节点和抓包错误问题

Part Number: CC2530
Other Parts Discussed in Thread: Z-STACK

1、终端与协调器组网,之后失去父节点,触发ZDO_STATE_CHANGE事件,在此事件中软件判断终端状态是DEV_NWK_ORPHAN时只执行一次ZDOInitDevice(0);,若长时间终端未重新连网,之后终端无法再次连网。这个跟只执行一次ZDOInitDevice有关系吗。

2、抓包的时候出现“the sniffer encountered a communication syncronization error”错误,请问下是什么原因 。

  • 使用的协议栈版本是多少,程序修改了哪些,网络中一共几个设备

    抓包参考这里的步骤操作:https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/699648/faq-zigbee-packet-sniffing-solutions?tisearch=e2e-sitesearch&keymatch=faq%3Atrue

  • 你好,我用的是Z-Stack Mesh 1.0.0版本。网络中一共1个协调器、20个终端。

    程序改动:

    有关于NWK_GLOBALS.h中设备的数量;

    hal_board_cfg.h中外设和I/O的一些配置;

    ZDO_JoinIndicationCB函数中加入了入网设备MAC地址的判断;

    以及应用层的一些改动,应用层改动如下

    case ZDO_STATE_CHANGE:
    GenericApp_NwkState = (devStates_t)(MSGpkt->hdr.status);
    if(GenericApp_NwkState == DEV_END_DEVICE)
    {
    // Start sending "the" message in a regular interval.
    osal_start_timerEx( GenericApp_TaskID,
    SAMPLEAPP_A10_REPORT2_A20,
    SAMPLEAPP_PlayAudioLoop_PERIOD);
    HalLedSet(HAL_LED_1,HAL_LED_MODE_OFF);
    HalLedSet(HAL_LED_2,HAL_LED_MODE_ON);
    first_start = 1;
    }
    else
    {
    if(GenericApp_NwkState == DEV_NWK_ORPHAN)
    {
    HalLedSet(HAL_LED_2,HAL_LED_MODE_ON);
    HalLedSet(HAL_LED_1,HAL_LED_MODE_ON);
    ZDOInitDevice(0x0);
    osal_stop_timerEx(GenericApp_TaskID,SAMPLEAPP_A10_REPORT2_A20);

    }
    }
    break;

  • f8wConfig.cfg我也修改了部分参数,如下图:

  • 1. 建議你去參考一下z-stack home 1.2.2a 裡頭REJOIN_BACKOFF/REJOIN_SCAN的作法來porting到z-stack mesh 1.0.0

  • 终端是自动断开的还是你主动断开的?最好上传下抓包文件便于分析

    Z-Stack Mesh 1.0.0是比较老的版本了,建议你升级到HA1.2.2或者最新的zstack3.0.2,重新加入机制比较完善

  • 自动断开的,现象出现不多所以不好抓包。我再观察下吧。

    我就是从zstack3.0.2切换过来的~之前使用zstack3.0.2终端不使能NV_RESTORE情况下一个协调器只能同时连接4-5个终端。您方便的话可以看下我另外一个帖子。

    这个帖子第二个抓包问题请问下大概是什么问题导致的。

  • 第二个抓包问题是packet sniffer出了問題,packet sniffer抓包上不是太穩定,建議你使用packet sniffer 2 搭配wireshark執行抓包

  • 好的,我换个版本。谢谢~