IoT::XBee

class XBeeNode

File Information

Library: IoT/XBee
Package: XBeeNode
Header: IoT/XBee/XBeeNode.h

Description

This class provides a high-level interface to a Digi XBee device using the Digi XBee API frame-based protocol. This class can be used with all XBee devices supporting the XBee API frame-based protocol, including ZigBee devices. Actually supported methods and events are depending on the kind of XBee device, e.g., an 802.15.4 module won't support ZigBee-specific API frames, and vice-versa. Please refer to the XBee product manual for detailed information about the API.

Inheritance

Known Derived Classes: XBeeNodeImpl

Member Summary

Member Functions: queueCommand, sendCommand, sendExplicitAddressingZigBeeTransmitRequest, sendFrame, sendRemoteCommand, sendTransmitRequest, sendZigBeeTransmitRequest

Constructors

XBeeNode

XBeeNode();

Creates a XBeeNode.

Destructor

~XBeeNode virtual

virtual ~XBeeNode();

Destroys the ZBPort.

Member Functions

queueCommand virtual

virtual void queueCommand(
    const ATCommand & command
) = 0;

Queues an AT command for execution on the connected XBee device.

In contrast to sendCommand(), new parameter values are queued and not applied until either sendCommand() is called or the Apply Changes (AC) AT command is issued. Register queries (reading parameter values) are returned immediately.

sendCommand virtual

virtual void sendCommand(
    const ATCommand & command
) = 0;

Sends an AT command to the connected XBee device.

sendExplicitAddressingZigBeeTransmitRequest virtual

virtual void sendExplicitAddressingZigBeeTransmitRequest(
    const ExplicitAddressingZigBeeTransmitRequest & request
) = 0;

sendFrame virtual

virtual void sendFrame(
    const APIFrame & frame
) = 0;

Sends an API frame to the connected XBee device.

The caller is responsible for correct formatting of the API frame's data. Refer to the XBee module documentation for supported frames and their format.

This can be used to send API frames not directly supported by the XBeeNode interface.

sendRemoteCommand virtual

virtual void sendRemoteCommand(
    const RemoteATCommand & command
) = 0;

Sends an AT command to a remote XBee device.

sendTransmitRequest virtual

virtual void sendTransmitRequest(
    const TransmitRequest & request
) = 0;

Sends a TransmitRequest message to the XBee device.

sendZigBeeTransmitRequest virtual

virtual void sendZigBeeTransmitRequest(
    const ZigBeeTransmitRequest & request
) = 0;

Sends a ZigBeeTransmitRequest to the XBee device.

Variables

commandResponseReceived

Poco::BasicEvent < const ATCommandResponse > commandResponseReceived;

Fired when an AT command response frame has been received from the connected XBee device.

explicitAddressingZigBeePacketReceived

Poco::BasicEvent < const ExplicitAddressingZigBeeReceivePacket > explicitAddressingZigBeePacketReceived;

Fired when an explicit addressing ZigBee packet has been received.

frameReceived

Poco::BasicEvent < const APIFrame > frameReceived;

Fired when a valid frame has been received from the connected XBee device.

This is fired for every receive frame. For supported frame types, a second, more specific event (transmitStatusReceived, etc.) is also fired.

This can be used to handle API frames not directly supported by the XBeeNode interface.

ioDataReceived

Poco::BasicEvent < const ReceivePacket > ioDataReceived;

Fired when a I/O data packet has been received.

ioSampleReceived

Poco::BasicEvent < const IOSample > ioSampleReceived;

Fired when an ZigBee IO Data Sample Rx Indicator frame has been received from the connected XBee device.

modemStatusReceived

Poco::BasicEvent < const ModemStatus > modemStatusReceived;

Fired when a valid modem status frame has been received from the connected XBee device.

packetReceived

Poco::BasicEvent < const ReceivePacket > packetReceived;

Fired when a packet has been received.

remoteCommandResponseReceived

Poco::BasicEvent < const RemoteATCommandResponse > remoteCommandResponseReceived;

Fired when an AT command response frame has been received from the connected XBee device.

sensorReadReceived

Poco::BasicEvent < const SensorRead > sensorReadReceived;

Fired when a XBee Sensor Read Indicator frame has been received from the connected XBee device.

transmitStatusReceived

Poco::BasicEvent < const TransmitStatus > transmitStatusReceived;

Fired when a TX Request is completed and the module sends a TX Status message.

zigBeePacketReceived

Poco::BasicEvent < const ZigBeeReceivePacket > zigBeePacketReceived;

Fired when a ZigBee packet has been received.

zigBeeTransmitStatusReceived

Poco::BasicEvent < const ZigBeeTransmitStatus > zigBeeTransmitStatusReceived;

Fired when a ZigBee TX Request is completed and the module sends a TX Status message.

Securely control IoT edge devices from anywhere   Connect a Device