The XBee class is used to represents the local XBee. More...
 
  
 | Public Types | |
| enum | Mode { CommandMode, API1Mode, API2Mode } | 
| Public Slots | |
| void | loadAddressingProperties () | 
| Loads the XBee's addressing properties.  More... | |
| bool | open () | 
| Opens the XBee' serial port.  More... | |
| bool | close () | 
| Closes the XBee' serial port.  More... | |
| void | displayATCommandResponse (ATCommandResponse *digiMeshPacket) | 
| void | displayModemStatus (ModemStatus *digiMeshPacket) | 
| void | displayTransmitStatus (ZBTxStatusResponse *digiMeshPacket) | 
| void | displayRxIndicator (ZBRxResponse *digiMeshPacket) | 
| void | displayRxIndicatorExplicit (ZBExplicitRxResponse *digiMeshPacket) | 
| void | displayNodeIdentificationIndicator (ZBIONodeIdentificationResponse *digiMeshPacket) | 
| void | displayRemoteCommandResponse (RemoteATCommandResponse *digiMeshPacket) | 
| Signals | |
| void | rawDataReceived (const QByteArray &data) | 
| Emitted when raw data are received on the serial port (only in XBee::CommandMode).  More... | |
| void | receivedATCommandResponse (QtXBee::ATCommandResponse *response) | 
| Emitted when a ATCommandResponse frame is received. | |
| void | receivedModemStatus (QtXBee::ModemStatus *response) | 
| Emitted when a ModemStatus frame is received. | |
| void | receivedRemoteCommandResponse (QtXBee::RemoteATCommandResponse *response) | 
| Emitted when a RemoteATCommandResponse frame is received. | |
| void | receivedTransmitStatus (QtXBee::ZigBee::ZBTxStatusResponse *response) | 
| Emitted when a ZigBee::ZBTxStatusResponse frame is received. | |
| void | receivedRxIndicator (QtXBee::ZigBee::ZBRxResponse *response) | 
| Emitted when a ZigBee::ZBRxResponse frame is received. | |
| void | receivedRxIndicatorExplicit (QtXBee::ZigBee::ZBExplicitRxResponse *response) | 
| Emitted when a ZigBee::ZBExplicitRxResponse frame is received. | |
| void | receivedNodeIdentificationIndicator (QtXBee::ZigBee::ZBIONodeIdentificationResponse *response) | 
| Emitted when a ZigBee::ZBIONodeIdentificationResponse frame is received. | |
| void | receivedTransmitStatus (QtXBee::Wpan::TxStatusResponse *response) | 
| Emitted when a Wpan::TxStatusResponse frame is received. | |
| void | receivedRxResponse16 (QtXBee::Wpan::RxResponse16 *response) | 
| Emitted when a Wpan::RxResponse16 frame is received. | |
| void | receivedRxResponse64 (QtXBee::Wpan::RxResponse64 *response) | 
| Emitted when a Wpan::RxResponse64 frame is received. | |
| void | DHChanged (const quint32 dh) | 
| Emitted when DH property changes.  More... | |
| void | DLChanged (const quint32 dl) | 
| Emitted when DL property changes.  More... | |
| void | MYChanged (const quint16 my) | 
| Emitted when MY property changes.  More... | |
| void | MPChanged (const quint16 mp) | 
| Emitted when MP property changes.  More... | |
| void | NCChanged (const quint32 nc) | 
| Emitted when NC property changes.  More... | |
| void | SHChanged (const quint32 sh) | 
| Emitted when SH property changes.  More... | |
| void | SLChanged (const quint32 sl) | 
| Emitted when SL property changes.  More... | |
| void | NIChanged (const QString &ni) | 
| Emitted when NI property changes.  More... | |
| void | SEChanged (const quint8 se) | 
| Emitted when SE property changes.  More... | |
| void | DEChanged (const quint8 de) | 
| Emitted when DE property changes.  More... | |
| void | CIChanged (const quint8 ci) | 
| Emitted when CI property changes.  More... | |
| void | TOChanged (const quint8 to) | 
| Emitted when TO property changes.  More... | |
| void | NPChanged (const quint8 np) | 
| Emitted when NP property changes.  More... | |
| void | DDChanged (const quint16 dd) | 
| Emitted when DD property changes.  More... | |
| void | CRChanged (const quint8 cr) | 
| Emitted when CR property changes.  More... | |
| Public Member Functions | |
| XBee (QObject *parent=0) | |
| XBee's default constructor.  More... | |
| XBee (const QString &serialPort, QObject *parent=0) | |
| XBee's constructor.  More... | |
| ~XBee () | |
| Destroyes the XBee instance, frees allocated resources and close the serial port. | |
| bool | applyDefaultSerialPortConfig () | 
| Applies the default configuration to the serial port.  More... | |
| bool | sendCommandAsync (const QByteArray &command) | 
| Sends asynchronously the given command in command mode.  More... | |
| XBeeResponse * | sendSync (XBeePacket *packet) | 
| Sends synchronously the given packet.  More... | |
| ATCommandResponse * | sendATCommandSync (ATCommand *command) | 
| Sends an ATCommand synchronously.  More... | |
| ATCommandResponse * | sendATCommandSync (const QByteArray &atcommand) | 
| Sends an ATCommand synchronously.  More... | |
| QByteArray | sendCommandSync (const QByteArray &command) | 
| Sends synchronously the given command using in command mode.  More... | |
| void | sendAsync (XBeePacket *packet) | 
| Sends asynchronously the given packet.  More... | |
| void | sendATCommandAsync (ATCommand *command) | 
| Sends an ATCommand asynchronously.  More... | |
| void | sendATCommandAsync (const QByteArray &data) | 
| Sends an ATCommand asynchronously.  More... | |
| bool | setMode (const Mode mode) | 
| Sets the XBee's mode.  More... | |
| Mode | mode () const | 
| Returns the XBee's mode.  More... | |
| bool | setSerialPort (const QString &serialPort) | 
| Sets the XBee's serial port, which we be used to communicate with it.  More... | |
| bool | setSerialPort (const QString &serialPort, const QSerialPort::BaudRate baudRate, const QSerialPort::DataBits dataBits, const QSerialPort::Parity parity, const QSerialPort::StopBits stopBits, const QSerialPort::FlowControl flowControl) | 
| Configures the serial port used to communicate with the XBee.  More... | |
| bool | setSerialPortConfiguration (const QSerialPort::BaudRate baudRate, const QSerialPort::DataBits dataBits, const QSerialPort::Parity parity, const QSerialPort::StopBits stopBits, const QSerialPort::FlowControl flowControl) | 
| Configures the serial port used to communicate with the XBee.  More... | |
| bool | setDH (const quint32 dh) | 
| bool | setDL (const quint32 dl) | 
| bool | setMY (const quint16 my) | 
| bool | setMP (const quint16 mp) | 
| bool | setNC (const quint32 nc) | 
| bool | setSH (const quint32 sh) | 
| bool | setSL (const quint32 sl) | 
| bool | setNI (const QString &ni) | 
| bool | setSE (const quint8 se) | 
| bool | setDE (const quint8 de) | 
| bool | setCI (const quint8 ci) | 
| bool | setTO (const quint8 to) | 
| bool | setNP (const quint8 np) | 
| bool | setDD (const quint16 dd) | 
| bool | setCR (const quint8 cr) | 
| quint32 | DH () const | 
| quint32 | DL () const | 
| quint16 | MY () const | 
| quint16 | MP () const | 
| quint32 | NC () const | 
| quint32 | SH () const | 
| quint32 | SL () const | 
| QString | NI () const | 
| quint8 | SE () const | 
| quint8 | DE () const | 
| quint8 | CI () const | 
| quint8 | TO () const | 
| quint8 | NO () const | 
| quint16 | DD () const | 
| quint8 | CR () const | 
Detailed Description
The XBee class is used to represents the local XBee.
You can :
- Open/Close and configure the serial interface
- Get/Set all XBee's parameters
- Send/Receive packets to/from other remote XBees
- Todo:
- What to do when the XBee is in XBee::CommandMode at the user wants to send API packets ? Auto switch to the correct mode ? Stay in QtXBee::XBee::CommandMode and do nothing but warn the user ?
- Note
- The whole QtXBee lib is mainly designed to work in API Mode
Member Enumeration Documentation
| enum QtXBee::XBee::Mode | 
| Enumerator | |
|---|---|
| CommandMode | Command mode. This mode is used to configure the XBee module. Once the mode is set to CommandMode, you need to send the command '+++' | 
| API1Mode | API Operation (AP=1) | 
| API2Mode | API Operation with escaped characters (AP=2) | 
Constructor & Destructor Documentation
| 
 | explicit | 
