xbee_err xbee_conNew(struct xbee *xbee, struct xbee_con **retCon, const char *type, struct xbee_conAddress *address);
xbee_err xbee_conValidate(struct xbee_con *con);
xbee_err xbee_conGetXBee(struct xbee_con *con, struct xbee **xbee);
xbee_err xbee_conEnd(struct xbee_con *con);
xbee_conNew() will create new connection via the given libxbee instance xbee. The new connection will be returned via retCon, and the connection's type is provided by type. A list of avaliable connection types can be obtained by using xbee_conGetTypes(3). The address indicates which remote device you wish to communicate with - it is not always appropriate to use this (e.g: with a "Local AT" connection), in which case NULL may be safely provided.
xbee_conValidate() allows you to confirm that your handle points to a valid libxbee connection.
xbee_conGetXBee() allows you to retrieve the libxbee instance that was provided when the connection was created by calling xbee_conNew().
xbee_conEnd() will terminate a connection, and free any memory that is associated with it, including any un-fetched packets. If a callback is active when xbee_conEnd() is called, it will be permitted to complete, and then the connection will be terminated.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"16-bit Data" - 2-way communication with a remote module, using 16-bit addressing.
"64-bit Data" - 2-way communication with a remote module, using 64-bit addressing.
"16-bit I/O" - Rx Only. I/O samples received from a remote module, using 16-bit addressing.
"64-bit I/O" - Rx Only. I/O samples received from a remote module, using 64-bit addressing.
xbee2 "Modem Status" - Rx Only. Status updates from the XBee module.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"Data" - 2-way communication with a remote module. All data will be recieved using this connection type if AO=0.
"Data (explicit)" - 2-way communication with a remote module, with configurable endpoints. All data will be recieved using this connection type if AO=1.
"I/O" - Rx Only. I/O samples received from a remote module. Only if AO=0.
"Sensor" - Rx Only. Used for receiving sensor samples. Only if AO=0.
"Identify" - Rx on the Coordinator Only. Identifies new nodes as they join the network. Only if AO=0.
xbee3 "Modem Status" - Rx Only. Status updates from the XBee module.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"Data" - 2-way communication with a remote module. All data will be recieved using this connection type if AO=0.
"Data (explicit)" - 2-way communication with a remote module, with configurable endpoints. All data will be recieved using this connection type if AO=1.
"Identify" - Rx on the Coordinator Only. Identifies new nodes as they join the network. Only if AO=0.
xbee5 "Modem Status" - Rx Only. Status updates from the XBee module.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"Data" - 2-way communication with a remote module. All data will be recieved using this connection type if AO=0.
"Data (explicit)" - 2-way communication with a remote module, with configurable endpoints. All data will be recieved using this connection type if AO=1.
"Identify" - Rx on the Coordinator Only. Identifies new nodes as they join the network. Only if AO=0.
xbee6b "Modem Status" - Rx Only. Status updates from the XBee module.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Frame Error" - Rx Only. Framing errors are received by this connection type, though they are currently of limited use because they aren't referenced to a specific frame...
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"Data" - 2-way communication with a remote module.
"I/O" - Rx Only. I/O samples received from a remote module.
xbeeZB "Modem Status" - Rx Only. Status updates from the XBee module.
"Transmit Status" - Rx Only. Transmit status responses. These are handled for you, but you may wish to access them anyway.
"Local AT" - Set/Get AT configuration from the local module.
"Remote AT" - Set/Get AT configuration from a remote module.
"Data" - 2-way communication with a remote module. All data will be recieved using this connection type if AO=0.
"Data (explicit)" - 2-way communication with a remote module, with configurable endpoint, cluster and profile IDs. All data will be recieved using this connection type if AO=1.
"I/O" - Rx Only. I/O samples received from a remote module. Only if AO=0.
"Identify" - Rx on the Coordinator Only. Identifies new nodes as they join the network. Only if AO=0.
"Sensor" - Rx Only. Used for receiving sensor samples. Only if AO=0.
"OTA Update Status" - Rx on the Coordinator Only. Identifies new nodes as they join the network. Only if AO=0.
net the connection types for net mode are determined by the mode running on the server. See xbee_conGetTypes(3).
#include <xbee.h> struct xbee *xbee; struct xbee_con *con; struct xbee_conAddress address; /* initialize xbee, using xbee_setup() */ memset(&address, 0, sizeof(address)); address.addr64_enabled = 1; address.addr64[0] = 0x00; address.addr64[1] = 0x13; address.addr64[2] = 0xA2; address.addr64[3] = 0x00; address.addr64[4] = 0x40; address.addr64[5] = 0x08; address.addr64[6] = 0x18; address.addr64[7] = 0x26; if (xbee_conNew(xbee, &con, "64-bit Data", &address) != XBEE_ENONE) return; /* make use of the connection... */ if (xbee_conEnd(con) != XBEE_ENONE) return;