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.

终端根据信号强度选择入网

Other Parts Discussed in Thread: Z-STACK

在z-stack协议栈中,终端会根据信号强度选择入网,请问这一部分的代码在什么地方?

  • 这个信号强度的阈值是多少,就是说什么样的信号强度才能够加入网络。

  • 在zstack的mac_spec.h中有定义:

    #define MAC_SPEC_MIN_RECEIVER_SENSITIVITY   -85

  • 之前做过实验,终端会选择一个信号较好的协调器加入网络,这部分在 z-stack 中是怎么体现出来的?

  • 您可以在工程内查找函数   ZStatus_t NLME_NetworkDiscoveryRequest( uint32 ScanChannels,byte ScanDuration );

    ScanChannels    -执行发现的通道,2.4GHz条件下只能使用通道11-26(0x07FFF800)


    ScanDuration    -新网络启动前,每个通道被其他网络扫描的时间


        BEACON_ORDER_15_MSEC 0 15.36 milliseconds


        BEACON_ORDER_30_MSEC 1 30.72 milliseconds


        BEACON_ORDER_60_MSEC 2 61.44 milliseconds


        BEACON_ORDER_120_MSEC 3 122.88 milliseconds


        BEACON_ORDER_240_MSEC 4 245.76 milliseconds


        BEACON_ORDER_480_MSEC 5 491.52 milliseconds


        BEACON_ORDER_1_SECOND 6 983.04 milliseconds


        BEACON_ORDER_2_SECONDS 7 1966.08 milliseconds


        BEACON_ORDER_4_SECONDS 8 3932.16 milliseconds


        BEACON_ORDER_7_5_SECONDS 9 7864.32 milliseconds


        BEACON_ORDER_15_SECONDS 10 15728.64 milliseconds


        BEACON_ORDER_31_SECONDS 11 31457.28 milliseconds


        BEACON_ORDER_1_MINUTE 12 62914.58 milliseconds


        BEACON_ORDER_2_MINUTES 13 125829.12 milliseconds


        BEACON_ORDER_4_MINUTES 14 251658.24 milliseconds


        BEACON_ORDER_NO_BEACONS 15 No Beacons transmitted


    返回值:ZStatus_t    -ZComDef.h中定义的状态值



  • 在搜网的时候,对于父设备的选择主要在函数ZDO_beaconNotifyIndCB里面。

    里面对不同父设备信号强度的判断。

  • 多谢vivi大神