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.

Mesh1.0.0传输距离问题,实测比2.5.1a差一倍,求解。

TI的工作人员早上好,昨天我测试了一批Zigbee节点,发现两个不同版本的协议栈传输的距离相差一倍,下面是我的实验条件:

实验条件:

1、5个不带PA的终端节点+1个不带PA的协调器。

2、空旷可视的测试环境。

3、终端每隔500ms发送一次数据给协调器,协调器接收并打印。

实验结果:

1、使用Mesh1.0.0协议栈,传输距离点对点大概40米左右,终端节点就无法再rejoin到协调器了。

2、使用2.5.1a,传输距离点对点大概70米左右,终端节点就无法再rejoin到协调器了。

补充说明:

1)两次测试的硬件和测试环境均相同。

2)2.5.1a未修改任何协议栈底层部分。

3)Mesh1.0.0我只修改了mac_radio.c中如下红色字体部分,其余部分未做修改:

MAC_INTERNAL_API void macRadioUpdateTxPower(void)
{
halIntState_t s;
reqTxPower = 0xF5;
/*
* If the requested power setting is different from the actual radio setting,
* attempt to udpate to the new power setting.
*/
HAL_ENTER_CRITICAL_SECTION(s);
if (reqTxPower != macPhyTxPower)
{
/*
* Radio power cannot be updated when the radio is physically transmitting.
* If there is a possibility radio is transmitting, do not change the power
* setting. This function will be called again after the current transmit
* completes.
*/
if (!macRxOutgoingAckFlag && !MAC_TX_IS_PHYSICALLY_ACTIVE())
{
/*
* Set new power level; update the shadow value and write
* the new value to the radio hardware.
*/
macPhyTxPower = reqTxPower;
MAC_RADIO_SET_TX_POWER(macPhyTxPower);
}
}
HAL_EXIT_CRITICAL_SECTION(s);
}

问题:

1、造成这样大的差距的原因有可能是什么造成的?

2、如果暂时不能判断原因,我需要做哪些实验获取哪些数据来分析?

3、如何改进?

谢谢。