Links

Node parameters

When configuring a node, it is necessary to set some parameters which will be used lately in the network,and some parameters necessary for using the API functions.

MAC address

A 64-bit RF module’s unique IEEE address. It is divided in two groups of 32 bits (High and Low).
It identifies uniquely a node inside a network due to it can not be modified and it is given by themanufacturer.
Example of use:
{
xbee868LP.getOwnMacLow(); // Get 32 lower bits of MAC Address
xbee868LP.getOwnMacHigh(); // Get 32 upper bits of MAC Address
}
Related variables:
sourceMacHigh[0-3] → stores the 32 upper bits of MAC address sourceMacLow [0-3] → stores the 32 lower bits of MAC address
Besides, XBee modules provide a stick on the bottom side where the MAC address is indicated:
Figure : MAC address

PAN ID

The Personal Area Network Identifier (PAN ID) is the Network ID. The user network identifier. Nodes musthave the same network identifier to communicate. Only modules with matching IDs can communicate witheach other so all the nodes in the same network must have the same PAN ID. If using OEM network IDs,0xFFFF will use the factory value.
Parameter range: From 0 to 0x7FFF. Default: 0x7FFF.
Example of use:
{
uint8_t panid[] = { 0x7F, 0xFF };
xbee868LP.setPAN(panid);
xbee868LP.getPAN();
}
Related variables:
PAN_ID[0-7] → stores the 16-bit PAN ID. It is stored in the two first positions.
XBee configuration example:

Node Identifier

It is an ASCII string of 20 characters at most which identifies the node in a network. It is used to identify anode in the application level. It is also used to search a node using its NI.
Example of use:
{
xbee868LP.setNodeIdentifier(“node01”);
xbee868LP.getNodeIdentifier();
}
Related variables:
nodeID[0-19] → stores the 20-byte max string Node Identifier

Available frequencies

XBee 868LP defines 30 channels that are spaced 200 kHz apart:
  • 863-870MHz : 30 channels
Figure: Available frequencies for XBee 868LP
This read-only command can be queried to return a bitfield of the frequencies that are available in themodule’s region of operation. Each bit corresponds to a physical channel. Channels are spaced 200 kHzapart:
Bitfield
Frequency (MHz)
Bit 0
863.150
Bit 1
863.350
Bit 2
863.550
Bit 3
863.750
Bit 4
863.950
Bit 5
864.150
Bit 6
864.350
Bit 7
864.550
Bit 8
864.750
Bit 9
864.950
Bit 10
865.150
Bit 11
865.350
Bit 12
865.550
Bit 13
865.750
Bit 14
865.950
Bit 15
866.150
Bit 16
866.350
Bit 17
866.550
Bit 18
866.750
Bit 19
866.950
Bit 20
867.150
Bit 21
867.350
Bit 22
867.550
Bit 23
867.750
Bit 24
867.950
Bit 25
868.150
Bit 26
868.350
Bit 27
868.550
Bit 28
868.750
Bit 29
868.950
Figure: Available frequencies on XBee 868LP
Parameter range: From 0 to 0x3FFFFFFF.
Example of use:
{
xbee868LP.getAvailableFreq();
}
Related variables:
_availableFreq[0-3] → stores the available frequencies bitfield

Channel Mask

The channel mask command allows channels to be selectively enabled or disabled. This is useful to avoidusing frequencies that experience unacceptable levels of RF interference. This command is a bitfield. Eachbit in the bitfield corresponds to a frequency as defined in the “Available Frequencies” section. When a bit inthe Channel Mask and the corresponding bit in the Available Frequencies are both set to 1 then that physicalchannel may be chosen by the module as an active channel for communication.
At least two channels must be enabled, except when using only the g4 frequency. When using only the g4frequency (use 0x20000000) LBT+AFA will be disabled and requires the power level to be 5 mW e.r.p. or less.
All modules in a network must use an identical set of active channels. Separate networks which are inphysical range of each other should use different Preamble Patterns (HP) and/or Network ID’s (ID) to avoidreceiving data from the other network.
Parameter range: From 0 to 0x3FFFFFFF. Default: 0x3FFFFFFF.
Example of use:
{
uint8_t channelMask[4] = {0xFF, 0xFF, 0xFF, 0xFF};
xbee868LP.setChannelMask( channelMask );
xbee868LP.getChannelMask();
}
Related variables:
_channelMask[0-3] → stores the channel mask
XBee configuration example:

Preamble ID

Only modules with matching preamble IDs can communicate with each other. Different preamble IDsminimize interference between multiple sets of modules operating in the same vicinity. When receiving apacket this is checked before the network ID, as it is encoded in the preamble, and the network ID isencoded in the MAC header.
Parameter range: From 0x00 to 0x09. Default: 0x00.
Example of use:
{
xbee868LP.setPreambleID( 0x00 );
xbee868LP.getPreambleID();
}
Related variables:
_preambleID → stores the preamble ID
XBee configuration example: