xbee_adpt.h
1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
/*
* Copyright (C) 2016 Freie Universität Berlin
*
* This file is subject to the terms and conditions of the GNU Lesser
* General Public License v2.1. See the file LICENSE in the top level
* directory for more details.
*/
/**
* @ingroup net_gnrc_netdev
* @{
*
* @file
* @brief GNRC to XBee netdev glue code interface
*
* Although the XBee devices are IEEE802.15.4 transceivers, use their own
* proprietary format for communicating between the host CPU and the device over
* UART. The XBee device driver expects the data to send to be given in this
* format, hence we need to introduce an XBee specific adaption layer that
* translates between GNRC and the XBee proprietary header format.
*
* For this custom header format, we can not make use of the existing adaption
* layers for other IEEE802.15.4 devices.
*
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
*/
#ifndef NET_GNRC_NETDEV_XBEE_ADPT_H
#define NET_GNRC_NETDEV_XBEE_ADPT_H
#include "xbee.h"
#include "net/gnrc/netdev.h"
#ifdef __cplusplus
extern "C" {
#endif
/**
* @brief Initialize GNRC handler for netdev XBee devices
*
* @param[out] gnrc_netdev gnrc_netdev struct to initialize
* @param[in] dev XBee device to handle
*/
void gnrc_netdev_xbee_init(gnrc_netdev_t *gnrc_netdev, xbee_t *dev);
#ifdef __cplusplus
}
#endif
#endif /* NET_GNRC_NETDEV_XBEE_ADPT_H */
/** @} */