【參考的技術文件】
●translator
RFC3768 (VRRPv2)
RFC5798 (VRRPv3)

●ZigBee
 
安裝Z-Stack後,文件都在 C:\Texas Instruments\ZStack-CC2530-2.4.0-1.4.0\Documents\資料夾下,
主要參考:
「Create New Application For CC2530DB」
「HAL Driver API」
「Z-Stack Sample Applications」



【系統中有哪些模組,彼此的關聯為何】
見module.ppt



【使用的API】
●translator
使用到multicast、UART相關的API

●ZigBee
TI Z-Stack CC2530堆疊的API



【HOWTO install and compile】
●Server
grpAddrServer.c放上 server (CentOS 5.5),執行:
gcc GrpAddrServer grpAddrServer.c

●translator
grpAddr.c和grpAddr.h放上translator(兩台) (CentOS 5.5),執行:

gcc -D_REENTRANT -I/usr/include/nptl -o GrpAddr grpAddr.c -L/usr/lib/nptl -lpthread

●ZigBee
 
1. 在Windows XP上安裝 ZStack、IAR 及 SmartRF Flash Programmer
2. Multicast.zip解壓縮後,將Multicast整個資料夾複製到 C:\Texas Instruments\ZStack-CC2530-x.x.x-x.x.x(版本號)\Projects\zstack\Samples 底下
3. 打開\Multicast\CC2530DB底下的Multicast.eww後,會以IAR開啟檔案,介面左欄有Workspace的下拉選單,分別選CoordinatorEB、RouterEB、EndDeviceEB,各自做Project->Rebuild All,就會出現對應的.hex檔。
4. 以SmartRF Flash Programmer將這三種hex檔燒錄到ZigBee開發板(Router要燒到兩個有RS232介面的大開發板)。



【SOP in demo】
●server
./GrpAddrServer [string]
[string]: 要送到end-device的訊息。
執行後程式便等著接收end-device的訊息,接收過程中按enter也可以發送訊息到end-device。

●active translator
(./iptable.rule)
./GrpAddr -i eth0 -v 1 -p 255 -d 0.2 10.10.59.32 10 100 10
i: 使用的網路介面
v: VRID (參考RFC5798)
p: priority (參考RFC5798)
d: Heartbeat interval (sec)
10.10.59.32: server IP address
10: fail time
100 10: fail rate 10/100

●backup translator
(./iptable.rule)
./GrpAddr -i eth0 -v 1 -p 50 -d 0.2 10.10.59.32 10 100 10
(-v和-d的參數要和 active translator一樣)

●ZigBee
兩個Router分別用RS232接上兩台translator,
以上述指令執行server和translator的程式,
先打開ZigBee Coordinator的開關,再打開兩個Router和一個EndDevice,
EndDevice的joystick(可以上下左右的按鈕)往左按,就開始每秒發送一個封包給Router群組,Router透過RS232將封包收到translator上,active translator便會將封包內容轉發給server。
EndDevice再往左按一次就停止發送封包。 

 
1. 在Windows XP上安裝SmartRF Flash Programmer
2. 解壓縮Multicast.zip後,以SmartRF Flash Programmer將以下三種hex檔燒錄到ZigBee開發板。
Multicast\CC2530DB\CoordinatorEB\Exe\grpAddrC.hex 燒成Coordinator、
Multicast\CC2530DB\CoordinatorEB\Exe\grpAddrR.hex 燒成 Router、
Multicast\CC2530DB\CoordinatorEB\Exe\grpAddrE.hex 燒成 EndDevice
(Router要燒到兩個有RS232介面的大開發板)。

==>>如果要修改程式的話

1. 在Windows XP上安裝 ZStack、IAR 及 SmartRF Flash Programmer
2. Multicast.zip解壓縮後,將Multicast整個資料夾複製到 C:\Texas Instruments\ZStack-CC2530-x.x.x-x.x.x(版本號)\Projects\zstack\Samples 底下
 
3. 打開\Multicast\CC2530DB底下的Multicast.eww後,會以IAR開啟檔案,修改程式後,介面左欄有Workspace的下拉選單,分別選CoordinatorEB、RouterEB、EndDeviceEB,各自做Project->Rebuild All,就會出現對應的.hex檔。
4. 以SmartRF Flash Programmer將這三種hex檔燒錄到ZigBee開發板。 

參考文獻:麗雯學姐提供

TOP