xbee.h File Reference

High-level driver for the XBee S1 802.15.4 modem. More...

Detailed Description

High-level driver for the XBee S1 802.15.4 modem.

Kévin Roussel kevin.nosp@m..rou.nosp@m.ssel@.nosp@m.inri.nosp@m.a.fr
Hauke Petersen hauke.nosp@m..pet.nosp@m.ersen.nosp@m.@fu-.nosp@m.berli.nosp@m.n.de

Definition in file xbee.h.

#include <stdint.h>
#include "mutex.h"
#include "xtimer.h"
#include "periph/uart.h"
#include "periph/gpio.h"
#include "net/netdev.h"
#include "net/ieee802154.h"
#include "net/gnrc/nettype.h"
+ Include dependency graph for xbee.h:

Go to the source code of this file.

Data Structures

struct  xbee_params_t
 Configuration parameters for XBee devices. More...
struct  xbee_t
 XBee device descriptor. More...
struct  xbee_l2hdr_t
 Data structure for extraction L2 information of received packets. More...


 Maximum payload length that can be send.
#define XBEE_MAX_PKT_LENGTH   (115U)
 Maximum packet length, including XBee API frame overhead.
#define XBEE_MAX_RESP_LENGTH   (16U)
 Maximum length of a command response.
 Maximal possible size of a TX header.
 Default protocol for data that is coming in.
 Default PAN ID used after initialization.
 Default channel used after initialization.


enum  xbee_rx_state_t {
 States of the internal FSM for handling incoming UART frames. More...


void xbee_setup (xbee_t *dev, const xbee_params_t *params)
 Prepare the given Xbee device. More...
int xbee_build_hdr (xbee_t *dev, uint8_t *xhdr, size_t payload_len, void *dst_addr, size_t addr_len)
 Put together the internal proprietary XBee header. More...
int xbee_parse_hdr (xbee_t *dev, const uint8_t *xhdr, xbee_l2hdr_t *l2hdr)
 Extract IEEE802.15.4 L2 header information from the XBee header. More...


const netdev_driver_t xbee_driver
 Reference to the XBee driver interface.

Address flags

#define XBEE_ADDR_FLAGS_LONG   (0x80)
 Use long addresses if not otherwise defined when set, use short addresses when unset.