| QtXBee::XBee::XBee | ( | const QString & | serialPort, | 
| QObject * | parent = 0 | ||
| ) | 
XBee's constructor.
Allocates and initializes all parameters to there default values and try to open the serial port specified in argument.
- Parameters
- 
  serialPort serial port path (eg. /dev/ttyUSB0) on with the XBee is plugged. parent parent object 
- Note
- In this case, the serial port configuration will ba set to :- Baud Rate : 9600
- Data Bits : 8 bits
- Parity : No
- Stop Bits : One stop bit
- Flow Control : No flow control
 
Member Function Documentation
| bool QtXBee::XBee::applyDefaultSerialPortConfig | ( | ) | 
Applies the default configuration to the serial port.
- Baud Rate : 9600
- Data Bits : 8 bits
- Parity : No
- Stop Bits : One stop bit
- Flow Control : No flow control
- Note
- You serial port must be set before calling this method
- Returns
- true if succeeded; false otherwise.
- See Also
- XBee::setSerialPort()
| 
 | signal | 
Emitted when CI property changes.
- See Also
- XBee::setCI()
- XBee::CI()
| 
 | slot | 
Closes the XBee' serial port.
- Returns
- true if succeeded; false otherwise
| 
 | signal | 
Emitted when CR property changes.
- See Also
- XBee::setCR()
- XBee::CR()
| 
 | signal | 
