All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Loading...
Searching...
No Matches
lwmac.h File Reference

Interface definition for the LWMAC protocol. More...

Detailed Description

Interface definition for the LWMAC protocol.

Author
Daniel Krebs githu.nosp@m.b@da.nosp@m.niel-.nosp@m.kreb.nosp@m.s.net
Shuguo Zhuo shugu.nosp@m.o.zh.nosp@m.uo@in.nosp@m.ria..nosp@m.fr

Definition in file lwmac.h.

#include "net/gnrc/netif.h"
+ Include dependency graph for lwmac.h:

Go to the source code of this file.

Macros

#define CONFIG_GNRC_LWMAC_WAKEUP_INTERVAL_US   (200LU *US_PER_MS)
 Time between consecutive wake-ups.
 
#define GNRC_LWMAC_PREAMBLE_DURATION_US   ((13LU * CONFIG_GNRC_LWMAC_WAKEUP_INTERVAL_US) / 10)
 The Maximum WR (preamble packet gnrc_lwmac_frame_wr_t) duration time.
 
#define CONFIG_GNRC_LWMAC_TIME_BETWEEN_WR_US   (5U *US_PER_MS)
 Timeout to send the next WR in case no WA has been received during that time.
 
#define GNRC_LWMAC_WAKEUP_DURATION_US   (CONFIG_GNRC_LWMAC_TIME_BETWEEN_WR_US * 2)
 How long a node in LWMAC should keep awake and listen on the channel in one cycle.
 
#define GNRC_LWMAC_BROADCAST_DURATION_US   ((CONFIG_GNRC_LWMAC_WAKEUP_INTERVAL_US * 11) / 10)
 How long broadcast packets gnrc_lwmac_frame_broadcast_t will be sent to make sure every participant has received at least one copy.
 
#define GNRC_LWMAC_TIME_BETWEEN_BROADCAST_US   (CONFIG_GNRC_LWMAC_TIME_BETWEEN_WR_US)
 Time to idle between two successive broadcast packets, referenced to the start of the packet.
 
#define CONFIG_GNRC_LWMAC_WR_PREPARATION_US   ((3U *US_PER_MS))
 WR preparation overhead before it can be sent (higher with debugging output).
 
#define CONFIG_GNRC_LWMAC_DATA_DELAY_US   (10U *US_PER_MS)
 How long to wait after a WA for data to come in.
 
#define CONFIG_GNRC_LWMAC_DATA_CSMA_RETRIES   (3U)
 CSMA retries for DATA packet after WR->WA was successful.
 
#define CONFIG_GNRC_LWMAC_MAX_DATA_TX_RETRIES   (3U)
 Maximum TX transmission retries for DATA packet in case of no response from the receiver.
 
#define GNRC_LWMAC_MAX_TX_BURST_PKT_NUM    (CONFIG_GNRC_LWMAC_WAKEUP_INTERVAL_US / GNRC_LWMAC_WAKEUP_DURATION_US)
 MAX burst transmission packet number in one shot.
 
#define CONFIG_GNRC_LWMAC_MAX_RX_EXTENSION_NUM   (3U)
 MAX bad Listen period extensions a node can tolerate.
 
#define CONFIG_GNRC_LWMAC_BROADCAST_CSMA_RETRIES   (3U)
 CSMA retries for broadcast packet.
 
#define CONFIG_GNRC_LWMAC_RADIO_REINIT_THRESHOLD   (10U)
 Maximum preamble attempts before re-initialize radio in LWMAC.
 

Functions

int gnrc_netif_lwmac_create (gnrc_netif_t *netif, char *stack, int stacksize, char priority, const char *name, netdev_t *dev)
 Creates an IEEE 802.15.4 LWMAC network interface.