From 46fb6669bc2ad9723739e93a7d76dcef283a97a5 Mon Sep 17 00:00:00 2001 From: rarseverino Date: Fri, 18 Sep 2009 15:58:21 +0000 Subject: [PATCH] *** empty log message *** --- tos/lib/net/zigbee/apps/Test_APL/Makefile | 4 +- tos/lib/net/zigbee/apps/Test_APL/Test_APL.nc | 74 --------- tos/lib/net/zigbee/apps/Test_APL/Test_APLC.nc | 74 +++++++++ .../Test_APL/{Test_APLM.nc => Test_APLP.nc} | 3 +- tos/lib/net/zigbee/ieee802154/nwk/Makefile | 2 +- tos/lib/net/zigbee/ieee802154/nwk/NWK.nc | 141 ------------------ tos/lib/net/zigbee/ieee802154/nwk/NWKC.nc | 141 ++++++++++++++++++ .../ieee802154/nwk/{NWKM.nc => NWKP.nc} | 50 +++++-- tos/lib/net/zigbee/ieee802154/nwk/nwk_const.h | 8 +- 9 files changed, 260 insertions(+), 237 deletions(-) delete mode 100644 tos/lib/net/zigbee/apps/Test_APL/Test_APL.nc create mode 100644 tos/lib/net/zigbee/apps/Test_APL/Test_APLC.nc rename tos/lib/net/zigbee/apps/Test_APL/{Test_APLM.nc => Test_APLP.nc} (99%) delete mode 100644 tos/lib/net/zigbee/ieee802154/nwk/NWK.nc create mode 100644 tos/lib/net/zigbee/ieee802154/nwk/NWKC.nc rename tos/lib/net/zigbee/ieee802154/nwk/{NWKM.nc => NWKP.nc} (98%) diff --git a/tos/lib/net/zigbee/apps/Test_APL/Makefile b/tos/lib/net/zigbee/apps/Test_APL/Makefile index 086b607e..31172b4b 100644 --- a/tos/lib/net/zigbee/apps/Test_APL/Makefile +++ b/tos/lib/net/zigbee/apps/Test_APL/Makefile @@ -1,4 +1,4 @@ -COMPONENT=Test_APL +COMPONENT=Test_APLC TKN154_PLATFORM_INCLUDE=$(TOSROOT)/tos/platforms/telosb/mac/tkn154/Makefile.include @@ -33,6 +33,8 @@ PFLAGS += -I$(TOSROOT)/tos/lib/mac/tkn154 \ include $(TKN154_PLATFORM_INCLUDE) + + endif include $(MAKERULES) diff --git a/tos/lib/net/zigbee/apps/Test_APL/Test_APL.nc b/tos/lib/net/zigbee/apps/Test_APL/Test_APL.nc deleted file mode 100644 index 0e2f0931..00000000 --- a/tos/lib/net/zigbee/apps/Test_APL/Test_APL.nc +++ /dev/null @@ -1,74 +0,0 @@ -/* - * @author IPP HURRAY http://www.hurray.isep.ipp.pt/art-wise - * @author Andre Cunha - * - */ -#include - -#ifndef TKN154_MAC - -#include "phy_const.h" -#include "phy_enumerations.h" -#include "mac_const.h" -#include "mac_enumerations.h" -#include "mac_func.h" - -#endif - -#include "nwk_const.h" -#include "nwk_enumerations.h" -#include "nwk_func.h" -#include "UserButton.h" - - - -configuration Test_APL { -} -implementation { - - components MainC; - components LedsC; - components Test_APLM; - - Test_APLM.Boot -> MainC; - - components NWK; - - Test_APLM.Leds -> LedsC; - - - components new TimerMilliC() as T_init; - Test_APLM.T_init -> T_init; - - components new TimerMilliC() as T_test; - Test_APLM.T_test -> T_test; - - components new TimerMilliC() as T_schedule; - Test_APLM.T_schedule -> T_schedule; - - - //User Button - components UserButtonC; - - Test_APLM.Get -> UserButtonC; - Test_APLM.Notify -> UserButtonC; - - - Test_APLM.NLDE_DATA ->NWK.NLDE_DATA; - - Test_APLM.NLME_NETWORK_DISCOVERY -> NWK.NLME_NETWORK_DISCOVERY; - Test_APLM.NLME_NETWORK_FORMATION -> NWK.NLME_NETWORK_FORMATION; - /*Test_APLM.NLME_PERMIT_JOINING-> NWK_control.NLME_PERMIT_JOINING; - */ - Test_APLM.NLME_START_ROUTER -> NWK.NLME_START_ROUTER; - Test_APLM.NLME_JOIN -> NWK.NLME_JOIN; - /*Test_APLM.NLME_DIRECT_JOIN -> NWK_control.NLME_DIRECT_JOIN; - */ - Test_APLM.NLME_LEAVE -> NWK.NLME_LEAVE; - /*Test_APLM.NLME_RESET -> NWK_control.NLME_RESET; - */ - Test_APLM.NLME_SYNC -> NWK.NLME_SYNC; - Test_APLM.NLME_GET -> NWK.NLME_GET; - Test_APLM.NLME_SET -> NWK.NLME_SET; -} - diff --git a/tos/lib/net/zigbee/apps/Test_APL/Test_APLC.nc b/tos/lib/net/zigbee/apps/Test_APL/Test_APLC.nc new file mode 100644 index 00000000..cf230138 --- /dev/null +++ b/tos/lib/net/zigbee/apps/Test_APL/Test_APLC.nc @@ -0,0 +1,74 @@ +/* + * @author IPP HURRAY http://www.hurray.isep.ipp.pt/art-wise + * @author Andre Cunha + * + */ +#include + +#ifndef TKN154_MAC + +#include "phy_const.h" +#include "phy_enumerations.h" +#include "mac_const.h" +#include "mac_enumerations.h" +#include "mac_func.h" + +#endif + +#include "nwk_const.h" +#include "nwk_enumerations.h" +#include "nwk_func.h" +#include "UserButton.h" + + + +configuration Test_APLC { +} +implementation { + + components MainC; + components LedsC; + components Test_APLP; + + Test_APLP.Boot -> MainC; + + components NWKC; + + Test_APLP.Leds -> LedsC; + + + components new TimerMilliC() as T_init; + Test_APLP.T_init -> T_init; + + components new TimerMilliC() as T_test; + Test_APLP.T_test -> T_test; + + components new TimerMilliC() as T_schedule; + Test_APLP.T_schedule -> T_schedule; + + + //User Button + components UserButtonC; + + Test_APLP.Get -> UserButtonC; + Test_APLP.Notify -> UserButtonC; + + + Test_APLP.NLDE_DATA ->NWKC.NLDE_DATA; + + Test_APLP.NLME_NETWORK_DISCOVERY -> NWKC.NLME_NETWORK_DISCOVERY; + Test_APLP.NLME_NETWORK_FORMATION -> NWKC.NLME_NETWORK_FORMATION; + /*Test_APLP.NLME_PERMIT_JOINING-> NWKC.NLME_PERMIT_JOINING; + */ + Test_APLP.NLME_START_ROUTER -> NWKC.NLME_START_ROUTER; + Test_APLP.NLME_JOIN -> NWKC.NLME_JOIN; + /*Test_APLP.NLME_DIRECT_JOIN -> NWKC.NLME_DIRECT_JOIN; + */ + Test_APLP.NLME_LEAVE -> NWKC.NLME_LEAVE; + Test_APLP.NLME_RESET -> NWKC.NLME_RESET; + + Test_APLP.NLME_SYNC -> NWKC.NLME_SYNC; + Test_APLP.NLME_GET -> NWKC.NLME_GET; + Test_APLP.NLME_SET -> NWKC.NLME_SET; +} + diff --git a/tos/lib/net/zigbee/apps/Test_APL/Test_APLM.nc b/tos/lib/net/zigbee/apps/Test_APL/Test_APLP.nc similarity index 99% rename from tos/lib/net/zigbee/apps/Test_APL/Test_APLM.nc rename to tos/lib/net/zigbee/apps/Test_APL/Test_APLP.nc index c01bcaa6..801f7a35 100644 --- a/tos/lib/net/zigbee/apps/Test_APL/Test_APLM.nc +++ b/tos/lib/net/zigbee/apps/Test_APL/Test_APLP.nc @@ -8,7 +8,7 @@ #include #include "printfUART.h" -module Test_APLM { +module Test_APLP { uses interface Boot; uses interface Leds; @@ -734,6 +734,7 @@ event error_t NLME_NETWORK_DISCOVERY.confirm(uint8_t NetworkCount,networkdescrip else { //printfUART("go join non router\n", ""); + call NLME_SYNC.request(1); call NLME_JOIN.request(networkdescriptorlist[0].PANId, 0x00, 0, 0x000000ff, 8, 0, 0, 0); } return SUCCESS; diff --git a/tos/lib/net/zigbee/ieee802154/nwk/Makefile b/tos/lib/net/zigbee/ieee802154/nwk/Makefile index 55edac20..d06d4ae4 100644 --- a/tos/lib/net/zigbee/ieee802154/nwk/Makefile +++ b/tos/lib/net/zigbee/ieee802154/nwk/Makefile @@ -1,4 +1,4 @@ -COMPONENT=NWK +COMPONENT=NWKC PFLAGS += -I$(TOSROOT)/tos/ieee802154/includes \ -I$(TOSROOT)/tos/ieee802154/mac \ diff --git a/tos/lib/net/zigbee/ieee802154/nwk/NWK.nc b/tos/lib/net/zigbee/ieee802154/nwk/NWK.nc deleted file mode 100644 index a2353257..00000000 --- a/tos/lib/net/zigbee/ieee802154/nwk/NWK.nc +++ /dev/null @@ -1,141 +0,0 @@ -/* - * @author IPP HURRAY http://www.hurray.isep.ipp.pt/art-wise - * @author Andre Cunha - * - */ -#include - -#ifndef TKN154_MAC -#endif -#include "phy_const.h" -#include "phy_enumerations.h" -#include "mac_const.h" - - - -#include "mac_enumerations.h" -#include "mac_func.h" -#include "nwk_func.h" -#include "nwk_enumerations.h" -#include "nwk_const.h" - - -configuration NWK { - - //provides - - //NLDE NWK data service - - provides interface NLDE_DATA; - - - //NLME NWK Management service - - provides interface NLME_NETWORK_FORMATION; - provides interface NLME_NETWORK_DISCOVERY; - provides interface NLME_START_ROUTER; - provides interface NLME_JOIN; - provides interface NLME_LEAVE; - - /* - provides interface NLME_PERMIT_JOINING; - provides interface NLME_DIRECT_JOIN; - provides interface NLME_RESET; - */ - provides interface NLME_SYNC; - - provides interface NLME_GET; - provides interface NLME_SET; - -} -implementation { - - components MainC; - MainC.SoftwareInit -> NWKM; - - components LedsC; - components NWKM; - - - - - NWKM.Leds -> LedsC; - - - components RandomC; - NWKM.Random -> RandomC; - - - - //MAC interfaces -#ifndef TKN154_MAC - - components Mac; - - NWKM.MLME_START -> Mac.MLME_START; - - NWKM.MLME_GET ->Mac.MLME_GET; - NWKM.MLME_SET ->Mac.MLME_SET; - - NWKM.MLME_BEACON_NOTIFY ->Mac.MLME_BEACON_NOTIFY; - NWKM.MLME_GTS -> Mac.MLME_GTS; - - NWKM.MLME_ASSOCIATE->Mac.MLME_ASSOCIATE; - NWKM.MLME_DISASSOCIATE->Mac.MLME_DISASSOCIATE; - - NWKM.MLME_ORPHAN->Mac.MLME_ORPHAN; - NWKM.MLME_SYNC->Mac.MLME_SYNC; - NWKM.MLME_SYNC_LOSS->Mac.MLME_SYNC_LOSS; - NWKM.MLME_RESET->Mac.MLME_RESET; - NWKM.MLME_SCAN->Mac.MLME_SCAN; - - NWKM.MCPS_DATA->Mac.MCPS_DATA; -#else - - - components WrapperC; - NWKM.MLME_RESET->WrapperC.OPENZB_MLME_RESET; - NWKM.MLME_START -> WrapperC.OPENZB_MLME_START; - - NWKM.MLME_GET ->WrapperC.OPENZB_MLME_GET; - NWKM.MLME_SET ->WrapperC.OPENZB_MLME_SET; - - NWKM.MLME_BEACON_NOTIFY ->WrapperC.OPENZB_MLME_BEACON_NOTIFY; - NWKM.MLME_GTS -> WrapperC.OPENZB_MLME_GTS; - - NWKM.MLME_ASSOCIATE->WrapperC.OPENZB_MLME_ASSOCIATE; - NWKM.MLME_DISASSOCIATE->WrapperC.OPENZB_MLME_DISASSOCIATE; - - NWKM.MLME_ORPHAN->WrapperC.OPENZB_MLME_ORPHAN; - NWKM.MLME_SYNC->WrapperC.OPENZB_MLME_SYNC; - NWKM.MLME_SYNC_LOSS->WrapperC.OPENZB_MLME_SYNC_LOSS; - NWKM.MLME_SCAN->WrapperC.OPENZB_MLME_SCAN; - - NWKM.MCPS_DATA->WrapperC.OPENZB_MCPS_DATA; -#endif - -/////////////// - - //NLDE NWK data service - NLDE_DATA=NWKM; - - //NLME NWK Management service - NLME_NETWORK_FORMATION=NWKM; - NLME_NETWORK_DISCOVERY=NWKM; - - NLME_START_ROUTER=NWKM; - - NLME_JOIN=NWKM; - NLME_LEAVE=NWKM; - - /* - NLME_PERMIT_JOINING=NWKM; - NLME_DIRECT_JOIN=NWKM; - NLME_RESET=NWKM; - */ - NLME_SYNC=NWKM; - NLME_GET=NWKM; - NLME_SET=NWKM; - - -} diff --git a/tos/lib/net/zigbee/ieee802154/nwk/NWKC.nc b/tos/lib/net/zigbee/ieee802154/nwk/NWKC.nc new file mode 100644 index 00000000..a3b313c3 --- /dev/null +++ b/tos/lib/net/zigbee/ieee802154/nwk/NWKC.nc @@ -0,0 +1,141 @@ +/* + * @author IPP HURRAY http://www.hurray.isep.ipp.pt/art-wise + * @author Andre Cunha + * + */ +#include + +#ifndef TKN154_MAC +#endif +#include "phy_const.h" +#include "phy_enumerations.h" +#include "mac_const.h" + + + +#include "mac_enumerations.h" +#include "mac_func.h" +#include "nwk_func.h" +#include "nwk_enumerations.h" +#include "nwk_const.h" + + +configuration NWKC { + + //provides + + //NLDE NWK data service + + provides interface NLDE_DATA; + + + //NLME NWK Management service + + provides interface NLME_NETWORK_FORMATION; + provides interface NLME_NETWORK_DISCOVERY; + provides interface NLME_START_ROUTER; + provides interface NLME_JOIN; + provides interface NLME_LEAVE; + + /* + provides interface NLME_PERMIT_JOINING; + provides interface NLME_DIRECT_JOIN; */ + provides interface NLME_RESET; + + provides interface NLME_SYNC; + + provides interface NLME_GET; + provides interface NLME_SET; + +} +implementation { + + components MainC; + MainC.SoftwareInit -> NWKP; + + components LedsC; + components NWKP; + + + + + NWKP.Leds -> LedsC; + + + components RandomC; + NWKP.Random -> RandomC; + + + + //MAC interfaces +#ifndef TKN154_MAC + + components Mac; + + NWKP.MLME_START -> Mac.MLME_START; + + NWKP.MLME_GET ->Mac.MLME_GET; + NWKP.MLME_SET ->Mac.MLME_SET; + + NWKP.MLME_BEACON_NOTIFY ->Mac.MLME_BEACON_NOTIFY; + NWKP.MLME_GTS -> Mac.MLME_GTS; + + NWKP.MLME_ASSOCIATE->Mac.MLME_ASSOCIATE; + NWKP.MLME_DISASSOCIATE->Mac.MLME_DISASSOCIATE; + + NWKP.MLME_ORPHAN->Mac.MLME_ORPHAN; + NWKP.MLME_SYNC->Mac.MLME_SYNC; + NWKP.MLME_SYNC_LOSS->Mac.MLME_SYNC_LOSS; + NWKP.MLME_RESET->Mac.MLME_RESET; + NWKP.MLME_SCAN->Mac.MLME_SCAN; + + NWKP.MCPS_DATA->Mac.MCPS_DATA; +#else + + + components WrapperC; + NWKP.MLME_RESET->WrapperC.OPENZB_MLME_RESET; + NWKP.MLME_START -> WrapperC.OPENZB_MLME_START; + + NWKP.MLME_GET ->WrapperC.OPENZB_MLME_GET; + NWKP.MLME_SET ->WrapperC.OPENZB_MLME_SET; + + NWKP.MLME_BEACON_NOTIFY ->WrapperC.OPENZB_MLME_BEACON_NOTIFY; + NWKP.MLME_GTS -> WrapperC.OPENZB_MLME_GTS; + + NWKP.MLME_ASSOCIATE->WrapperC.OPENZB_MLME_ASSOCIATE; + NWKP.MLME_DISASSOCIATE->WrapperC.OPENZB_MLME_DISASSOCIATE; + + NWKP.MLME_ORPHAN->WrapperC.OPENZB_MLME_ORPHAN; + NWKP.MLME_SYNC->WrapperC.OPENZB_MLME_SYNC; + NWKP.MLME_SYNC_LOSS->WrapperC.OPENZB_MLME_SYNC_LOSS; + NWKP.MLME_SCAN->WrapperC.OPENZB_MLME_SCAN; + + NWKP.MCPS_DATA->WrapperC.OPENZB_MCPS_DATA; +#endif + +/////////////// + + //NLDE NWK data service + NLDE_DATA=NWKP; + + //NLME NWK Management service + NLME_NETWORK_FORMATION=NWKP; + NLME_NETWORK_DISCOVERY=NWKP; + + NLME_START_ROUTER=NWKP; + + NLME_JOIN=NWKP; + NLME_LEAVE=NWKP; + + /* + NLME_PERMIT_JOINING=NWKP; + NLME_DIRECT_JOIN=NWKP;*/ + NLME_RESET=NWKP; + + NLME_SYNC=NWKP; + NLME_GET=NWKP; + NLME_SET=NWKP; + + +} diff --git a/tos/lib/net/zigbee/ieee802154/nwk/NWKM.nc b/tos/lib/net/zigbee/ieee802154/nwk/NWKP.nc similarity index 98% rename from tos/lib/net/zigbee/ieee802154/nwk/NWKM.nc rename to tos/lib/net/zigbee/ieee802154/nwk/NWKP.nc index 2a9c49b0..e1032cc0 100644 --- a/tos/lib/net/zigbee/ieee802154/nwk/NWKM.nc +++ b/tos/lib/net/zigbee/ieee802154/nwk/NWKP.nc @@ -9,7 +9,7 @@ -module NWKM { +module NWKP { uses interface Leds; @@ -84,9 +84,9 @@ module NWKM { /* provides interface NLME_PERMIT_JOINING; - provides interface NLME_DIRECT_JOIN; + provides interface NLME_DIRECT_JOIN;*/ provides interface NLME_RESET; -*/ + provides interface NLME_GET; provides interface NLME_SET; @@ -332,9 +332,9 @@ event error_t MLME_ORPHAN.indication(uint32_t OrphanAddress[1], uint8_t Security event error_t MLME_RESET.confirm(uint8_t status) { + signal NLME_RESET.confirm(status); - - return SUCCESS; + return SUCCESS; } /*****************************************************************************************************/ /**************************************MLME-SYNC-LOSS*************************************************/ @@ -803,6 +803,15 @@ command error_t NLDE_DATA.request(uint16_t DstAddr, uint16_t NsduLength, uint8_t /*******************NLME IMPLEMENTATION***********************/ /*************************************************************/ + +/************************************************************* +******************* NLME-RESET******************************** +**************************************************************/ + command error_t NLME_RESET.request(){ + + call MLME_RESET.request(TRUE); +return SUCCESS; +} /*************************************************************/ /*******************NLME - START - ROUTER*********************/ /*************************************************************/ @@ -877,6 +886,10 @@ command error_t NLME_NETWORK_FORMATION.request(uint32_t ScanChannels, uint8_t Sc uint8_t v_temp[6]; +call Leds.led0On(); +call Leds.led1On(); +call Leds.led2On(); + v_temp[0] = 0x06; device_type = COORDINATOR; @@ -986,17 +999,17 @@ command error_t NLME_NETWORK_DISCOVERY.request(uint32_t ScanChannels, uint8_t Sc //Channel Scan is not working properly //manually assign the network descriptor - /* + networkdescriptor networkdescriptorlist[1]; -*/ + printfUART("2 lauch passive scan\n", ""); //The networkdescriptorlist must contain information about every network that was heard //make NetworkDescriptorList out of the PanDescriptorList - +#ifndef TKN154_MAC call MLME_SCAN.request(PASSIVE_SCAN,0xFFFFFFFF,7); +#else -/* networkdescriptorlist[0].PANId=0x1234; networkdescriptorlist[0].LogicalChannel=LOGICAL_CHANNEL; @@ -1015,11 +1028,10 @@ command error_t NLME_NETWORK_DISCOVERY.request(uint32_t ScanChannels, uint8_t Sc add_neighbortableentry(networkdescriptorlist[0].PANId,D3_PAN_EXT0,D3_PAN_EXT1,D3_PAN_SHORT,COORDINATOR,NEIGHBOR_IS_PARENT); if (DEVICE_DEPTH == 0x04) add_neighbortableentry(networkdescriptorlist[0].PANId,D4_PAN_EXT0,D4_PAN_EXT1,D4_PAN_SHORT,COORDINATOR,NEIGHBOR_IS_PARENT); - - - +#endif + signal NLME_NETWORK_DISCOVERY.confirm(1,networkdescriptorlist, NWK_SUCCESS); -*/ + return SUCCESS; } @@ -1060,8 +1072,8 @@ command error_t NLME_JOIN.request(uint16_t PANId, bool JoinAsRouter, bool Rejoin destinaddress[1] = neighbortable[parent_index].Network_Address; +#ifdef TKN154_MAC - /* if (DEVICE_DEPTH == 0x01) destinaddress[1]=D1_PAN_SHORT; if (DEVICE_DEPTH == 0x02) @@ -1070,8 +1082,8 @@ command error_t NLME_JOIN.request(uint16_t PANId, bool JoinAsRouter, bool Rejoin destinaddress[1]=D3_PAN_SHORT; if (DEVICE_DEPTH == 0x04) destinaddress[1]=D4_PAN_SHORT; - */ +#endif printfUART("10 associate to %i\n", destinaddress[1]); //set_capability_information(uint8_t alternate_PAN_coordinator, uint8_t device_type, uint8_t power_source, uint8_t receiver_on_when_idle, uint8_t security, uint8_t allocate_address) @@ -1103,8 +1115,11 @@ command error_t NLME_JOIN.request(uint16_t PANId, bool JoinAsRouter, bool Rejoin received_beacon_count=0; go_associate=1; +#ifdef TKN154_MAC + //call MLME_ASSOCIATE.request(LOGICAL_CHANNEL,SHORT_ADDRESS,PANId,destinaddress, set_capability_information(JoinAsRouter,0x00,PowerSource,RxOnWhenIdle,MACSecurity,0x01),0); +#endif } } @@ -1161,7 +1176,11 @@ command error_t NLME_LEAVE.request(uint32_t DeviceAddress[],bool RemoveChildren, //page 186-187 command error_t NLME_SYNC.request(bool Track) { +//call MLME_SET.request(0x00,0x15); + // call MLME_SET.request(MACCOORDSHORTADDRESS, 0x0000); + // call MLME_SET.request(0x50,0x1234); + call MLME_SYNC.request(LOGICAL_CHANNEL,1); return SUCCESS; } @@ -1337,6 +1356,7 @@ command error_t NLME_GET.request(uint8_t NIBAttribute) return SUCCESS; } + /*************************************************************/ /**************neighbor table management functions************/ /*************************************************************/ diff --git a/tos/lib/net/zigbee/ieee802154/nwk/nwk_const.h b/tos/lib/net/zigbee/ieee802154/nwk/nwk_const.h index 76b9a6a8..b5df8728 100644 --- a/tos/lib/net/zigbee/ieee802154/nwk/nwk_const.h +++ b/tos/lib/net/zigbee/ieee802154/nwk/nwk_const.h @@ -12,15 +12,15 @@ //SELECTED DEVICE TYPE -//#define TYPE_DEVICE END_DEVICE +#define TYPE_DEVICE END_DEVICE //#define TYPE_DEVICE ROUTER -#define TYPE_DEVICE COORDINATOR +//#define TYPE_DEVICE COORDINATOR //test definitions -#define DEVICE_DEPTH 0x00 +#define DEVICE_DEPTH 0x01 //used to operate in a fixed channel -#define LOGICAL_CHANNEL 0x15 +#define LOGICAL_CHANNEL 0x1A //PAN VARIABLES //conflict error -- 2.39.2