Emitted when DD property changes.
- See Also
- XBee::setDD()
- XBee::DD()
| 
 | signal | 
Emitted when DE property changes.
- See Also
- XBee::setDE()
- XBee::DE()
| 
 | signal | 
Emitted when DH property changes.
- See Also
- XBee::setDH()
- XBee::DH()
| 
 | signal | 
Emitted when DL property changes.
- See Also
- XBee::setDL()
- XBee::DL()
| 
 | slot | 
Loads the XBee's addressing properties.
- DH
- DL
- MY
- MP
- NC
- SH
- SL
- NI
- SE
- DE
- CI
- TO
- NP
- DD
- CR
| XBee::Mode QtXBee::XBee::mode | ( | ) | const | 
| 
 | signal | 
Emitted when MP property changes.
- See Also
- XBee::setMP()
- XBee::MP()
| 
 | signal | 
Emitted when MY property changes.
- See Also
- XBee::setMY()
- XBee::MY()
| 
 | signal | 
Emitted when NC property changes.
- See Also
- XBee::setNC()
- XBee::NC()
| 
 | signal | 
Emitted when NI property changes.
- See Also
- XBee::setNI()
- XBee::NI()
| 
 | signal | 
Emitted when NP property changes.
- See Also
- XBee::setNP()
- XBee::NP()
| 
 | slot | 
Opens the XBee' serial port.
- Returns
- true if succeeded; false otherwise.
- See Also
- XBee::close()
- XBee::setSerialPort()
| 
 | signal | 
Emitted when raw data are received on the serial port (only in XBee::CommandMode).
- See Also
- XBee::setMode()
- XBee::Mode
| 
 | signal | 
Emitted when SE property changes.
- See Also
- XBee::setSE()
- XBee::SE()
| void QtXBee::XBee::sendAsync | ( | XBeePacket * | packet | ) | 
Sends asynchronously the given packet.
- Parameters
- 
  packet the packet to send. 
- Note
- A signal (corresponding the given packet) will be emitted when a response is received.
For example, if the given packet is an ATCommand, the XBee::receivedATCommandResponse() will be emitted.
| void QtXBee::XBee::sendATCommandAsync | ( | ATCommand * | command | ) | 
Sends an ATCommand asynchronously.
The XBee::receivedATCommandResponse() signal will be emmited when a response to the sent ATCommand is received.
- Parameters
- 
  command 
| void QtXBee::XBee::sendATCommandAsync | ( | const QByteArray & | data | ) | 
Sends an ATCommand asynchronously.
The XBee::receivedATCommandResponse() signal will be emmited when a response to the sent ATCommand is received.
- Parameters
- 
  command 
- Note
- This method is not implemented yet
- Todo:
- Implement this method
| ATCommandResponse * QtXBee::XBee::sendATCommandSync | ( | ATCommand * | command | ) | 
Sends an ATCommand synchronously.
- Parameters
- 
  command 
- Returns
- the corresponding ATCommandResponse; or null.
- Note
- XBee don't take the ATCommandResponse's ownership, you have to.
| ATCommandResponse * QtXBee::XBee::sendATCommandSync | ( | const QByteArray & | atcommand | ) | 
Sends an ATCommand synchronously.
- Parameters
- 
  atcommand 
- Returns
- the corresponding ATCommandResponse; or null.
- Note
- XBee don't take the ATCommandResponse's ownership, you have to.
| bool QtXBee::XBee::sendCommandAsync | ( | const QByteArray & | command | ) | 
Sends asynchronously the given command in command mode.
To put the module in command mode, you need first to send '+++' When a response is received, the signal rawDataReceived() will be emitted.
- Parameters
- 
  command the command to send 
- Returns
- true if succeeded; false otherwise.
- Note
- The XBee must be in XBee::CommandMode,
- See Also
- XBee::setMode()
| QByteArray QtXBee::XBee::sendCommandSync | ( | const QByteArray & | command | ) | 
Sends synchronously the given command using in command mode.
To put the module in command mode, you need first to send '+++'
- Parameters
- 
  command the command to send 
- Returns
- the response (the read data from the serial port are appended until the last received character is <CR> (0x0D))
- Note
- The XBee must be in XBee::CommandMode
- See Also
- XBee::setMode()
| XBeeResponse * QtXBee::XBee::sendSync | ( | XBeePacket * | packet | ) | 
Sends synchronously the given packet.
- Parameters
- 
  packet the packet to send. 
- Return values
- 
  the associated XBeeResponse in case of success NULL if failed 
- Note
- XBee don't take the XBeeResponse's ownership, you have to.
| bool QtXBee::XBee::setMode | ( | const Mode | mode | ) | 
Sets the XBee's mode.
- Parameters
- 
  mode 
- Returns
- true if succeeded; false otherwise.
- See Also
- XBee::Mode
- XBee::mode()
| bool QtXBee::XBee::setSerialPort | ( | const QString & | serialPort | ) | 
Sets the XBee's serial port, which we be used to communicate with it.
- Note
- Default serial port will be used :- Baud Rate : 9600
- Data Bits : 8 bits
- Parity : No
- Stop Bits : One stop bit
- Flow Control : No flow control
 
- Parameters
- 
  serialPort path to the serial port 
- Returns
- true if succeeded; false otherwise
| bool QtXBee::XBee::setSerialPort | ( | const QString & | serialPort, | 
| const QSerialPort::BaudRate | baudRate, | ||
| const QSerialPort::DataBits | dataBits, | ||
| const QSerialPort::Parity | parity, | ||
| const QSerialPort::StopBits | stopBits, | ||
| const QSerialPort::FlowControl | flowControl | ||
| ) | 
Configures the serial port used to communicate with the XBee.
- Parameters
- 
  serialPort path to the serial port baudRate the baud rate dataBits the data bits parity the parity stopBits the stop bits flowControl the flow control 
- Returns
- true if succeeded; false otherwise
| bool QtXBee::XBee::setSerialPortConfiguration | ( | const QSerialPort::BaudRate | baudRate, | 
| const QSerialPort::DataBits | dataBits, | ||
| const QSerialPort::Parity | parity, | ||
| const QSerialPort::StopBits | stopBits, | ||
| const QSerialPort::FlowControl | flowControl | ||
| ) | 
Configures the serial port used to communicate with the XBee.
- Note
- This method must be called after have defining the serial port
- Parameters
- 
  baudRate the baud rate dataBits the data bits parity the parity stopBits the stop bits flowControl the flow control 
- Returns
- true if succeeded; false otherwise.
- See Also
- XBee::setSerialPort()
| 
 | signal | 
Emitted when SH property changes.
- See Also
- XBee::setSH()
- XBee::SH()
| 
 | signal | 
Emitted when SL property changes.
- See Also
- XBee::setSL()
- XBee::SL()
| 
 | signal | 
Emitted when TO property changes.
- See Also
- XBee::setTO()
- XBee::TO()
The documentation for this class was generated from the following files:
- /home/thomas/Projects/QtXBee/src/qtxb/xbee.h
- /home/thomas/Projects/QtXBee/src/qtxb/xbee.cpp
- pages/xbee.dox
 
          
          
 1.8.3.1
 1.8.3.1