Component: Zigbee (EB051, XBEE) (XBEE) (Wireless): Difference between revisions
Appearance
No edit summary |
No edit summary |
||
| (13 intermediate revisions by the same user not shown) | |||
| Line 14: | Line 14: | ||
==Zigbee (EB051, XBEE) component== | ==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 | 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 to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_Zigbee.fcfx FC_Comp_Source_Zigbee.fcfx] | |||
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_Zigbee.fcfx FC_Comp_Source_Zigbee.fcfx] | |||
==Detailed description== | ==Detailed description== | ||
| Line 30: | Line 56: | ||
''<span style="color:red;">No additional examples</span>'' | |||
==Macro reference== | |||
===ConnectFromLibrary=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| Line 313: | Line 115: | ||
===ConnectToAddress=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| Line 331: | Line 134: | ||
===ConnectToAll=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ConnectToAll''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to connect the data channel to all devices on the network. | ||
|- | |- | ||
|- | |- | ||
| Line 344: | Line 148: | ||
===ConnectToCoordinator=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ConnectToCoordinator''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to connect the data channel to the network coordinator node. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ConnectToName=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ConnectToName''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to connect the data channel to a named device on the network. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9- | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | | | width="90%" | Name | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 398: | Line 181: | ||
===EnterCommandMode=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnterCommandMode''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Moves from data mode into command mode by sending the special characters | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 416: | Line 195: | ||
===ExitCommandMode=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ExitCommandMode''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Returns from command mode to allow data to be sent and received | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===GetATResponse=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| Line 452: | Line 228: | ||
===GetSignalLevel=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetSignalLevel''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Returns the signal strength of the last signal received | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| Line 470: | Line 242: | ||
===InitNetwork=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''InitNetwork''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Initialises the Zigbee module and attempts to setup or join the network | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 488: | Line 256: | ||
===MIAC_Module_GetData=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MIAC_Module_GetData''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Index | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===MIAC_Module_Message=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MIAC_Module_Message''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10% | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | CAN_ID | |||
| width="90%" | |||
| | |||
|- | |- | ||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | CMD_ID | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===MIAC_Module_PushData=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MIAC_Module_PushData''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Data | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 653: | Line 318: | ||
===NodeConfigureSleep=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''NodeConfigureSleep''' | ||
|- | |- | ||
| colspan="2" | Sets the Zigbee device sleep mode (only applicable for end node type devices) , | |||
| colspan="2" | Sets | |||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Mode | ||
|- | |- | ||
| colspan="2" | 1=Hibernate, 2=Doze, 4=Cyclic Sleep, 5=Cyclic Doze | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| width="90%" | | | width="90%" | Timeout | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Time to sleep in milli seconds (ms) | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 738: | Line 342: | ||
===NodeWake=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''NodeWake''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Wakes up the local Zigbee module from sleep mode. | ||
|- | |- | ||
|- | |- | ||
| Line 764: | Line 356: | ||
===ReadATResponse=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadATResponse''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Reads a single byte from the received AT command response. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | idx | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Specified the byte index in the buffer. Range 0-15 | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ReadAddressFromBuffer=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadAddressFromBuffer''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Reads a byte from a 16-bit Zigbee device address | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Device | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90% | | width="90%" | Idx | ||
|- | |- | ||
| | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ReadNameFromBuffer=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReadNameFromBuffer''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Returns a byte from the 8-Byte name | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:]] - | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Device | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | The Device name to collect. Range: 0-7 | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90% | | width="90%" | Idx | ||
|- | |- | ||
| | | colspan="2" | The index position of the name. Range: 0-7 | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | |||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | |||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ReceiveChar=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ReceiveChar''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempt to receive a byte from the Zigbee module. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | nTimeout | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===RestartNetwork=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''RestartNetwork''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Attempts to restart the network | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] - | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ScanBuffer=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ScanBuffer''' | ||
|- | |- | ||
| colspan="2" | Returns | | colspan="2" | Returns a binary list of matched identifier names | ||
|- | |- | ||
|- | |- | ||
| width="10% | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90%" | Compare_Str | |||
| width="90%" | |||
| | |||
|- | |- | ||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Length | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===ScanNetwork=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ScanNetwork''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | 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. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" | | | width="90%" | Mode | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
===SendATCommand=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendATCommand''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Transmits a string of values to the Zigbee module. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| width="90% | | width="90%" | Command | ||
|- | |- | ||
| colspan="2" | Transmits a command to the Zigbee module followed by a carriage return | |||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 986: | Line 518: | ||
===SendChar=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SendChar''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Transmits a byte value to the Zigbee module. | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
| width="90% | | width="90%" | Byte | ||
|- | |- | ||
| colspan="2" | Data byte to transmit. Range 0-255 | |||
| colspan="2" | | |||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| Line 1,017: | Line 537: | ||
===StoreParams=== | |||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StoreParams''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | Stores the current register set into the Zigbee module's non volatile memory | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
| Line 1,115: | Line 593: | ||
|- | |- | ||
| colspan="2" | 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. | | colspan="2" | 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. | ||
|- | |||
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections | |||
|- | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Channel | |||
|- | |||
| colspan="2" | 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. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | TX | |||
|- | |||
| colspan="2" | Pin to be used for Transmit data | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | RX | |||
|- | |||
| colspan="2" | Pin to be used for Receive data | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Baud Options | |||
|- | |||
| colspan="2" | Baud rate option selector | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]] | |||
| width="90%" | Baud Rate | |||
|- | |||
| colspan="2" | | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]] | |||
| width="90%" | Use Flow Control | |||
|- | |||
| colspan="2" | 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. | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | RTS | |||
|- | |||
| colspan="2" | 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 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | CTS | |||
|- | |||
| colspan="2" | 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 | |||
|- | |||
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]] | |||
| width="90%" | Sleep Pin | |||
|- | |||
| colspan="2" | Zigbee Sleep Control Pin | |||
|- | |||
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | |||
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Scan Channels | |||
|- | |||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-7-icon.png]] | ||
| Line 1,206: | Line 737: | ||
| colspan="2" | The total amount of time that it will take to perform a complete RF channel scan based on the selected scan channels and duration. | | colspan="2" | The total amount of time that it will take to perform a complete RF channel scan based on the selected scan channels and duration. | ||
|- | |- | ||
| width="10%" align="center" style="background-color:# | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" style="background-color:# | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 13:13, 7 February 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 to download the component source project: FC_Comp_Source_Zigbee.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_Zigbee.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
ConnectFromLibrary
| ConnectFromLibrary | |
| Attempts to connect the data channel to a known device on the network. | |
| Mode | |
| Device | |
| Return | |
ConnectToAddress
| ConnectToAddress | |
| Attempts to connect the data channel to a specific device address on the network. | |
| Address | |
| Return | |
ConnectToAll
| ConnectToAll | |
| Attempts to connect the data channel to all devices on the network. | |
| Return | |
ConnectToCoordinator
| ConnectToCoordinator | |
| Attempts to connect the data channel to the network coordinator node. | |
| Return | |
ConnectToName
| ConnectToName | |
| Attempts to connect the data channel to a named device on the network. | |
| Name | |
| Return | |
EnterCommandMode
| EnterCommandMode | |
| Moves from data mode into command mode by sending the special characters | |
| Return | |
ExitCommandMode
| ExitCommandMode | |
| Returns from command mode to allow data to be sent and received | |
| Return | |
GetATResponse
| 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. | |
| Logging | |
| Return | |
GetSignalLevel
| GetSignalLevel | |
| Returns the signal strength of the last signal received | |
| Return | |
InitNetwork
| InitNetwork | |
| Initialises the Zigbee module and attempts to setup or join the network | |
| Return | |
MIAC_Module_GetData
| MIAC_Module_GetData | |
| Index | |
| Return | |
MIAC_Module_Message
| MIAC_Module_Message | |
| CAN_ID | |
| CMD_ID | |
| Return | |
MIAC_Module_PushData
| MIAC_Module_PushData | |
| Data | |
| Return | |
NodeConfigureSleep
NodeWake
| NodeWake | |
| Wakes up the local Zigbee module from sleep mode. | |
| Return | |
ReadATResponse
| ReadATResponse | |
| Reads a single byte from the received AT command response. | |
| idx | |
| Specified the byte index in the buffer. Range 0-15 | |
| Return | |
ReadAddressFromBuffer
| ReadAddressFromBuffer | |
| Reads a byte from a 16-bit Zigbee device address | |
| Device | |
| Idx | |
| Return | |
ReadNameFromBuffer
| ReadNameFromBuffer | |
| Returns a byte from the 8-Byte name | |
| Device | |
| The Device name to collect. Range: 0-7 | |
| Idx | |
| The index position of the name. Range: 0-7 | |
| Return | |
ReceiveChar
| ReceiveChar | |
| Attempt to receive a byte from the Zigbee module. | |
| nTimeout | |
| Return | |
RestartNetwork
| RestartNetwork | |
| Attempts to restart the network | |
| Return | |
ScanBuffer
| ScanBuffer | |
| Returns a binary list of matched identifier names | |
| Compare_Str | |
| Length | |
| Return | |
ScanNetwork
SendATCommand
| SendATCommand | |
| Transmits a string of values to the Zigbee module. | |
| Command | |
| Transmits a command to the Zigbee module followed by a carriage return | |
| Return | |
SendChar
| SendChar | |
| Transmits a byte value to the Zigbee module. | |
| Byte | |
| Data byte to transmit. Range 0-255 | |
| Return | |
StoreParams
| StoreParams | |
| Stores the current register set into the Zigbee module's non volatile memory | |
| Return | |