z stack修改PAN ID 組網位址)

2021-09-28 15:52:32 字數 1205 閱讀 5968

一、修改pan id

在之前的實驗中,我一直糾結於pan id的設定,有2種方法:

方法1.

pan_id=0x1122;//你想要的id

zb_writeconfiguration(zcd_nv_panid, sizeof(uint16),  &pan_id) ;

zb_systemreset();

方法2:

pan_id = 0x1122;     

_nib.nwkpanid = pan_id;

nlme_updatenv(0x01);

zb_systemreset();

if( keys & hal_key_sw_1 )

我自己的實驗結果顯示,方法2是可行的,於是,我對mt_util.c函式中的mt_utilsetpanid做了修改

(我用ztool中util修改pan id不成功,不知道為什麼,有人遇到過嗎?)

二、修改channel

這裡有個概念問題:

_nib.channellist表示可以掃瞄的通道;

_nib.nwklogicalchannel表示正在使用的邏輯通道,從11~26,即0x0b~0x1a

所以我們要修改的目標是_nib.nwklogicalchannel

**奉上:

記得改一下:-ddefault_chanlist=0x00003800   //使能0b 0c 0d通道

串列埠傳送資料:

_nib.nwklogicalchannel                                   幀結構

0x0b                                             fe 05 27 03 00 08 00 00 0b 22

0x0c                                             fe 05 27 03 00 10 00 00 0c 3d

if ( keys & hal_key_sw_2 )

else

}if ( keys & hal_key_sw_5 )}}

static afstatus_t updateallnetwork(uint16 panid, uint8 channelid)

節點接收部分:

}複製**

ZSTACK協調器掉電重新組網無法加入網路的解決

我用的是ti zigbee2007的協議棧,由於之前預設對協調器編譯nv init和nv restore兩個選項 而其他節點只有nv init這個選項所以 每次我用協調器重新上電,所有的節點都是重新入網而且協調器並不會擦出以前的節點,而協調器是有網路節點上限的,所以基本上重新加入幾次就滿了,然後就不...

ZSTACK協調器掉電重新組網無法加入網路的解決

我用的是ti zigbee2007的協議棧,由於之前預設對協調器編譯nv init和nv restore兩個選項 而其他節點只有nv init這個選項所以 每次我用協調器重新上電,所有的節點都是重新入網而且協調器並不會擦出以前的節點,而協調器是有網路節點上限的,所以基本上重新加入幾次就滿了,然後就不...

z stack 協議棧修改按

1.修改hal key.c檔案在hal target cc2530eb dribers hal key.c 修改 sw 6所在io口 define hal key sw 6 port p0 define hal key sw 6 bit bv 4 bv 1 改到p0.4 邊緣觸發模式 define ...