6.5.3 Turning on/off the LEDs ......................................................................................................... 48
47
7 AT COMMAND REFERENCE ................................................................................. 49
7.1 Command Line Format ................................................................................................................. 49
7.2 Standard AT Commands ............................................................................................................... 49
7.2.1 A T ............................. .................................. .................................. ........................... .............. 49
13.2 CE ................................................................................................................................................. 85
ProBee-ZE20SSUSMD, pad U.FL 5dBi dipole 3dBi dipole1dBi stub
ProBee-ZE20SSCSMD, pad CHIP 0dBi Chip
2 Getting Started
Creating a ZigBee network using the ZE20S modules consists of the following steps:
• Install the ZE20S module on the development board
• Create a ZigBee network by configuring a ZE20S module as the coordinator
• Configure ZE20S modules as routers. This step is optional since the coordinator works as a
router too.
• Configure ZE20S modules as end devices
• Transmit data between ZE20S devices
This chapter describes how to install the ZE20S modules on to the development boards and how to use
terminal software programs to access the ZE20S modules using AT commands for configurations and
operations. The rest of the steps including ZigBee network creation, coordinator/router/end-device
configurations and data transmissions are described in the following chapters. The more detailed
information on the development kit and the configuration examples are also provided in the later chapter.
2.1 Hardware Installation
2.1.1 Development Board Layout
Figure 2-1 shows the layout of the development board. The development board provides the interface
between the ZE20S and the external serial port or USB port together with input/output terminals for
convenient tests.
TBD
Figure 2-1 Development Board Layout
11 ProBee-ZE20S Series User Guide Rev.0.1
2.1.2 Antenna Installation
The ZE20S starter kit includes the several antennas for evaluation purposes. You can try different
antennas for testing purpose and select the appropriate antenna for the actual applications. Figure 2-2
shows how to install the RP-SMA dipole antenna to the ZE20S module.
TBD
Figure 2-2 RP-SMA Dipole Antenna Installation
2.1.3 Module Installation on the Development Board
Once the antenna is installed on the ZE20S module, the ZE20S module can be installed on the
development board.
TBD
Figure 2-3 ZE20S Installation on the Development Board
12 ProBee-ZE20S Series User Guide Rev.0.1
2.1.4 Serial/USB Cable Installation
After the ZE20S is securely installed on the development board, please connect the included serial cable
between the development board and your computer so AT commands can be sent from the computer to
the ZE20S module. The serial port of the development board is DB9 male as a DTE terminal, and the
serial cable included is a cross-over cable for DTE-DTE connection. To use the serial port, the HOST
(SW2) switch should be set to UART.
TBD
Figure 2-4 Serial Cable Installation
In case the serial port is not available for the computer, you can use the USB port of the development
board instead. In this case, the internal USB-RS232 converter of the development board will convert the
USB signal to the RS232 signal and vice versa. To use the USB port, the HOST (SW2) switch should be
set to USB and the software driver for the USB in the CD should be installed on the computer. For the
USB driver installation, please refer to the section 2.1.6.
TBD
Figure 2-5 USB Cable Installation
13 ProBee-ZE20S Series User Guide Rev.0.1
2.1.5 Powering Development Board
Once all the installations are completed, please plug in the power connector using the included DC power
adapter. The RS_PWR, USB_PWR and BATT_EN jumpers should be all OPEN to use the DC power
adapter. Alternatively, the development board can be powered using batteries, or from the USB port or
through the RS232 port pin 9. In these cases, the power source jumpers should be set accordingly. For
details about the power source jumper settings, please refer to the section 6.3.1 Power.
TBD
Figure 2-6 Plugging DC Power Ad apt e r
2.1.6 USB Driver Installation
In case the USB interface is used for the communication between the development board and the
computer, the corresponding software driver needs to be installed on the computer. Windows XP and later
versions already include the USB driver. When Windows asks for the location of the USB driver, you can
select the option to “install the software automatically” as shown in Figure 2-7. You can also choose to
install the driver from the CD included if the driver is not installed correctly for some reason.
14ProBee-ZE20S Series User Guide Rev.0.1
Figure 2-7 USB Driver Installation
2.2 Using Terminal Software for AT Commands
Once the hardware installation is complete, the ZE20S unit is ready to communicate with the computer
using the AT commands using a terminal emulation software. You can use any kind of terminal emulation
software. This document assumes HyperTerminal is used. If you are using Windows Vista or 7,
HyperTerminal is no longer included in the Windows so you need to download HyperTerminal from the
Internet. For more details on HyperTerminal, please refer to Microsoft web page.
Once the HyperTerminal is installed, launch HyperTerminal and select the serial port that is connected to
the ZE20S development board and enter the serial settings to use. The default serial settings of the
ZE20S are 9600 bps, 8 data bit, none parity, 1 stop bit, hardware flow control.
15ProBee-ZE20S Series User Guide Rev.0.1
Figure 2-8 HyperTerminal Serial Settings
To display the AT commands that are being typed, you need to enable the local echo option on the
HyperTerminal. To enable this option, Go to File->Properties->Settings->ASCII setup and select the
“Echo typed characters locally” option. To verify the connection, type AT and press the Enter key. If the
AT command is accepted by the ZE20S, OK string will be displayed on the screen.
16ProBee-ZE20S Series User Guide Rev.0.1
Figure 2-9 Testing AT Command on HyperTerminal
2.3 Using ProBee Manager for Configur at ion
17ProBee-ZE20S Series User Guide Rev.0.1
Figure 2-10 ProBee Manager
It is possible to set or get the configurations of the ZE20S using ProBee Manager. This PC utility helps
that a user can configure several setting values easily without a terminal program and upload the
firmware file to local and/or remote node.
3 ZigBee Network Configuration
A ZigBee Network consists of a coordinator, routers and end devices. A minimal ZigBee network consists
of one coordinator and multiple end devices which directly connect to the coordinator. For larger ZigBee
networks, routers are required to provide redundant routings to form mesh networks.
•ZigBee Coordinator: The coordinator forms the root of the network tree and might bridge to
other networks. There is exactly one ZigBee coordinator in each network since the coordinator
starts the ZigBee network itself. It also stores information about the network, including acting as
the Trust Center & repository for security keys.
•ZigBee Router: The routers are able to route messages between other devices. Since the
coordinator provides the routing functionality too, the routers are optional to form a ZigBee
network.
•ZigBee End Device: The end device contains just enough functionality to talk to the parent node
which is either the coordinator or a router. It cannot relay data from other devices.
•ZigBee Sleepy End Device: The sleepy end device is the same with normal end device except it
can stay in the sleep mode much longer. This relationship allows the end device to sleep
significant amount of the time and achieve the long battery life.
The ZE20S can be configured to work either as a coordinator, a router or an end device. Once the
operation mode of the ZE20S is selected, corresponding parameters need to be set up appropriately. This
chapter explains how to configure the ZE20S operation mode and other parameters related to the ZigBee
network itself.
Table 3-1 ZigBee Node Types
Node Type Recommendation when to use ZE20S
Coordinator It should be selected when it is first time to establish the network.
Router It is recommended when there is a network already and it needs to be expanded. A
router is suitable for fast and stable data transmissions and receptions.
End Device It is recommended when it doesn’t need to expand the network anymore and there
are enough nodes as parents. An end-device consumes less power than a router.
Sleepy End Device It is recommended when the data transmissions occur rarely and in very small
quantities. A sleepy end device can lose data if sleep duration is too long, but it is
possible to consume extremely low power as low as 2uA.
3.1 Setting up ZE20S as a Coordinator
A coordinator relays messages and can act as a parent to other nodes. Every personal area network
(PAN) must be started by a node acting as the coordinator. This device is normally always powered on.
To set up the ZE20S to work as the coordinator, please follow the steps as below
18 ProBee-ZE20S Series User Guide Rev.0.1
• Configure the ZE20S node type as the coordinator
• Optionally, select the channel mask. Otherwise, the ZE20S will use the default channel mask.
• Optionally, set up the PAN ID and/or the extended PAN ID. Otherwise, the ZE20S will generate
the PAN ID and/or the extended PAN ID automatically.
•Permit joining when other router or end device tries to join the ZigBee network.
3.1.1 Node Type Selection for Coordinator
The ZE20S module can be configured as a ZigBee coordinator by the AT command as below:
AT+NODETYPE=n or AT+NT=n
Where n is 0 = none, 1 = coordinator, 2 = router, 3 = end-device, 4 = sleepy end-device
After the operation mode is selected, ATZ command should be performed to reset the unit to have the
change applied.
Example)
19 ProBee-ZE20S Series User Guide Rev.0.1
AT+NODETYPE=1<CR> # Set node type as the coordinator
OK<CR> # Response
ATZ<CR> # Apply the change
OK<CR> # Response
3.1.2 Channel Mask Configuration for Coordinator
When the ZigBee coordinator starts, it scans predefined frequency channels to find the best frequency
channel to use without causing interference with other wireless devices. The user is able to specify the
channels to use with the AT command as below:
AT+CHMASK=n
Where n = channel mask to use. Default = 0x03FFF000
This value has a 32-bit hexadecimal unsigned integer. Each bit represents whether a channel will be used
or not. For example, to use a channel between 12 and 15, the 12, 13, 14 and 15 bits of the channel mask
should be 1 and all other bits should be 0. The default setting is 0x3FFF000 which means that all the
channels from 12 to 25 can be used. The ZE20S supports only the channels between 12 and 25, so 0~11
bits and 26~31 bits should be 0. Table 3-2 shows the bit mask for each channel.
Table 3-2 Channel Bitmask
Channel 12 13 14 15 16 17 18
Bit mask 00001000 00002000 00004000 00008000 00010000 00020000 00040000
Channel 19 20 21 22 23 24 25
Bit mask 00080000 00100000 00200000 00400000 00800000 01000000 02000000
3.1.3 PAN ID Configuration for Coordinator
Every ZigBee network should be assigned a PAN ID to identify the network. If the PAN ID is 0000, the
ZE20S will generate a random 16-bit PAN ID to start the ZigBee network. Otherwise, the user can enter
the PAN ID using the AT command as below:
AT+PANID=xxxx
Where xxxx is PAN ID to use. For example, 12AB. Default setting is 0000
When choosing a PAN ID, the user needs to make sure that there is no ZigBee network using the same
PAN ID. If the PAN ID is already used by another ZigBee network, the PAN ID is unavailable and the user
should choose a new PAN ID. In order to avoid this, PAN ID auto-generation is strongly recommended.
The user can also assign the 64-bit extended PAN ID to the ZE20S using the AT command below. If the
extended PAN ID is 0000000000000000, the ZE20S uses its IEEE address as the extended PAN ID. The
extended PAN ID cannot be shared with other ZigBee networks either.
…
AT+EPID=xxx
Where xxx
3.1.4 Permit Joining
When a router or an end device tries to join the ZigBee network, there should be at least one coordinator
or router which is permitting joining. If there is no router in the ZigBee network yet, the coordinator should
permit joining. The ZE20S provides three ways to permit joining are as follows:
• Permanently permitting by configuration
• Transiently permitting by AT command
• Transiently permitting by digital input signal
If joining is permanently permitted, any device can join anytime. Since this will allow even an unidentified
device to join the network anytime, this mode should be selected with extra caution. The AT command to
permit joining permanently is as follows:
AT+PERMIT=255 or AT+PJ=255
xxx
…
xxx is EPID to use. For example, 0123456789ABCDEF. Default setting is 000…000.
20 ProBee-ZE20S Series User Guide Rev.0.1
The user can permit joining for a moment at need. The AT command to permit joining is
AT+PERMIT=n or AT+PJ=n
Where n is the duration to permit in seconds ranging 1~2 5 4 sec on ds .
The user can also configure the ZE20S to permit joining when the digital input GPIO0 is active. The AT
command to enable this functionality is as follows:
A T+GPIO0=5 or AT+IO0=5
When the ZE20S detects falling edge of the GPIO0, the ZE20S permits joining for the duration that is
configured in S-register 22 (S22). The AT command to change the duration is as follows:
ATS22=n
Where n is the duration to permit in seconds ranging 1~25 4 sec on ds . Defa ult is 60.
S22 value determines the time that the device will allow other devices to join to it. If set to 255, the device
will always permit other nodes joining. If the user reboots the coordinator (or a router), the device allows
other nodes to join the network for the period defined by S-register 22.
Note: When a device that has joined a networ k reboots, the device is able to join the network rega rdless
of permitting. But, after the device has joined other network, rejoining the previous network should be
permitted by the coordinator or a router.
3.2 Setting up ZE20S as a Router
A router is a full-function routing device that relays messages and can act as a parent to other nodes.
These devices must be always powered on.
To configure the ZE20S as a ZigBee router, please follow the steps below.
• Configure the ZE20S node type as a router.
• Optionally, select the channel mask. Otherwise, the ZE20S will use the default channel mask.
• Optionally, set up the PAN ID and/or the extended PAN ID. Otherwise, the ZE20S will scan and
join the ZigBee network found automatically.
•Permit joining when other router or end device tries to join the ZigBee network.
3.2.1 Node Type Selection for Router
The ZE20S module can be configured as a ZigBee router by the AT command as below:
AT+NODETYPE=n or AT+NT=n
Where n is 0 = none, 1 = coordinator, 2 = router, 3 = end-device, 4 = sleepy end-device
21 ProBee-ZE20S Series User Guide Rev.0.1
After the operation mode is selected, ATZ command should be performed to reset the unit to have the
When the ZE20S as a ZigBee router or a ZigBee end device tries to join, it scans all the channels
configured by channel mask to find the ZigBee network to join. The channel mask of router or end device
should include the channel on which the coordinator is operating. For example, we assume that the
coordinator of the network to join is operating on channel 12. The router or end device trying to join
th
should has a channel mask of which 12
bit is 1
3.2.3 PAN ID Configuration for Router
The PAN ID of a ZigBee router or a ZigBee end device should be the same with the PAN ID of the ZigBee
coordinator. If the coordinator is using a randomly generated PAN ID, the user can get the operating PAN
ID by running the AT command below on the coordinator:
AT+OPPANID
If the PAN ID of a ZigBee router or a ZigBee end device is 0000, the PAN ID is ignored. After checking the
PAN ID, the ZE20S trying to join compares the extended PAN ID to make sure whether the network is the
right network to join. If the extended PAN ID is the same with its configured extended PAN ID, it will try to
join the network. Otherwise, it will try to find another network. The user can get the operating extended
PAN ID by running the AT command below on the coordinator:
AT+OPEPID
If the extended PAN ID of a ZigBee router or a ZigBee end device is 0000000000000000, the extended
PAN ID is ignored
3.2.4 Permit Joining
The ZigBee router is configured and works the same way with the coordinator to permit joining of other
nodes. Please refer to the section 3.1.4 Permit Joining for the configuration.
22 ProBee-ZE20S Series User Guide Rev.0.1
3.3 Setting up ZE20S as an End Device
An end device is a leaf node which communicates only with its parent node and will not relay messages
directly. To configure the ZE20S as a ZigBee end device, please follow the steps below.
• Configure the ZE20S node as an end device
• Optionally, select the channel mask. Otherwise, the ZE20S will use the default channel mask.
• Optionally, set up the PAN ID and/or the extended PAN ID. Otherwise, the ZE20S will scan and
join the ZigBee network found automatically.
•Configure the poll timeout and the poll period
Please refer to the section 3.2 Setting up ZE20S as a Router for the AT commands regarding the node
type selection through the PAN ID configurations.
When an end device joins the network, the power LED blinks periodically if GPIO1 is set to specific
functionality. The end device belongs to a parent node which is either the coordinator or a router, and the
parent node registers the end device to its internal child table for message relaying. This table is
maintained as long as the end device polls the parent node periodically within the poll timeout value of the
parent node. If the end device does not poll for the poll timeout value of the parent node, the parent node
removes the end device from its child table and does not relay the message any more. Hence, the poll
period of the end device should be equal or shorter than the poll timeout of the parent node to avoid
accidental removal of the end device from the parent node’s child table.
The ZE20S poll interval can be configured by setting the S-registers using the AT commands as below.
ATS51=n, where n is poll timeout in seconds and the default is 60.
ATS56=n, where n is poll period in seconds and the default is 5.
End device polls the parent node at poll period defined by S56 periodically. It is for the connection to the
parent node and data transmission with other nodes in the network.
Even though the end device needs to poll the parent node continuously, it does not go into the sleep
mode and it can send and receive messages any time unlike the sleepy end device.
3.4 Setting up ZE20S as a Sleepy End Device
A sleepy end device can turn off radio to save power. To configure the ZE20S as a ZigBee sleepy end
device, please follow the steps below.
• Configure the ZE20S node as a sleepy end device.
• Optionally, select the channel mask. Otherwise, the ZE20S will use the default channel mask.
• Optionally, set up the PAN ID and/or the extended PAN ID. Otherwise, the ZE20S will scan and
23 ProBee-ZE20S Series User Guide Rev.0.1
join the ZigBee network found automatically.
•Configure the settings for sleep interval.
Please refer to the section 3.2 Setting up ZE20S as a Router for the AT commands regarding the node
type selection through the PAN ID configurations.
One of the unique features of the ZigBee device is its extreme low power consumption which is mainly
achieved by its efficient sleep and wake-up mechanism. While ZigBee coordinator and routers are
required to be in operation always, ZigBee sleepy end devices can be configured to be in the sleep mode
most of the time and only wake up at pre-configured time interval for data transmission before it goes into
the sleep mode again. The ZE20S sleep interval can be configured by setting the S-registers using the AT
commands as below.
ATS51=n, where n is poll timeout in seconds and the default is 60.
This value is for a parent node. If an end device does not send a poll request to its parent coordinator or
router within the poll timeout, the end device is removed from the child table. Unlike the non-sleepy end
device, sleepy end device does not use S51 as the poll period. Instead, it uses S53 as the sleep duration
which works similar to the poll period, except it goes to sleep mode.
ATS53=n, where n is sleep duration in quarter seconds and the default is 8.
The ZE20S sleeps at sleep duration and turns off radio.
ATS52=n, where n is poll period in milliseconds and the default is 100.
Sleepy end device wakes up from the sleep mode if S53 timer expires or GPIO0 interrupt is generated or
serial data is received. Once the sleepy end device wakes up, it polls the parent node at poll period
defined by S52 until it goes to sleep mode again. Since the sleepy end device exchanges data with the
parent node only by polling, S52 poll period is usually configured as around 100 ms.
ATS54=n, where n is standby timeout in seconds and the default is 5.
If there is no RF data or serial data for S54 seconds, the sleepy end device goes to sleep mode again. If
any serial or RF data is sent or received, the timer will reset and the sleepy end device waits for another
S54 seconds before it goes to sleep mode again.
ATS55=n, where n is rejoin timeout and the default is 10.
When the connection to the parent node is broken for S55 in seconds, the child node tries to rejoin the
current network.
24 ProBee-ZE20S Series User Guide Rev.0.1
Parent Node
25 ProBee-ZE20S Series User Guide Rev.0.1
S53
Sleep Wake-Up
Poll Request
Data Exchange
Figure 3-1 Sleep Interval and Wake-up Timing
The sleepy end device can also wake up from the sleep mode by GPIO0 interrupt or incoming serial data.
Once it wakes up, it also polls with the parent node at S52 interval and goes into sleep mode after S54
time elapses after the last data exchange.
Note: If the sleepy end device wakes up by incoming serial data, the integrity of the first incoming byte is
not guaranteed. It is strongly recommended to wake up the sleepy end device by using GPIO0 first before
sending the serial data or use higher level serial data protocol to check the data integrity.
S52
Sleepy End Device
S54
Sleep
3.5 ZigBee Security
Security is a major concern in the ZigBee architecture. Although ZigBee uses the basic security elements
in IEEE 802.15.4 (e.g., AES encryption & CCM security modes), the ZE20S increase the security level
with:
• 128 bit AES encryption algorithms
• Strong, NIST-approved security
• Defined Key Types (Link, Network)
• Defined Key setup and maintenance
• CCM (Unified/Simpler mode of operation)
• Trust Centers
3.5.1 Security Level
In order to use security in the application, a user should set security level using the AT command below.
Set 1 defines both Authentication and Encryption at the network layer. Set 0 defines no security. Disabling
security in the application is not ZigBee compliant. All nodes in the network should have the same
security level setup. The security level is configured using the AT command below.
A T+SECURITY=n, where n is encryption level. (0=disable, 1=enable)
3.5.2 Link Key
The trust center (normally coordinator in network) requests link key before a device is trying to join
network. If link key the device has is wrong, joining process will be denied. Hence, all nodes in the
network should have the same link key setup before joining the network.
…
AT+LINKKEY=xxx
3.5.3 Network Key
It is the network-wide key used to secure transmissions at the Network Layer. The network key encrypts
all transmissions at the Network Layer. The network key only needs to be set up for the coordinator.
AT+NWKKEY=xxx
3.5.4 Update Key
A trust center can update the Network Key to help minimize the risk associated with a particular instance
of the network key being compromised. Key updates are broadcast by the trust center throughout the
network, encrypted using the current network key. Devices that hear the broadcast will not immediately
use the key, but simply store it. Later, a key switch is broadcast by the trust center to tell all nodes to start
using the new key. At a minimum, the trust center should allow adequate time for the broadcast of the
new key to propagate throughout the network before switching.
AT+UPDATEKEY<CR>
xxx, where xxx…xxx is 128-bit hexadecimal trust center link key. Default is FFF…FF.
…
xxx, where xxx…xxx is 128-bit hexadecimal network key. Default is FFF…FF.
26 ProBee-ZE20S Series User Guide Rev.0.1
4 Data Transmission
The ZE20S supports three different types of data transmissions: unicast, multicast and broadcast. Unicast
is to transmit data to a specific ZigBee device. Multicast is to transmit data to a group of ZigBee devices
that are assigned a specific group ID. Broadcast is to transmit data to all ZigBee devices (or specific type
of ZigBee nodes if specified) in the network.
There are also two different methods to transmit data to other device as below:
• Command mode: It sends only one packet up to allowed payload length by a form of command.
• Data mode: It is possible to send data consecutively until leave the data mode using “+++”.
4.1 Command Mode
4.1.1 Unicast
Unicast transmissions are sent from a source device to a destination device. The destination device can
be any ZigBee device in the ZigBee network. To specify the destination device, the ZigBee address of the
destination device should be known.
There are two different ZigBee addresses assigned to each ZigBee device. The 64-bit address is a
unique device address assigned during manufacturing. The 64-bit address is also called IEEE address or
extended address. The 16-bit address is assigned to the device when it joins a ZigBee network. The
ZE20S can send unicast messages based on either 16-bit address or 64-bit address. The AT command
for the unicast transmissions is as below:
AT+UNICAST=<node_id>,<MSG><CR>
Where <node_id> = 16-bit or 64-bit address, <MSG> = data to transmit
The maximum payload of the message is 90 bytes (or 72 bytes under security enabled). If the message
length exceeds the maximum payload, the message cannot transmit and the error message will be
presented.
4.1.2 Multicast
Multicast transmissions are sent from a source device to destination devices with the specific group ID.
The group ID is assigned to the devices using the AT+GROUPID command. The AT command for the
multicast transmissions is as below.
AT+MULTICAST=<group_id>,<MSG><CR>
Where <group_id> = group ID, <MSG> = data to transmit
The data transmission range can be set using the AT commands below. Please refer to the 9 S-Registers
for more details.
27 ProBee-ZE20S Series User Guide Rev.0.1
Loading...
+ 60 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.