| 
				 | 
				
| Line 20: | 
Line 20: | 
|   |  |   |  | 
|   | ==Detailed description==  |   | ==Detailed description==  | 
|   | + |  | 
|   | + |  | 
|   |  |   |  | 
|   |  |   |  | 
| Line 36: | 
Line 38: | 
|   |  |   |  | 
|   | ==Examples==  |   | ==Examples==  | 
|   | + |  | 
|   | + |  | 
|   |  |   |  | 
|   |  |   |  | 
		Revision as of 14:43, 16 January 2023
| Author
 | 
Matrix Ltd.
 | 
| Version
 | 
1.5
 | 
| Category
 | 
Wireless
 | 
Zigbee (EB051, XBEE) component
Zigbee component designed to work with the XBEE range of modules from Digi. Provides a very simple interface to allow Zigbee mesh networks and communications. Also available in the form of the EB051 Zigbee E-block. Can also be used with Zigbee MIAC Addon module
Component Source Code
Please click here for the component source code: FC_Comp_Source_Zigbee.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Downloadable macro reference
 
 | 
NodeConfigureSleep
 | 
| Sets the Zigbee device sleep mode (only applicable for end node type devices) ,  
 | 
  - BYTE
 | 
Mode
 | 
| 1=Hibernate, 2=Doze, 4=Cyclic Sleep, 5=Cyclic Doze 
 | 
  - UINT
 | 
Timeout
 | 
| Time to sleep in milli seconds (ms) 
 | 
  - VOID
 | 
Return
 | 
 
 | 
ReadNameFromBuffer
 | 
| Returns a byte from the 8-Byte name 
 | 
  - BYTE
 | 
Device
 | 
| The Device name to collect. Range: 0-7 
 | 
  - BYTE
 | 
Idx
 | 
| The index position of the name. Range: 0-7 
 | 
  - BYTE
 | 
Return
 | 
 
 | 
NodeWake
 | 
| Wakes up the local Zigbee module from sleep mode. 
 | 
  - VOID
 | 
Return
 | 
 
 | 
ReadATResponse
 | 
| Reads a single byte from the received AT command response. 
 | 
  - BYTE
 | 
idx
 | 
| Specified the byte index in the buffer. Range 0-15 
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ScanBuffer
 | 
| Returns a binary list of matched identifier names 
 | 
  - STRING
 | 
Compare_Str
 | 
|  
 | 
  - BYTE
 | 
Length
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
SendChar
 | 
| Transmits a byte value to the Zigbee module. 
 | 
  - BYTE
 | 
Byte
 | 
| Data byte to transmit. Range 0-255 
 | 
  - VOID
 | 
Return
 | 
 
 | 
InitNetwork
 | 
| Initialises the Zigbee module and attempts to setup or join the network 
 | 
  - VOID
 | 
Return
 | 
 
 | 
ConnectToCoordinator
 | 
| Attempts to connect the data channel to the network coordinator node. 
 | 
  - BYTE
 | 
Return
 | 
 
 | 
MIAC_Module_GetData
 | 
|  
 | 
  - BYTE
 | 
Index
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ConnectToName
 | 
| Attempts to connect the data channel to a named device on the network. 
 | 
  - STRING
 | 
Name
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
StoreParams
 | 
| Stores the current register set into the Zigbee module's non volatile memory 
 | 
  - VOID
 | 
Return
 | 
 
 | 
EnterCommandMode
 | 
| Moves from data mode into command mode by sending the special characters 
 | 
  - VOID
 | 
Return
 | 
 
 | 
RestartNetwork
 | 
| Attempts to restart the network 
 | 
  - VOID
 | 
Return
 | 
 
 | 
MIAC_Module_Message
 | 
|  
 | 
  - UINT
 | 
CAN_ID
 | 
|  
 | 
  - UINT
 | 
CMD_ID
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ConnectToAll
 | 
| Attempts to connect the data channel to all devices on the network. 
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ConnectFromLibrary
 | 
| Attempts to connect the data channel to a known device on the network. 
 | 
  - BYTE
 | 
Mode
 | 
|  
 | 
  - BYTE
 | 
Device
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ConnectToAddress
 | 
| Attempts to connect the data channel to a specific device address on the network. 
 | 
  - STRING
 | 
Address
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
GetSignalLevel
 | 
| Returns the signal strength of the last signal received 
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ExitCommandMode
 | 
| Returns from command mode to allow data to be sent and received 
 | 
  - VOID
 | 
Return
 | 
 
 | 
MIAC_Module_PushData
 | 
|  
 | 
  - BYTE
 | 
Data
 | 
|  
 | 
  - VOID
 | 
Return
 | 
 
 | 
ReadAddressFromBuffer
 | 
| Reads a byte from a 16-bit Zigbee device address 
 | 
  - BYTE
 | 
Device
 | 
|  
 | 
  - BYTE
 | 
Idx
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
SendATCommand
 | 
| Transmits a string of values to the Zigbee module. 
 | 
  - STRING
 | 
Command
 | 
| Transmits a command to the Zigbee module followed by a carriage return 
 | 
  - VOID
 | 
Return
 | 
 
 | 
