微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > Remote遥控器怎样实现一次toucklink后组进多个设备?

Remote遥控器怎样实现一次toucklink后组进多个设备?

时间:10-02 整理:3721RD 点击:

在这段代码里,touchlink后每次选择的是最好的rssi,也就老是最近距离的

uint8 selectThisTarget = FALSE;
int8 rssi = zll_GetMsgRssi();
if ( pfnSelectDiscDevCB != NULL )
{
selectThisTarget = pfnSelectDiscDevCB( pRsp, rssi );
}
// Default selection - according to RSSI
else if ( rssi > ZLL_TL_WORST_RSSI )//-40 dbm
{
if ( ( rssi + pRsp->rssiCorrection ) > selectedTarget.lastRssi )
{
// Better RSSI, select this target
selectThisTarget = TRUE;
}
}

现在我们想要把Remode做成一个面板开关产品,固定位置,一次toucklink后可将多个灯组进去并且距离比较远。是否可以实现?需要在哪块代码里修改?

一次就把所有设备TL进来是不可能的,你可以通过按键触发一次TL以后,然后自动的再触发几次TL,并且把RSSI阈值调低点,这样可以把更多的灯TL进来

谢谢你的回答,我按照这个方法实现了:

0. 按键激发TL:

1. 逐个扫描主要channels

2. 有Scan Response,暂停扫描,判断RSSI(阀值最低-120dbm)和灯是否是FactoryNew(灯自己不是FactoryNew不会向遥控器Response)

3. 满足条件入网 / 不满足不选择。

4. 之后激活扫描时间,从之前暂停的频道继续扫描

5. 若有Scan Response,暂停扫描,无则继续扫描。每次继续扫描之前更换TransID。

6. 所有主要channels和次要channels都扫描完毕

7. 退出扫描事件,完成TL工作。

现在问题就是速度有点慢,灯设备越多,TL组网一次越慢,唉.....

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top