GNRC LoRaWAN API definition. More...
GNRC LoRaWAN API definition.
Definition in file lorawan.h.
Go to the source code of this file.
Data Structures | |
struct | mlme_mib_t |
MAC Information Base descriptor for MLME Request-Confirm. More... | |
struct | mlme_request_t |
MAC (sub) Layer Management Entity (MLME) request representation. More... | |
struct | mcps_request_t |
Mac Common Part Sublayer (MCPS) request representation. More... | |
struct | mlme_confirm_t |
MAC (sub) Layer Management Entity (MLME) confirm representation. More... | |
struct | mcps_confirm_t |
Mac Common Part Sublayer (MCPS) confirm representation. More... | |
struct | mcps_indication_t |
Mac Common Part Sublayer (MCPS) indication representation. More... | |
struct | mlme_indication_t |
MAC (sub) Layer Management Entity (MLME) indication representation. More... | |
Macros | |
#define | CONFIG_GNRC_LORAWAN_MIN_SYMBOLS_TIMEOUT 30 |
the minimum symbols to detect a LoRa preamble | |
#define | GNRC_LORAWAN_REQ_STATUS_SUCCESS (0) |
MLME or MCPS request successful status. | |
#define | GNRC_LORAWAN_REQ_STATUS_DEFERRED (1) |
the MLME or MCPS confirm message is asynchronous | |
Enumerations | |
enum | mcps_event_t { MCPS_EVENT_RX , MCPS_EVENT_NO_RX } |
MCPS events. More... | |
enum | mlme_activation_t { MLME_ACTIVATION_NONE , MLME_ACTIVATION_ABP , MLME_ACTIVATION_OTAA } |
LoRaWAN activation mechanism. More... | |
enum | mlme_mib_type_t { MIB_ACTIVATION_METHOD , MIB_DEV_ADDR , MIB_RX2_DR } |
MAC Information Base attributes. More... | |
enum | mlme_type_t { MLME_JOIN , MLME_LINK_CHECK , MLME_RESET , MLME_SET , MLME_GET , MLME_SCHEDULE_UPLINK } |
MLME primitive types. More... | |
enum | mcps_type_t { MCPS_CONFIRMED , MCPS_UNCONFIRMED } |
MCPS primitive types. More... | |
Functions | |
void | gnrc_lorawan_radio_rx_timeout_cb (gnrc_lorawan_t *mac) |
Indicate the MAC layer there was a timeout event. | |
void | gnrc_lorawan_radio_tx_done_cb (gnrc_lorawan_t *mac) |
Indicate the MAC layer when the transmission finished. | |
static void | gnrc_lorawan_radio_rx_error_cb (gnrc_lorawan_t *mac) |
Indicate the MAC layer reception of a frame went wrong. | |
void | gnrc_lorawan_timeout_cb (gnrc_lorawan_t *mac) |
Indicate the MAC layer that the timer was fired. | |
void | gnrc_lorawan_init (gnrc_lorawan_t *mac, uint8_t *joineui, const gnrc_lorawan_key_ctx_t *ctx) |
Init GNRC LoRaWAN. | |
void | gnrc_lorawan_mlme_request (gnrc_lorawan_t *mac, const mlme_request_t *mlme_request, mlme_confirm_t *mlme_confirm) |
Perform a MLME request. | |
void | gnrc_lorawan_mcps_request (gnrc_lorawan_t *mac, const mcps_request_t *mcps_request, mcps_confirm_t *mcps_confirm) |
Perform a MCPS request. | |
void | gnrc_lorawan_radio_rx_done_cb (gnrc_lorawan_t *mac, uint8_t *data, size_t size) |
Fetch a LoRaWAN packet from the radio. | |
void | gnrc_lorawan_mcps_indication (gnrc_lorawan_t *mac, mcps_indication_t *ind) |
MCPS indication callback. | |
void | gnrc_lorawan_mlme_indication (gnrc_lorawan_t *mac, mlme_indication_t *ind) |
MLME indication callback. | |
void | gnrc_lorawan_mcps_confirm (gnrc_lorawan_t *mac, mcps_confirm_t *confirm) |
MCPS Confirm callback. | |
void | gnrc_lorawan_mlme_confirm (gnrc_lorawan_t *mac, mlme_confirm_t *confirm) |
MLME confirm callback. | |
netdev_t * | gnrc_lorawan_get_netdev (gnrc_lorawan_t *mac) |
Get netdev pointer from mac descriptor. | |
int | gnrc_lorawan_phy_set_channel_mask (gnrc_lorawan_t *mac, uint16_t channel_mask) |
Set the channel mask in order to enable or disable LoRaWAN channels. | |
void | gnrc_lorawan_set_timer (gnrc_lorawan_t *mac, uint32_t us) |
Set a timer with the given time. | |
void | gnrc_lorawan_remove_timer (gnrc_lorawan_t *mac) |
Remove the current timer. | |
static void | gnrc_lorawan_set_uncnf_redundancy (gnrc_lorawan_t *mac, uint8_t redundancy) |
Set unconfirmed uplink redundancy. | |