LoRaMAC  4.4.7
Documentation of the API
LoRaMacMessageTypes.h File Reference

LoRa MAC layer message type definitions. More...

#include <stdint.h>
#include "LoRaMacHeaderTypes.h"

Go to the source code of this file.

Data Structures

struct  LoRaMacMessageJoinRequest_t
 
struct  LoRaMacMessageReJoinType1_t
 
struct  LoRaMacMessageReJoinType0or2_t
 
struct  LoRaMacMessageJoinAccept_t
 
struct  LoRaMacMessageData_t
 
struct  LoRaMacMessage_t
 
union  LoRaMacMessage_t::uMessage
 

Enumerations

enum  LoRaMacMessageType_t {
  LORAMAC_MSG_TYPE_JOIN_REQUEST, LORAMAC_MSG_TYPE_RE_JOIN_1, LORAMAC_MSG_TYPE_RE_JOIN_0_2, LORAMAC_MSG_TYPE_JOIN_ACCEPT,
  LORAMAC_MSG_TYPE_DATA, LORAMAC_MSG_TYPE_UNDEF
}
 

Detailed Description

LoRa MAC layer message type definitions.

______ _
/ _____) _ | |
( (____ _____ ____ _| |_ _____ ____| |__
\____ \| ___ | (_ _) ___ |/ ___) _ \
_____) ) ____| | | || |_| ____( (___| | | |
(______/|_____)_|_|_| \__)_____)\____)_| |_|
(C)2013 Semtech
___ _____ _ ___ _ _____ ___ ___ ___ ___
/ __|_ _/_\ / __| |/ / __/ _ \| _ \/ __| __|
\__ \ | |/ _ \ (__| ' <| _| (_) | / (__| _|
|___/ |_/_/ \_\___|_|\_\_| \___/|_|_\\___|___|
embedded.connectivity.solutions===============
Author
Miguel Luis ( Semtech )
Gregory Cristian ( Semtech )
Daniel Jaeckle ( STACKFORCE )
Johannes Bruder ( STACKFORCE )

addtogroup LORAMAC


Data Structure Documentation

◆ LoRaMacMessageJoinRequest_t

struct LoRaMacMessageJoinRequest_t

LoRaMac type for Join-request message

Data Fields
uint8_t * Buffer

Serialized message buffer

uint8_t BufSize

Size of serialized message buffer

LoRaMacHeader_t MHDR

MAC header

uint8_t JoinEUI[LORAMAC_JOIN_EUI_FIELD_SIZE]

Join EUI

uint8_t DevEUI[LORAMAC_DEV_EUI_FIELD_SIZE]

Device EUI

uint16_t DevNonce

Device Nonce

uint32_t MIC

Message integrity code (MIC)

◆ LoRaMacMessageReJoinType1_t

struct LoRaMacMessageReJoinType1_t

LoRaMac type for rejoin-request type 1 message

Data Fields
uint8_t * Buffer

Serialized message buffer

uint8_t BufSize

Size of serialized message buffer

LoRaMacHeader_t MHDR

MAC header

uint8_t ReJoinType

Rejoin-request type ( 1 )

uint8_t JoinEUI[LORAMAC_JOIN_EUI_FIELD_SIZE]

Join EUI

uint8_t DevEUI[LORAMAC_DEV_EUI_FIELD_SIZE]

Device EUI

uint16_t RJcount1

ReJoin Type 1 counter

uint32_t MIC

Message integrity code (MIC)

◆ LoRaMacMessageReJoinType0or2_t

struct LoRaMacMessageReJoinType0or2_t

LoRaMac type for rejoin-request type 0 or 2 message

Data Fields
uint8_t * Buffer

Serialized message buffer

uint8_t BufSize

Size of serialized message buffer

LoRaMacHeader_t MHDR

MAC header

uint8_t ReJoinType

Rejoin-request type ( 0 or 2 )

uint8_t NetID[LORAMAC_NET_ID_FIELD_SIZE]

Network ID ( 3 bytes )

uint8_t DevEUI[LORAMAC_DEV_EUI_FIELD_SIZE]

Device EUI

uint16_t RJcount0

ReJoin Type 0 and 2 frame counter

uint32_t MIC

Message integrity code (MIC)

◆ LoRaMacMessageJoinAccept_t

struct LoRaMacMessageJoinAccept_t

LoRaMac type for Join-accept message

Data Fields
uint8_t * Buffer

Serialized message buffer

uint8_t BufSize

Size of serialized message buffer

LoRaMacHeader_t MHDR

MAC header

uint8_t JoinNonce[LORAMAC_JOIN_NONCE_FIELD_SIZE]

Server Nonce ( 3 bytes )

uint8_t NetID[LORAMAC_NET_ID_FIELD_SIZE]

Network ID ( 3 bytes )

uint32_t DevAddr

Device address

LoRaMacDLSettings_t DLSettings

Device address

uint8_t RxDelay

Delay between TX and RX

uint8_t CFList[16]

List of channel frequencies (opt.)

uint32_t MIC

Message integrity code (MIC)

◆ LoRaMacMessageData_t

struct LoRaMacMessageData_t

LoRaMac type for Data MAC messages (Unconfirmed Data Up, Confirmed Data Up, Unconfirmed Data Down, Confirmed Data Down)

Data Fields
uint8_t * Buffer

Serialized message buffer

uint8_t BufSize

Size of serialized message buffer

LoRaMacHeader_t MHDR

MAC header

LoRaMacFrameHeader_t FHDR

Frame header (FHDR)

uint8_t FPort

Port field (opt.)

uint8_t * FRMPayload

Frame payload may contain MAC commands or data (opt.)

uint8_t FRMPayloadSize

Size of frame payload (not included in LoRaMac messages)

uint32_t MIC

Message integrity code (MIC)

◆ LoRaMacMessage_t

struct LoRaMacMessage_t

LoRaMac general message type

Data Fields
LoRaMacMessageType_t Type
union uMessage Message

◆ LoRaMacMessage_t::uMessage

union LoRaMacMessage_t::uMessage

Enumeration Type Documentation

◆ LoRaMacMessageType_t

LoRaMac message type enumerator

Enumerator
LORAMAC_MSG_TYPE_JOIN_REQUEST 

Join-request message

LORAMAC_MSG_TYPE_RE_JOIN_1 

Rejoin-request type 1 message

LORAMAC_MSG_TYPE_RE_JOIN_0_2 

Rejoin-request type 1 message

LORAMAC_MSG_TYPE_JOIN_ACCEPT 

Join-accept message

LORAMAC_MSG_TYPE_DATA 

Data MAC messages

LORAMAC_MSG_TYPE_UNDEF 

Undefined message type