ScanNetwork
 | 
| Scans the local network for devices and stores into a local device array. Mode = 0 store device names, mode = 1 store device addresses. Returns the number of devices found. 
 | 
  - BYTE
 | 
Mode
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
GetATResponse
 | 
| Waits for a response from the Zigbee module. If the Logging parameter is set then the response is stored in memory allowing the software to read the reply. 
 | 
  - BYTE
 | 
Logging
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
 
 | 
ReceiveChar
 | 
| Attempt to receive a byte from the Zigbee module. 
 | 
  - BYTE
 | 
nTimeout
 | 
|  
 | 
  - BYTE
 | 
Return
 | 
Property reference
 
 | 
Properties
 | 
 
 | 
Device Name
 | 
| String of characters used to allow the Zigbee node to use the name addressing mode of operation.  Can be left blank if name addressing is not being used. 
 | 
 
 | 
Zigbee Mode
 | 
| Specifies the functionality of the Zigbee node. Coordinator - Must be used with a Coordinator Zigbee E-Block EB051C, Responsible for starting the network and assigning addresses. Router - Must be used with a Router / End Node E-Block EB051R, Responsible for forwarding / repeating packets on the network. End Device - Must be used with a Router / End Node E-Block EB051R, Capable of low power operation. 
 | 
 
 | 
Auto ID
 | 
| Automatically generate a PAN ID  
 | 
 
 | 
PAN ID
 | 
| Assigns a Personal Area Network Identifier code to the Zigbee node. Random / Search - Scans the local area for Zigbee PAN networks and joins the existing network, otherwise a random value is chosen. Preset - Assigns a preset PAN ID to the Zigbee node, Must be between 0x0 and 0x3FFF. 
 | 
 
 | 
Node Join Time
 | 
| Length of time in seconds where nodes are allowed to join the network. Infinte - Nodes are always allowed to join the network. Preset - Nodes are only allowed to join the network for a specific amount of time. Note: Join time not available for End Device nodes.  
 | 
 
 | 
Max Hops
 | 
| Specifies the maximum number of retransmits for a Broadcast transmission. 
 | 
 
 | 
Sleep Buffer Time
 | 
| Length of time to buffer packets for sleeping or powered down nodes. This value must be consistent throughout the Zigbee network. Default - Assigns the maximum buffer time of 28 seconds. Preset - Allows for a custom sleep time of 0.32 - 28 seconds. 
 | 
 
 | 
Connections
 | 
 
 | 
Channel
 | 
| UART Channel selector Software channels are bit banged using generic I/O pins but are not as reliable as hardware channels. Hardware channels use the selected peripheral on-board the target microcontroller. 
 | 
 
 | 
TX
 | 
| Pin to be used for Transmit data 
 | 
 
 | 
RX
 | 
| Pin to be used for Receive data 
 | 
 
 | 
Baud Options
 | 
| Baud rate option selector 
 | 
 
 | 
Baud Rate
 | 
|  
 | 
 
 | 
Use Flow Control
 | 
| Flow Control (Handshake) enable or disable.     On: Two I/O pins are used to control the flow of data in and out of the device.     Off: Flow control is disabled. 
 | 
 
 | 
RTS
 | 
| Pin to be used for Request To Send handshake function Output from target micro to inform remote device we are ready to receive data. Low = Ready to receive data High = Not ready to receive data 
 | 
 
 | 
CTS
 | 
| Pin to be used for Clear To Send handshake function. Input to target micro to inform when the remote device is ready to transmit data. Low = Ready to transmit data High = Not ready to transmit data 
 | 
 
 | 
Sleep Pin
 | 
| Zigbee Sleep Control Pin 
 | 
 
 | 
Scan Channels
 | 
 
 | 
0x0B
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x0C
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x0D
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x0E
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x0F
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x10
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x11
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x12
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x13
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x14
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x15
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x16
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x17
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x18
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x19
 | 
| Determines if channel will be scanned 
 | 
 
 | 
0x1A
 | 
| Determines if channel will be scanned 
 | 
 
 | 
Scan Duration
 | 
| Configures the length of time to scan each channel for network activity. The overall time for the entire channel scan is shown as channel scan time. 
 | 
 
 | 
Total Scan Time (ms)
 | 
| The total amount of time that it will take to perform a complete RF channel scan based on the selected scan channels and duration. 
 | 
 
 | 
Simulation
 | 
 
 | 
Label
 | 
|  
 | 
 
 | 
Scope Traces
 | 
| Selects if the scope traces are automatically added to the data recorder window or not.     Simulation - draws an approximation of the UART data onto the scope trace.     ICT - sets up the scope trace for incoming data and adds UART packet decoding at the correct BAUD. 
 | 
 
 | 
Console Data
 | 
| Selects if the console data is automatically generated or not 
 | 
 
 | 
Console Columns
 | 
| Number of characters that can be displayed on a single line of the console. 
 | 
 
 | 
Data Source
 | 
| Simulation data source used to allow the component to connect to various remote devices     Nothing - Simulation data is ignored     COM port - Routes the communication data to and from a physical or virtual COM port      API - Routes the communication data via a data API component on the Panel. 
 |