| SX126x-Arduino 2.0.1

LoRaMac.h
Go to the documentation of this file.
1
41 #ifndef __LORAMAC_H__
42 #define __LORAMAC_H__
43
44 extern "C"
45 {
46
50 #define MAC_STATE_CHECK_TIMEOUT 250 // 1000
51
55 #define MAX_ACK_RETRIES 8
56
60 #define UP_LINK 0
61
65 #define DOWN_LINK 1
66
71 #define LORAMAC_MFR_LEN 4
72
78 #define LORA_MAC_FRMPAYLOAD_OVERHEAD 13 // MHDR(1) + FHDR(7) + Port(1) + MIC(4)
79
85 typedef enum eDeviceClass
86 {
92 CLASS_A,
98 CLASS_B,
104 CLASS_C,
105 } DeviceClass_t;
106
110 typedef union uDrRange
111 {
115 int8_t Value;
119 struct sFields
120 {
128 int8_t Min : 4;
136 int8_t Max : 4;
137 } Fields;
138 } DrRange_t;
139
143 typedef struct sBand
144 {
148 uint16_t DCycle;
152 int8_t TxMaxPower;
156 TimerTime_t LastJoinTxDoneTime;
160 TimerTime_t LastTxDoneTime;
164 TimerTime_t TimeOff;
165 } Band_t;
166
170 typedef struct sChannelParams
171 {
175 uint32_t Frequency;
179 uint32_t Rx1Frequency;
183 DrRange_t DrRange;
187 uint8_t Band;
188 } ChannelParams_t;
189
193 typedef struct sRx2ChannelParams
194 {
198 uint32_t Frequency;
206 uint8_t Datarate;
207 } Rx2ChannelParams_t;
208
212 typedef struct sLoRaMacParams
213 {
217 int8_t ChannelsTxPower;
221 int8_t ChannelsDatarate;
227 uint32_t SystemMaxRxError;
232 uint8_t MinRxSymbols;
236 uint32_t MaxRxWindow;
240 uint32_t ReceiveDelay1;
244 uint32_t ReceiveDelay2;
248 uint32_t JoinAcceptDelay1;
252 uint32_t JoinAcceptDelay2;
256 uint8_t ChannelsNbRep;
260 uint8_t Rx1DrOffset;
264 Rx2ChannelParams_t Rx2Channel;
268 uint8_t UplinkDwellTime;
272 uint8_t DownlinkDwellTime;
276 float MaxEirp;
280 float AntennaGain;
281 } LoRaMacParams_t;
282
286 typedef struct sMulticastParams
287 {
291 uint32_t Address;
295 uint8_t NwkSKey[16];
299 uint8_t AppSKey[16];
303 uint32_t DownLinkCounter;
307 struct sMulticastParams *Next;
308 } MulticastParams_t;
309
315 typedef enum eLoRaMacFrameType
316 {
320 FRAME_TYPE_JOIN_REQ = 0x00,
324 FRAME_TYPE_JOIN_ACCEPT = 0x01,
328 FRAME_TYPE_DATA_UNCONFIRMED_UP = 0x02,
332 FRAME_TYPE_DATA_UNCONFIRMED_DOWN = 0x03,
336 FRAME_TYPE_DATA_CONFIRMED_UP = 0x04,
340 FRAME_TYPE_DATA_CONFIRMED_DOWN = 0x05,
344 FRAME_TYPE_RFU = 0x06,
348 FRAME_TYPE_PROPRIETARY = 0x07,
349 } LoRaMacFrameType_t;
350
356 typedef enum eLoRaMacMoteCmd
357 {
361 MOTE_MAC_LINK_CHECK_REQ = 0x02,
365 MOTE_MAC_LINK_ADR_ANS = 0x03,
369 MOTE_MAC_DUTY_CYCLE_ANS = 0x04,
373 MOTE_MAC_RX_PARAM_SETUP_ANS = 0x05,
377 MOTE_MAC_DEV_STATUS_ANS = 0x06,
381 MOTE_MAC_NEW_CHANNEL_ANS = 0x07,
385 MOTE_MAC_RX_TIMING_SETUP_ANS = 0x08,
389 MOTE_MAC_TX_PARAM_SETUP_ANS = 0x09,
393 MOTE_MAC_DL_CHANNEL_ANS = 0x0A
394 } LoRaMacMoteCmd_t;
395
401 typedef enum eLoRaMacSrvCmd
402 {
406 SRV_MAC_LINK_CHECK_ANS = 0x02,
410 SRV_MAC_LINK_ADR_REQ = 0x03,
414 SRV_MAC_DUTY_CYCLE_REQ = 0x04,
418 SRV_MAC_RX_PARAM_SETUP_REQ = 0x05,
422 SRV_MAC_DEV_STATUS_REQ = 0x06,
426 SRV_MAC_NEW_CHANNEL_REQ = 0x07,
430 SRV_MAC_RX_TIMING_SETUP_REQ = 0x08,
434 SRV_MAC_TX_PARAM_SETUP_REQ = 0x09,
438 SRV_MAC_DL_CHANNEL_REQ = 0x0A,
439 } LoRaMacSrvCmd_t;
440
444 typedef enum eLoRaMacBatteryLevel
445 {
449 BAT_LEVEL_EXT_SRC = 0x00,
453 BAT_LEVEL_EMPTY = 0x01,
457 BAT_LEVEL_FULL = 0xFE,
461 BAT_LEVEL_NO_MEASURE = 0xFF,
462 } LoRaMacBatteryLevel_t;
463
469 typedef union uLoRaMacHeader
470 {
474 uint8_t Value;
478 struct sHdrBits
479 {
483 uint8_t Major : 2;
487 uint8_t RFU : 3;
491 uint8_t MType : 3;
492 } Bits;
493 } LoRaMacHeader_t;
494
500 typedef union uLoRaMacFrameCtrl
501 {
505 uint8_t Value;
509 struct sCtrlBits
510 {
514 uint8_t FOptsLen : 4;
518 uint8_t FPending : 1;
522 uint8_t Ack : 1;
526 uint8_t AdrAckReq : 1;
530 uint8_t Adr : 1;
531 } Bits;
532 } LoRaMacFrameCtrl_t;
533
537 typedef enum eLoRaMacEventInfoStatus
538 {
542 LORAMAC_EVENT_INFO_STATUS_OK = 0,
546 LORAMAC_EVENT_INFO_STATUS_ERROR,
550 LORAMAC_EVENT_INFO_STATUS_TX_TIMEOUT,
554 LORAMAC_EVENT_INFO_STATUS_RX1_TIMEOUT,
558 LORAMAC_EVENT_INFO_STATUS_RX2_TIMEOUT,
562 LORAMAC_EVENT_INFO_STATUS_RX1_ERROR,
566 LORAMAC_EVENT_INFO_STATUS_RX2_ERROR,
570 LORAMAC_EVENT_INFO_STATUS_JOIN_FAIL,
576 LORAMAC_EVENT_INFO_STATUS_DOWNLINK_REPEATED,
581 LORAMAC_EVENT_INFO_STATUS_TX_DR_PAYLOAD_SIZE_ERROR,
585 LORAMAC_EVENT_INFO_STATUS_DOWNLINK_TOO_MANY_FRAMES_LOSS,
589 LORAMAC_EVENT_INFO_STATUS_ADDRESS_FAIL,
593 LORAMAC_EVENT_INFO_STATUS_MIC_FAIL,
594 } LoRaMacEventInfoStatus_t;
595
599 typedef union eLoRaMacFlags_t
600 {
604 uint8_t Value;
608 struct sMacFlagBits
609 {
613 uint8_t McpsReq : 1;
617 uint8_t McpsInd : 1;
621 uint8_t McpsIndSkip : 1;
625 uint8_t MlmeReq : 1;
629 uint8_t MacDone : 1;
630 } Bits;
631 } LoRaMacFlags_t;
632
656 typedef enum eMcps
657 {
661 MCPS_UNCONFIRMED,
665 MCPS_CONFIRMED,
669 MCPS_MULTICAST,
673 MCPS_PROPRIETARY,
674 } Mcps_t;
675
679 typedef struct sMcpsReqUnconfirmed
680 {
687 uint8_t fPort;
691 void *fBuffer;
695 uint16_t fBufferSize;
699 int8_t Datarate;
700 } McpsReqUnconfirmed_t;
701
705 typedef struct sMcpsReqConfirmed
706 {
713 uint8_t fPort;
717 void *fBuffer;
721 uint16_t fBufferSize;
725 int8_t Datarate;
746 uint8_t NbTrials;
747 } McpsReqConfirmed_t;
748
752 typedef struct sMcpsReqProprietary
753 {
757 void *fBuffer;
761 uint16_t fBufferSize;
765 int8_t Datarate;
766 } McpsReqProprietary_t;
767
771 typedef struct sMcpsReq
772 {
776 Mcps_t Type;
777
781 union uMcpsParam
782 {
786 McpsReqUnconfirmed_t Unconfirmed;
790 McpsReqConfirmed_t Confirmed;
794 McpsReqProprietary_t Proprietary;
795 } Req;
796 } McpsReq_t;
797
801 typedef struct sMcpsConfirm
802 {
806 Mcps_t McpsRequest;
810 LoRaMacEventInfoStatus_t Status;
814 uint8_t Datarate;
818 int8_t TxPower;
822 bool AckReceived;
826 uint8_t NbRetries;
830 TimerTime_t TxTimeOnAir;
834 uint32_t UpLinkCounter;
838 uint32_t UpLinkFrequency;
839 } McpsConfirm_t;
840
844 typedef struct sMcpsIndication
845 {
849 Mcps_t McpsIndication;
853 LoRaMacEventInfoStatus_t Status;
857 uint8_t Multicast;
861 uint8_t Port;
865 uint8_t RxDatarate;
869 uint8_t FramePending;
873 uint8_t *Buffer;
877 uint8_t BufferSize;
881 bool RxData;
885 int16_t Rssi;
889 uint8_t Snr;
895 uint8_t RxSlot;
899 bool AckReceived;
903 uint32_t DownLinkCounter;
904 } McpsIndication_t;
905
926 typedef enum eMlme
927 {
933 MLME_JOIN,
939 MLME_LINK_CHECK,
945 MLME_TXCW,
951 MLME_TXCW_1,
952 } Mlme_t;
953
957 typedef struct sMlmeReqJoin
958 {
964 uint8_t *DevEui;
970 uint8_t *AppEui;
976 uint8_t *AppKey;
980 uint8_t NbTrials;
981 } MlmeReqJoin_t;
982
986 typedef struct sMlmeReqTxCw
987 {
991 uint16_t Timeout;
995 uint32_t Frequency;
999 uint8_t Power;
1000 } MlmeReqTxCw_t;
1001
1005 typedef struct sMlmeReq
1006 {
1010 Mlme_t Type;
1011
1015 union uMlmeParam
1016 {
1020 MlmeReqJoin_t Join;
1024 MlmeReqTxCw_t TxCw;
1025 } Req;
1026 } MlmeReq_t;
1027
1031 typedef struct sMlmeConfirm
1032 {
1036 Mlme_t MlmeRequest;
1040 LoRaMacEventInfoStatus_t Status;
1044 TimerTime_t TxTimeOnAir;
1049 uint8_t DemodMargin;
1053 uint8_t NbGateways;
1057 uint8_t NbRetries;
1058 } MlmeConfirm_t;
1059
1105 typedef enum eMib
1106 {
1112 MIB_DEVICE_CLASS,
1118 MIB_NETWORK_JOINED,
1126 MIB_ADR,
1132 MIB_NET_ID,
1138 MIB_DEV_ADDR,
1144 MIB_NWK_SKEY,
1150 MIB_APP_SKEY,
1158 MIB_PUBLIC_NETWORK,
1166 MIB_REPEATER_SUPPORT,
1174 MIB_CHANNELS,
1180 MIB_RX2_CHANNEL,
1186 MIB_RX2_DEFAULT_CHANNEL,
1192 MIB_CHANNELS_MASK,
1198 MIB_CHANNELS_DEFAULT_MASK,
1204 MIB_CHANNELS_NB_REP,
1210 MIB_MAX_RX_WINDOW_DURATION,
1216 MIB_RECEIVE_DELAY_1,
1222 MIB_RECEIVE_DELAY_2,
1228 MIB_JOIN_ACCEPT_DELAY_1,
1234 MIB_JOIN_ACCEPT_DELAY_2,
1242 MIB_CHANNELS_DEFAULT_DATARATE,
1250 MIB_CHANNELS_DATARATE,
1258 MIB_CHANNELS_TX_POWER,
1266 MIB_CHANNELS_DEFAULT_TX_POWER,
1272 MIB_UPLINK_COUNTER,
1278 MIB_DOWNLINK_COUNTER,
1284 MIB_MULTICAST_CHANNEL,
1290 MIB_SYSTEM_MAX_RX_ERROR,
1295 MIB_MIN_RX_SYMBOLS,
1302 MIB_ANTENNA_GAIN
1303 } Mib_t;
1304
1308 typedef enum eJoinStatus
1309 {
1310 JOIN_NOT_START,
1311 JOIN_OK,
1312 JOIN_ONGOING,
1313 JOIN_FAILED
1314 } eJoinStatus_t;
1315
1319 typedef union uMibParam
1320 {
1326 DeviceClass_t Class;
1332 eJoinStatus_t IsNetworkJoined;
1338 bool AdrEnable;
1344 uint32_t NetID;
1350 uint32_t DevAddr;
1356 uint8_t *NwkSKey;
1362 uint8_t *AppSKey;
1368 bool EnablePublicNetwork;
1374 bool EnableRepeaterSupport;
1380 ChannelParams_t *ChannelList;
1386 Rx2ChannelParams_t Rx2Channel;
1392 Rx2ChannelParams_t Rx2DefaultChannel;
1398 uint16_t *ChannelsMask;
1404 uint16_t *ChannelsDefaultMask;
1410 uint8_t ChannelNbRep;
1416 uint32_t MaxRxWindow;
1422 uint32_t ReceiveDelay1;
1428 uint32_t ReceiveDelay2;
1434 uint32_t JoinAcceptDelay1;
1440 uint32_t JoinAcceptDelay2;
1446 int8_t ChannelsDefaultDatarate;
1452 int8_t ChannelsDatarate;
1458 int8_t ChannelsDefaultTxPower;
1464 int8_t ChannelsTxPower;
1470 uint32_t UpLinkCounter;
1476 uint32_t DownLinkCounter;
1482 MulticastParams_t *MulticastList;
1488 uint32_t SystemMaxRxError;
1494 uint8_t MinRxSymbols;
1500 float AntennaGain;
1501 } MibParam_t;
1502
1506 typedef struct eMibRequestConfirm
1507 {
1511 Mib_t Type;
1512
1516 MibParam_t Param;
1517 } MibRequestConfirm_t;
1518
1522 typedef struct sLoRaMacTxInfo
1523 {
1527 uint8_t MaxPossiblePayload;
1531 uint8_t CurrentPayloadSize;
1532 } LoRaMacTxInfo_t;
1533
1537 typedef enum eLoRaMacStatus
1538 {
1542 LORAMAC_STATUS_OK,
1546 LORAMAC_STATUS_BUSY,
1550 LORAMAC_STATUS_SERVICE_UNKNOWN,
1554 LORAMAC_STATUS_PARAMETER_INVALID,
1558 LORAMAC_STATUS_FREQUENCY_INVALID,
1562 LORAMAC_STATUS_DATARATE_INVALID,
1566 LORAMAC_STATUS_FREQ_AND_DR_INVALID,
1570 LORAMAC_STATUS_NO_NETWORK_JOINED,
1574 LORAMAC_STATUS_LENGTH_ERROR,
1578 LORAMAC_STATUS_DEVICE_OFF,
1583 LORAMAC_STATUS_REGION_NOT_SUPPORTED
1584 } LoRaMacStatus_t;
1585
1589 typedef enum eLoRaMacRegion_t
1590 {
1594 LORAMAC_REGION_AS923,
1598 LORAMAC_REGION_AU915,
1602 LORAMAC_REGION_CN470,
1606 LORAMAC_REGION_CN779,
1610 LORAMAC_REGION_EU433,
1614 LORAMAC_REGION_EU868,
1618 LORAMAC_REGION_KR920,
1622 LORAMAC_REGION_IN865,
1626 LORAMAC_REGION_US915,
1630 LORAMAC_REGION_AS923_2,
1634 LORAMAC_REGION_AS923_3,
1638 LORAMAC_REGION_AS923_4,
1642 LORAMAC_REGION_RU864,
1643 } LoRaMacRegion_t;
1644
1645 extern LoRaMacRegion_t LoRaMacRegion;
1650 typedef struct sLoRaMacPrimitives
1651 {
1657 void (*MacMcpsConfirm)(McpsConfirm_t *McpsConfirm);
1663 void (*MacMcpsIndication)(McpsIndication_t *McpsIndication);
1669 void (*MacMlmeConfirm)(MlmeConfirm_t *MlmeConfirm);
1670 } LoRaMacPrimitives_t;
1671
1675 typedef struct sLoRaMacCallback
1676 {
1685 uint8_t (*GetBatteryLevel)(void);
1686 } LoRaMacCallback_t;
1687
1691 static const uint8_t LoRaMacMaxEirpTable[] = {8, 10, 12, 13, 14, 16, 18, 20, 21, 24, 26, 27, 29, 30, 33, 36};
1692
1717 LoRaMacStatus_t LoRaMacInitialization(LoRaMacPrimitives_t *primitives, LoRaMacCallback_t *callbacks, LoRaMacRegion_t region, eDeviceClass nodeClass = CLASS_A);
1718
1725 uint32_t LoRaMacGetOTAADevId(void);
1726
1750 LoRaMacStatus_t LoRaMacQueryTxPossible(uint8_t size, LoRaMacTxInfo_t *txInfo);
1751
1768 LoRaMacStatus_t LoRaMacChannelAdd(uint8_t id, ChannelParams_t params);
1769
1782 LoRaMacStatus_t LoRaMacChannelRemove(uint8_t id);
1783
1796 LoRaMacStatus_t LoRaMacMulticastChannelLink(MulticastParams_t *channelParam);
1797
1810 LoRaMacStatus_t LoRaMacMulticastChannelUnlink(MulticastParams_t *channelParam);
1811
1838 LoRaMacStatus_t LoRaMacMibGetRequestConfirm(MibRequestConfirm_t *mibGet);
1839
1869 LoRaMacStatus_t LoRaMacMibSetRequestConfirm(MibRequestConfirm_t *mibSet);
1870
1916 LoRaMacStatus_t LoRaMacMlmeRequest(MlmeReq_t *mlmeRequest);
1917
1951 LoRaMacStatus_t LoRaMacMcpsRequest(McpsReq_t *mcpsRequest);
1952
1954 };
1955 #endif // __LORAMAC_H__
sLoRaMacTxInfo::MaxPossiblePayload
uint8_t MaxPossiblePayload
Definition: LoRaMac.h:1527
LORAMAC_STATUS_NO_NETWORK_JOINED
@ LORAMAC_STATUS_NO_NETWORK_JOINED
Definition: LoRaMac.h:1570
sMcpsIndication::RxDatarate
uint8_t RxDatarate
Definition: LoRaMac.h:865
uLoRaMacHeader
Definition: LoRaMac.h:470
eMibRequestConfirm::Param
MibParam_t Param
Definition: LoRaMac.h:1516
sMlmeReq::Req
union sMlmeReq::uMlmeParam Req
MIB_DEV_ADDR
@ MIB_DEV_ADDR
Definition: LoRaMac.h:1138
sMcpsReqConfirmed
Definition: LoRaMac.h:706
BAT_LEVEL_FULL
@ BAT_LEVEL_FULL
Definition: LoRaMac.h:457
eLoRaMacFlags_t::Value
uint8_t Value
Definition: LoRaMac.h:604
sLoRaMacParams::SystemMaxRxError
uint32_t SystemMaxRxError
Definition: LoRaMac.h:227
sMlmeReq::uMlmeParam::Join
MlmeReqJoin_t Join
Definition: LoRaMac.h:1020
sLoRaMacParams::UplinkDwellTime
uint8_t UplinkDwellTime
Definition: LoRaMac.h:268
sBand
Definition: LoRaMac.h:144
LORAMAC_STATUS_BUSY
@ LORAMAC_STATUS_BUSY
Definition: LoRaMac.h:1546
sMcpsReq::uMcpsParam
Definition: LoRaMac.h:782
sLoRaMacParams::DownlinkDwellTime
uint8_t DownlinkDwellTime
Definition: LoRaMac.h:272
sLoRaMacTxInfo::CurrentPayloadSize
uint8_t CurrentPayloadSize
Definition: LoRaMac.h:1531
uMibParam::AdrEnable
bool AdrEnable
Definition: LoRaMac.h:1338
MOTE_MAC_RX_TIMING_SETUP_ANS
@ MOTE_MAC_RX_TIMING_SETUP_ANS
Definition: LoRaMac.h:385
FRAME_TYPE_DATA_CONFIRMED_UP
@ FRAME_TYPE_DATA_CONFIRMED_UP
Definition: LoRaMac.h:336
uMibParam
Definition: LoRaMac.h:1320
MOTE_MAC_TX_PARAM_SETUP_ANS
@ MOTE_MAC_TX_PARAM_SETUP_ANS
Definition: LoRaMac.h:389
MulticastParams_t
struct sMulticastParams MulticastParams_t
sMcpsConfirm::AckReceived
bool AckReceived
Definition: LoRaMac.h:822
sMcpsReqConfirmed::fBuffer
void * fBuffer
Definition: LoRaMac.h:717
MLME_JOIN
@ MLME_JOIN
Definition: LoRaMac.h:933
LoRaMacMcpsRequest
LoRaMacStatus_t LoRaMacMcpsRequest(McpsReq_t *mcpsRequest)
LoRaMAC MCPS-Request.
Definition: LoRaMac.cpp:3284
FRAME_TYPE_DATA_UNCONFIRMED_DOWN
@ FRAME_TYPE_DATA_UNCONFIRMED_DOWN
Definition: LoRaMac.h:332
uMibParam::DevAddr
uint32_t DevAddr
Definition: LoRaMac.h:1350
uLoRaMacHeader::Bits
struct uLoRaMacHeader::sHdrBits Bits
LoRaMacStatus_t
enum eLoRaMacStatus LoRaMacStatus_t
MIB_CHANNELS_MASK
@ MIB_CHANNELS_MASK
Definition: LoRaMac.h:1192
sMcpsReq::uMcpsParam::Unconfirmed
McpsReqUnconfirmed_t Unconfirmed
Definition: LoRaMac.h:786
MlmeConfirm_t
struct sMlmeConfirm MlmeConfirm_t
Rx2ChannelParams_t
struct sRx2ChannelParams Rx2ChannelParams_t
uMibParam::AntennaGain
float AntennaGain
Definition: LoRaMac.h:1500
uLoRaMacFrameCtrl::Bits
struct uLoRaMacFrameCtrl::sCtrlBits Bits
LoRaMacFrameCtrl_t
union uLoRaMacFrameCtrl LoRaMacFrameCtrl_t
sBand::LastJoinTxDoneTime
TimerTime_t LastJoinTxDoneTime
Definition: LoRaMac.h:156
LORAMAC_EVENT_INFO_STATUS_ERROR
@ LORAMAC_EVENT_INFO_STATUS_ERROR
Definition: LoRaMac.h:546
sBand::TimeOff
TimerTime_t TimeOff
Definition: LoRaMac.h:164
LORAMAC_REGION_RU864
@ LORAMAC_REGION_RU864
Definition: LoRaMac.h:1642
sLoRaMacParams::JoinAcceptDelay2
uint32_t JoinAcceptDelay2
Definition: LoRaMac.h:252
sMlmeReqTxCw
Definition: LoRaMac.h:987
sMcpsReqUnconfirmed::Datarate
int8_t Datarate
Definition: LoRaMac.h:699
MlmeConfirm
static MlmeConfirm_t MlmeConfirm
Definition: LoRaMac.cpp:402
MIB_ANTENNA_GAIN
@ MIB_ANTENNA_GAIN
Definition: LoRaMac.h:1302
sMcpsReq::Req
union sMcpsReq::uMcpsParam Req
LORAMAC_STATUS_PARAMETER_INVALID
@ LORAMAC_STATUS_PARAMETER_INVALID
Definition: LoRaMac.h:1554
uMibParam::UpLinkCounter
uint32_t UpLinkCounter
Definition: LoRaMac.h:1470
sLoRaMacPrimitives
Definition: LoRaMac.h:1651
sLoRaMacParams::ReceiveDelay2
uint32_t ReceiveDelay2
Definition: LoRaMac.h:244
eMlme
eMlme
LoRaMAC management services.
Definition: LoRaMac.h:927
uDrRange::sFields::Min
int8_t Min
Definition: LoRaMac.h:128
uDrRange::sFields::Max
int8_t Max
Definition: LoRaMac.h:136
MIB_SYSTEM_MAX_RX_ERROR
@ MIB_SYSTEM_MAX_RX_ERROR
Definition: LoRaMac.h:1290
sMlmeReqJoin::NbTrials
uint8_t NbTrials
Definition: LoRaMac.h:980
sLoRaMacCallback::GetBatteryLevel
uint8_t(* GetBatteryLevel)(void)
Measures the battery level.
Definition: LoRaMac.h:1685
McpsIndication_t
struct sMcpsIndication McpsIndication_t
eLoRaMacFlags_t::sMacFlagBits::MacDone
uint8_t MacDone
Definition: LoRaMac.h:629
MIB_PUBLIC_NETWORK
@ MIB_PUBLIC_NETWORK
Definition: LoRaMac.h:1158
SRV_MAC_LINK_CHECK_ANS
@ SRV_MAC_LINK_CHECK_ANS
Definition: LoRaMac.h:406
uLoRaMacFrameCtrl::sCtrlBits::FPending
uint8_t FPending
Definition: LoRaMac.h:518
McpsReqConfirmed_t
struct sMcpsReqConfirmed McpsReqConfirmed_t
LORAMAC_EVENT_INFO_STATUS_RX2_ERROR
@ LORAMAC_EVENT_INFO_STATUS_RX2_ERROR
Definition: LoRaMac.h:566
MIB_NET_ID
@ MIB_NET_ID
Definition: LoRaMac.h:1132
eMibRequestConfirm::Type
Mib_t Type
Definition: LoRaMac.h:1511
FRAME_TYPE_PROPRIETARY
@ FRAME_TYPE_PROPRIETARY
Definition: LoRaMac.h:348
MIB_CHANNELS_NB_REP
@ MIB_CHANNELS_NB_REP
Definition: LoRaMac.h:1204
sLoRaMacParams::ChannelsTxPower
int8_t ChannelsTxPower
Definition: LoRaMac.h:217
McpsReqUnconfirmed_t
struct sMcpsReqUnconfirmed McpsReqUnconfirmed_t
MOTE_MAC_DUTY_CYCLE_ANS
@ MOTE_MAC_DUTY_CYCLE_ANS
Definition: LoRaMac.h:369
MOTE_MAC_LINK_ADR_ANS
@ MOTE_MAC_LINK_ADR_ANS
Definition: LoRaMac.h:365
uMibParam::MaxRxWindow
uint32_t MaxRxWindow
Definition: LoRaMac.h:1416
LORAMAC_EVENT_INFO_STATUS_TX_TIMEOUT
@ LORAMAC_EVENT_INFO_STATUS_TX_TIMEOUT
Definition: LoRaMac.h:550
sMlmeConfirm
Definition: LoRaMac.h:1032
MIB_MAX_RX_WINDOW_DURATION
@ MIB_MAX_RX_WINDOW_DURATION
Definition: LoRaMac.h:1210
eLoRaMacEventInfoStatus
eLoRaMacEventInfoStatus
Definition: LoRaMac.h:538
sChannelParams
Definition: LoRaMac.h:171
LoRaMacHeader_t
union uLoRaMacHeader LoRaMacHeader_t
sLoRaMacParams::MinRxSymbols
uint8_t MinRxSymbols
Definition: LoRaMac.h:232
ChannelParams_t
struct sChannelParams ChannelParams_t
LoRaMacGetOTAADevId
uint32_t LoRaMacGetOTAADevId(void)
Returns the Device Address set by the LoRaWan server after OTAA join was successful.
Definition: LoRaMac.cpp:3425
sBand::LastTxDoneTime
TimerTime_t LastTxDoneTime
Definition: LoRaMac.h:160
CLASS_C
@ CLASS_C
Definition: LoRaMac.h:104
sMlmeReq::uMlmeParam
Definition: LoRaMac.h:1016
sMlmeConfirm::NbGateways
uint8_t NbGateways
Definition: LoRaMac.h:1053
uMibParam::ReceiveDelay2
uint32_t ReceiveDelay2
Definition: LoRaMac.h:1428
uLoRaMacFrameCtrl::sCtrlBits::Ack
uint8_t Ack
Definition: LoRaMac.h:522
LoRaMacFlags_t
union eLoRaMacFlags_t LoRaMacFlags_t
McpsConfirm_t
struct sMcpsConfirm McpsConfirm_t
sMcpsIndication::FramePending
uint8_t FramePending
Definition: LoRaMac.h:869
LORAMAC_STATUS_SERVICE_UNKNOWN
@ LORAMAC_STATUS_SERVICE_UNKNOWN
Definition: LoRaMac.h:1550
sMcpsIndication::Rssi
int16_t Rssi
Definition: LoRaMac.h:885
SRV_MAC_RX_TIMING_SETUP_REQ
@ SRV_MAC_RX_TIMING_SETUP_REQ
Definition: LoRaMac.h:430
MOTE_MAC_RX_PARAM_SETUP_ANS
@ MOTE_MAC_RX_PARAM_SETUP_ANS
Definition: LoRaMac.h:373
LORAMAC_REGION_CN470
@ LORAMAC_REGION_CN470
Definition: LoRaMac.h:1602
LoRaMacPrimitives_t
struct sLoRaMacPrimitives LoRaMacPrimitives_t
MIB_DOWNLINK_COUNTER
@ MIB_DOWNLINK_COUNTER
Definition: LoRaMac.h:1278
uLoRaMacFrameCtrl::sCtrlBits::Adr
uint8_t Adr
Definition: LoRaMac.h:530
eLoRaMacFlags_t::sMacFlagBits::McpsIndSkip
uint8_t McpsIndSkip
Definition: LoRaMac.h:621
MIB_MULTICAST_CHANNEL
@ MIB_MULTICAST_CHANNEL
Definition: LoRaMac.h:1284
uMibParam::AppSKey
uint8_t * AppSKey
Definition: LoRaMac.h:1362
uMibParam::ChannelsDatarate
int8_t ChannelsDatarate
Definition: LoRaMac.h:1452
MlmeReqJoin_t
struct sMlmeReqJoin MlmeReqJoin_t
eLoRaMacFlags_t
Definition: LoRaMac.h:600
LoRaMacChannelRemove
LoRaMacStatus_t LoRaMacChannelRemove(uint8_t id)
LoRaMAC channel remove service.
Definition: LoRaMac.cpp:3080
sMcpsIndication::Multicast
uint8_t Multicast
Definition: LoRaMac.h:857
MIB_JOIN_ACCEPT_DELAY_2
@ MIB_JOIN_ACCEPT_DELAY_2
Definition: LoRaMac.h:1234
uLoRaMacHeader::sHdrBits
Definition: LoRaMac.h:479
LoRaMacSrvCmd_t
enum eLoRaMacSrvCmd LoRaMacSrvCmd_t
sMcpsConfirm::TxTimeOnAir
TimerTime_t TxTimeOnAir
Definition: LoRaMac.h:830
MIB_CHANNELS_DEFAULT_MASK
@ MIB_CHANNELS_DEFAULT_MASK
Definition: LoRaMac.h:1198
eLoRaMacFlags_t::sMacFlagBits::MlmeReq
uint8_t MlmeReq
Definition: LoRaMac.h:625
LORAMAC_EVENT_INFO_STATUS_RX1_TIMEOUT
@ LORAMAC_EVENT_INFO_STATUS_RX1_TIMEOUT
Definition: LoRaMac.h:554
uLoRaMacHeader::sHdrBits::RFU
uint8_t RFU
Definition: LoRaMac.h:487
LORAMAC_REGION_KR920
@ LORAMAC_REGION_KR920
Definition: LoRaMac.h:1618
MIB_CHANNELS_DEFAULT_TX_POWER
@ MIB_CHANNELS_DEFAULT_TX_POWER
Definition: LoRaMac.h:1266
BAT_LEVEL_EXT_SRC
@ BAT_LEVEL_EXT_SRC
Definition: LoRaMac.h:449
sMcpsConfirm::UpLinkFrequency
uint32_t UpLinkFrequency
Definition: LoRaMac.h:838
sMcpsReqProprietary::Datarate
int8_t Datarate
Definition: LoRaMac.h:765
McpsReqProprietary_t
struct sMcpsReqProprietary McpsReqProprietary_t
sMcpsConfirm::TxPower
int8_t TxPower
Definition: LoRaMac.h:818
sMlmeReqJoin::AppEui
uint8_t * AppEui
Definition: LoRaMac.h:970
uMibParam::ChannelsTxPower
int8_t ChannelsTxPower
Definition: LoRaMac.h:1464
sLoRaMacCallback
Definition: LoRaMac.h:1676
LoRaMacMaxEirpTable
static const uint8_t LoRaMacMaxEirpTable[]
Definition: LoRaMac.h:1691
JOIN_ONGOING
@ JOIN_ONGOING
Definition: LoRaMac.h:1312
sMlmeConfirm::MlmeRequest
Mlme_t MlmeRequest
Definition: LoRaMac.h:1036
Band_t
struct sBand Band_t
uMibParam::ChannelsDefaultTxPower
int8_t ChannelsDefaultTxPower
Definition: LoRaMac.h:1458
eLoRaMacStatus
eLoRaMacStatus
Definition: LoRaMac.h:1538
uMibParam::ChannelsMask
uint16_t * ChannelsMask
Definition: LoRaMac.h:1398
sMcpsReqConfirmed::NbTrials
uint8_t NbTrials
Definition: LoRaMac.h:746
MIB_UPLINK_COUNTER
@ MIB_UPLINK_COUNTER
Definition: LoRaMac.h:1272
sMlmeReq::Type
Mlme_t Type
Definition: LoRaMac.h:1010
sChannelParams::Frequency
uint32_t Frequency
Definition: LoRaMac.h:175
LoRaMacTxInfo_t
struct sLoRaMacTxInfo LoRaMacTxInfo_t
MIB_CHANNELS
@ MIB_CHANNELS
Definition: LoRaMac.h:1174
LORAMAC_REGION_AU915
@ LORAMAC_REGION_AU915
Definition: LoRaMac.h:1598
sChannelParams::Band
uint8_t Band
Definition: LoRaMac.h:187
eLoRaMacFrameType
eLoRaMacFrameType
Definition: LoRaMac.h:316
FRAME_TYPE_JOIN_ACCEPT
@ FRAME_TYPE_JOIN_ACCEPT
Definition: LoRaMac.h:324
MCPS_UNCONFIRMED
@ MCPS_UNCONFIRMED
Definition: LoRaMac.h:661
sLoRaMacParams::ChannelsDatarate
int8_t ChannelsDatarate
Definition: LoRaMac.h:221
sMcpsConfirm::UpLinkCounter
uint32_t UpLinkCounter
Definition: LoRaMac.h:834
MIB_CHANNELS_TX_POWER
@ MIB_CHANNELS_TX_POWER
Definition: LoRaMac.h:1258
eLoRaMacFlags_t::sMacFlagBits::McpsReq
uint8_t McpsReq
Definition: LoRaMac.h:613
sLoRaMacPrimitives::MacMcpsIndication
void(* MacMcpsIndication)(McpsIndication_t *McpsIndication)
MCPS-Indication primitive.
Definition: LoRaMac.h:1663
eMibRequestConfirm
Definition: LoRaMac.h:1507
sLoRaMacParams::Rx1DrOffset
uint8_t Rx1DrOffset
Definition: LoRaMac.h:260
Mib_t
enum eMib Mib_t
LoRaMacCallback_t
struct sLoRaMacCallback LoRaMacCallback_t
uMibParam::ChannelsDefaultDatarate
int8_t ChannelsDefaultDatarate
Definition: LoRaMac.h:1446
MCPS_CONFIRMED
@ MCPS_CONFIRMED
Definition: LoRaMac.h:665
LORAMAC_EVENT_INFO_STATUS_RX1_ERROR
@ LORAMAC_EVENT_INFO_STATUS_RX1_ERROR
Definition: LoRaMac.h:562
uMibParam::ReceiveDelay1
uint32_t ReceiveDelay1
Definition: LoRaMac.h:1422
sMlmeReqTxCw::Frequency
uint32_t Frequency
Definition: LoRaMac.h:995
sLoRaMacParams::MaxRxWindow
uint32_t MaxRxWindow
Definition: LoRaMac.h:236
DeviceClass_t
enum eDeviceClass DeviceClass_t
MLME_LINK_CHECK
@ MLME_LINK_CHECK
Definition: LoRaMac.h:939
MOTE_MAC_DEV_STATUS_ANS
@ MOTE_MAC_DEV_STATUS_ANS
Definition: LoRaMac.h:377
McpsConfirm
static McpsConfirm_t McpsConfirm
Definition: LoRaMac.cpp:397
MIB_RECEIVE_DELAY_2
@ MIB_RECEIVE_DELAY_2
Definition: LoRaMac.h:1222
uLoRaMacFrameCtrl::sCtrlBits::AdrAckReq
uint8_t AdrAckReq
Definition: LoRaMac.h:526
LORAMAC_EVENT_INFO_STATUS_DOWNLINK_TOO_MANY_FRAMES_LOSS
@ LORAMAC_EVENT_INFO_STATUS_DOWNLINK_TOO_MANY_FRAMES_LOSS
Definition: LoRaMac.h:585
eMib
eMib
Definition: LoRaMac.h:1106
SRV_MAC_DUTY_CYCLE_REQ
@ SRV_MAC_DUTY_CYCLE_REQ
Definition: LoRaMac.h:414
eLoRaMacMoteCmd
eLoRaMacMoteCmd
Definition: LoRaMac.h:357
uLoRaMacFrameCtrl::sCtrlBits::FOptsLen
uint8_t FOptsLen
Definition: LoRaMac.h:514
LORAMAC_REGION_AS923_3
@ LORAMAC_REGION_AS923_3
Definition: LoRaMac.h:1634
sMulticastParams::Address
uint32_t Address
Definition: LoRaMac.h:291
MIB_RECEIVE_DELAY_1
@ MIB_RECEIVE_DELAY_1
Definition: LoRaMac.h:1216
LoRaMacBatteryLevel_t
enum eLoRaMacBatteryLevel LoRaMacBatteryLevel_t
LORAMAC_EVENT_INFO_STATUS_OK
@ LORAMAC_EVENT_INFO_STATUS_OK
Definition: LoRaMac.h:542
eLoRaMacRegion_t
eLoRaMacRegion_t
Definition: LoRaMac.h:1590
sRx2ChannelParams
Definition: LoRaMac.h:194
LoRaMacMulticastChannelLink
LoRaMacStatus_t LoRaMacMulticastChannelLink(MulticastParams_t *channelParam)
LoRaMAC multicast channel link service.
Definition: LoRaMac.cpp:3101
LORAMAC_STATUS_DATARATE_INVALID
@ LORAMAC_STATUS_DATARATE_INVALID
Definition: LoRaMac.h:1562
sLoRaMacParams::MaxEirp
float MaxEirp
Definition: LoRaMac.h:276
sLoRaMacParams
Definition: LoRaMac.h:213
uLoRaMacFrameCtrl
Definition: LoRaMac.h:501
LORAMAC_STATUS_DEVICE_OFF
@ LORAMAC_STATUS_DEVICE_OFF
Definition: LoRaMac.h:1578
CLASS_A
@ CLASS_A
Definition: LoRaMac.h:92
MIB_JOIN_ACCEPT_DELAY_1
@ MIB_JOIN_ACCEPT_DELAY_1
Definition: LoRaMac.h:1228
uDrRange::Fields
struct uDrRange::sFields Fields
MibRequestConfirm_t
struct eMibRequestConfirm MibRequestConfirm_t
FRAME_TYPE_DATA_CONFIRMED_DOWN
@ FRAME_TYPE_DATA_CONFIRMED_DOWN
Definition: LoRaMac.h:340
eDeviceClass
eDeviceClass
Definition: LoRaMac.h:86
MIB_RX2_DEFAULT_CHANNEL
@ MIB_RX2_DEFAULT_CHANNEL
Definition: LoRaMac.h:1186
LoRaMacEventInfoStatus_t
enum eLoRaMacEventInfoStatus LoRaMacEventInfoStatus_t
LORAMAC_REGION_CN779
@ LORAMAC_REGION_CN779
Definition: LoRaMac.h:1606
sMcpsIndication::AckReceived
bool AckReceived
Definition: LoRaMac.h:899
sMcpsIndication::DownLinkCounter
uint32_t DownLinkCounter
Definition: LoRaMac.h:903
eLoRaMacSrvCmd
eLoRaMacSrvCmd
Definition: LoRaMac.h:402
LORAMAC_REGION_EU868
@ LORAMAC_REGION_EU868
Definition: LoRaMac.h:1614
JOIN_FAILED
@ JOIN_FAILED
Definition: LoRaMac.h:1313
LoRaMacMoteCmd_t
enum eLoRaMacMoteCmd LoRaMacMoteCmd_t
SRV_MAC_RX_PARAM_SETUP_REQ
@ SRV_MAC_RX_PARAM_SETUP_REQ
Definition: LoRaMac.h:418
uMibParam::Rx2DefaultChannel
Rx2ChannelParams_t Rx2DefaultChannel
Definition: LoRaMac.h:1392
eLoRaMacFlags_t::sMacFlagBits::McpsInd
uint8_t McpsInd
Definition: LoRaMac.h:617
SRV_MAC_DL_CHANNEL_REQ
@ SRV_MAC_DL_CHANNEL_REQ
Definition: LoRaMac.h:438
region
LoRaMacRegion_t region
Definition: LoRaMacHelper.cpp:37
MIB_RX2_CHANNEL
@ MIB_RX2_CHANNEL
Definition: LoRaMac.h:1180
sLoRaMacParams::JoinAcceptDelay1
uint32_t JoinAcceptDelay1
Definition: LoRaMac.h:248
MCPS_MULTICAST
@ MCPS_MULTICAST
Definition: LoRaMac.h:669
sMcpsIndication::Port
uint8_t Port
Definition: LoRaMac.h:861
sLoRaMacPrimitives::MacMcpsConfirm
void(* MacMcpsConfirm)(McpsConfirm_t *McpsConfirm)
MCPS-Confirm primitive.
Definition: LoRaMac.h:1657
MLME_TXCW
@ MLME_TXCW
Definition: LoRaMac.h:945
sMlmeReqJoin::AppKey
uint8_t * AppKey
Definition: LoRaMac.h:976
FRAME_TYPE_DATA_UNCONFIRMED_UP
@ FRAME_TYPE_DATA_UNCONFIRMED_UP
Definition: LoRaMac.h:328
eLoRaMacFlags_t::Bits
struct eLoRaMacFlags_t::sMacFlagBits Bits
LORAMAC_REGION_AS923
@ LORAMAC_REGION_AS923
Definition: LoRaMac.h:1594
eLoRaMacFlags_t::sMacFlagBits
Definition: LoRaMac.h:609
sBand::TxMaxPower
int8_t TxMaxPower
Definition: LoRaMac.h:152
sMcpsIndication::Snr
uint8_t Snr
Definition: LoRaMac.h:889
SRV_MAC_DEV_STATUS_REQ
@ SRV_MAC_DEV_STATUS_REQ
Definition: LoRaMac.h:422
sMcpsReqProprietary
Definition: LoRaMac.h:753
LORAMAC_REGION_AS923_4
@ LORAMAC_REGION_AS923_4
Definition: LoRaMac.h:1638
sMulticastParams::Next
struct sMulticastParams * Next
Definition: LoRaMac.h:307
MLME_TXCW_1
@ MLME_TXCW_1
Definition: LoRaMac.h:951
LORAMAC_EVENT_INFO_STATUS_DOWNLINK_REPEATED
@ LORAMAC_EVENT_INFO_STATUS_DOWNLINK_REPEATED
Definition: LoRaMac.h:576
LoRaMacChannelAdd
LoRaMacStatus_t LoRaMacChannelAdd(uint8_t id, ChannelParams_t params)
LoRaMAC channel add service.
Definition: LoRaMac.cpp:3061
MIB_NWK_SKEY
@ MIB_NWK_SKEY
Definition: LoRaMac.h:1144
sMcpsIndication::RxSlot
uint8_t RxSlot
Definition: LoRaMac.h:895
LORAMAC_EVENT_INFO_STATUS_ADDRESS_FAIL
@ LORAMAC_EVENT_INFO_STATUS_ADDRESS_FAIL
Definition: LoRaMac.h:589
uDrRange::Value
int8_t Value
Definition: LoRaMac.h:115
sMcpsReqUnconfirmed
Definition: LoRaMac.h:680
LoRaMacInitialization
LoRaMacStatus_t LoRaMacInitialization(LoRaMacPrimitives_t *primitives, LoRaMacCallback_t *callbacks, LoRaMacRegion_t region, eDeviceClass nodeClass=CLASS_A)
LoRaMAC layer initialization.
Definition: LoRaMac.cpp:2347
uMibParam::IsNetworkJoined
eJoinStatus_t IsNetworkJoined
Definition: LoRaMac.h:1332
MOTE_MAC_LINK_CHECK_REQ
@ MOTE_MAC_LINK_CHECK_REQ
Definition: LoRaMac.h:361
LoRaMacParams_t
struct sLoRaMacParams LoRaMacParams_t
BAT_LEVEL_NO_MEASURE
@ BAT_LEVEL_NO_MEASURE
Definition: LoRaMac.h:461
LORAMAC_EVENT_INFO_STATUS_RX2_TIMEOUT
@ LORAMAC_EVENT_INFO_STATUS_RX2_TIMEOUT
Definition: LoRaMac.h:558
uMibParam::ChannelNbRep
uint8_t ChannelNbRep
Definition: LoRaMac.h:1410
Mcps_t
enum eMcps Mcps_t
LoRaMAC data services.
MOTE_MAC_DL_CHANNEL_ANS
@ MOTE_MAC_DL_CHANNEL_ANS
Definition: LoRaMac.h:393
sMcpsConfirm::Datarate
uint8_t Datarate
Definition: LoRaMac.h:814
eMcps
eMcps
LoRaMAC data services.
Definition: LoRaMac.h:657
sMulticastParams::DownLinkCounter
uint32_t DownLinkCounter
Definition: LoRaMac.h:303
uMibParam::JoinAcceptDelay2
uint32_t JoinAcceptDelay2
Definition: LoRaMac.h:1440
uMibParam::Rx2Channel
Rx2ChannelParams_t Rx2Channel
Definition: LoRaMac.h:1386
sChannelParams::Rx1Frequency
uint32_t Rx1Frequency
Definition: LoRaMac.h:179
uMibParam::JoinAcceptDelay1
uint32_t JoinAcceptDelay1
Definition: LoRaMac.h:1434
sMcpsReq::uMcpsParam::Proprietary
McpsReqProprietary_t Proprietary
Definition: LoRaMac.h:794
sBand::DCycle
uint16_t DCycle
Definition: LoRaMac.h:148
CLASS_B
@ CLASS_B
Definition: LoRaMac.h:98
LORAMAC_STATUS_OK
@ LORAMAC_STATUS_OK
Definition: LoRaMac.h:1542
LORAMAC_STATUS_FREQUENCY_INVALID
@ LORAMAC_STATUS_FREQUENCY_INVALID
Definition: LoRaMac.h:1558
JOIN_OK
@ JOIN_OK
Definition: LoRaMac.h:1311
sMlmeReqJoin::DevEui
uint8_t * DevEui
Definition: LoRaMac.h:964
sMcpsReqConfirmed::Datarate
int8_t Datarate
Definition: LoRaMac.h:725
sMcpsIndication::BufferSize
uint8_t BufferSize
Definition: LoRaMac.h:877
uLoRaMacHeader::sHdrBits::MType
uint8_t MType
Definition: LoRaMac.h:491
MIB_REPEATER_SUPPORT
@ MIB_REPEATER_SUPPORT
Definition: LoRaMac.h:1166
LORAMAC_REGION_IN865
@ LORAMAC_REGION_IN865
Definition: LoRaMac.h:1622
sMulticastParams::AppSKey
uint8_t AppSKey[16]
Definition: LoRaMac.h:299
BAT_LEVEL_EMPTY
@ BAT_LEVEL_EMPTY
Definition: LoRaMac.h:453
LoRaMacQueryTxPossible
LoRaMacStatus_t LoRaMacQueryTxPossible(uint8_t size, LoRaMacTxInfo_t *txInfo)
Queries the LoRaMAC if it is possible to send the next frame with a given payload size....
Definition: LoRaMac.cpp:2509
LoRaMacRegion
LoRaMacRegion_t LoRaMacRegion
Definition: LoRaMac.cpp:50
MOTE_MAC_NEW_CHANNEL_ANS
@ MOTE_MAC_NEW_CHANNEL_ANS
Definition: LoRaMac.h:381
sMcpsReqUnconfirmed::fBuffer
void * fBuffer
Definition: LoRaMac.h:691
sMcpsReqConfirmed::fBufferSize
uint16_t fBufferSize
Definition: LoRaMac.h:721
sMcpsReqUnconfirmed::fPort
uint8_t fPort
Definition: LoRaMac.h:687
sMcpsIndication::RxData
bool RxData
Definition: LoRaMac.h:881
sMlmeReqTxCw::Timeout
uint16_t Timeout
Definition: LoRaMac.h:991
uLoRaMacHeader::sHdrBits::Major
uint8_t Major
Definition: LoRaMac.h:483
sLoRaMacParams::AntennaGain
float AntennaGain
Definition: LoRaMac.h:280
JOIN_NOT_START
@ JOIN_NOT_START
Definition: LoRaMac.h:1310
sMcpsReqProprietary::fBufferSize
uint16_t fBufferSize
Definition: LoRaMac.h:761
SRV_MAC_TX_PARAM_SETUP_REQ
@ SRV_MAC_TX_PARAM_SETUP_REQ
Definition: LoRaMac.h:434
sMcpsConfirm::Status
LoRaMacEventInfoStatus_t Status
Definition: LoRaMac.h:810
LoRaMacMlmeRequest
LoRaMacStatus_t LoRaMacMlmeRequest(MlmeReq_t *mlmeRequest)
LoRaMAC MLME-Request.
Definition: LoRaMac.cpp:3175
SRV_MAC_NEW_CHANNEL_REQ
@ SRV_MAC_NEW_CHANNEL_REQ
Definition: LoRaMac.h:426
SRV_MAC_LINK_ADR_REQ
@ SRV_MAC_LINK_ADR_REQ
Definition: LoRaMac.h:410
sMlmeReq::uMlmeParam::TxCw
MlmeReqTxCw_t TxCw
Definition: LoRaMac.h:1024
uMibParam::ChannelList
ChannelParams_t * ChannelList
Definition: LoRaMac.h:1380
uMibParam::NetID
uint32_t NetID
Definition: LoRaMac.h:1344
McpsIndication
static McpsIndication_t McpsIndication
Definition: LoRaMac.cpp:392
FRAME_TYPE_JOIN_REQ
@ FRAME_TYPE_JOIN_REQ
Definition: LoRaMac.h:320
LoRaMacMulticastChannelUnlink
LoRaMacStatus_t LoRaMacMulticastChannelUnlink(MulticastParams_t *channelParam)
LoRaMAC multicast channel unlink service.
Definition: LoRaMac.cpp:3136
MibParam_t
union uMibParam MibParam_t
sLoRaMacTxInfo
Definition: LoRaMac.h:1523
sMcpsConfirm
Definition: LoRaMac.h:802
sMlmeConfirm::TxTimeOnAir
TimerTime_t TxTimeOnAir
Definition: LoRaMac.h:1044
LORAMAC_STATUS_FREQ_AND_DR_INVALID
@ LORAMAC_STATUS_FREQ_AND_DR_INVALID
Definition: LoRaMac.h:1566
uMibParam::EnablePublicNetwork
bool EnablePublicNetwork
Definition: LoRaMac.h:1368
uDrRange::sFields
Definition: LoRaMac.h:120
uLoRaMacFrameCtrl::Value
uint8_t Value
Definition: LoRaMac.h:505
sMulticastParams
Definition: LoRaMac.h:287
LORAMAC_EVENT_INFO_STATUS_JOIN_FAIL
@ LORAMAC_EVENT_INFO_STATUS_JOIN_FAIL
Definition: LoRaMac.h:570
uMibParam::MulticastList
MulticastParams_t * MulticastList
Definition: LoRaMac.h:1482
LORAMAC_EVENT_INFO_STATUS_TX_DR_PAYLOAD_SIZE_ERROR
@ LORAMAC_EVENT_INFO_STATUS_TX_DR_PAYLOAD_SIZE_ERROR
Definition: LoRaMac.h:581
eLoRaMacBatteryLevel
eLoRaMacBatteryLevel
Definition: LoRaMac.h:445
sLoRaMacParams::Rx2Channel
Rx2ChannelParams_t Rx2Channel
Definition: LoRaMac.h:264
MlmeReqTxCw_t
struct sMlmeReqTxCw MlmeReqTxCw_t
uDrRange
Definition: LoRaMac.h:111
uMibParam::EnableRepeaterSupport
bool EnableRepeaterSupport
Definition: LoRaMac.h:1374
uLoRaMacHeader::Value
uint8_t Value
Definition: LoRaMac.h:474
sMulticastParams::NwkSKey
uint8_t NwkSKey[16]
Definition: LoRaMac.h:295
sMcpsReqProprietary::fBuffer
void * fBuffer
Definition: LoRaMac.h:757
FRAME_TYPE_RFU
@ FRAME_TYPE_RFU
Definition: LoRaMac.h:344
MIB_DEVICE_CLASS
@ MIB_DEVICE_CLASS
Definition: LoRaMac.h:1112
LORAMAC_EVENT_INFO_STATUS_MIC_FAIL
@ LORAMAC_EVENT_INFO_STATUS_MIC_FAIL
Definition: LoRaMac.h:593
LORAMAC_REGION_US915
@ LORAMAC_REGION_US915
Definition: LoRaMac.h:1626
uMibParam::Class
DeviceClass_t Class
Definition: LoRaMac.h:1326
LoRaMacMibGetRequestConfirm
LoRaMacStatus_t LoRaMacMibGetRequestConfirm(MibRequestConfirm_t *mibGet)
LoRaMAC MIB-Get.
Definition: LoRaMac.cpp:2574
sMlmeConfirm::NbRetries
uint8_t NbRetries
Definition: LoRaMac.h:1057
sMcpsReqUnconfirmed::fBufferSize
uint16_t fBufferSize
Definition: LoRaMac.h:695
sMcpsReqConfirmed::fPort
uint8_t fPort
Definition: LoRaMac.h:713
sMcpsIndication::Status
LoRaMacEventInfoStatus_t Status
Definition: LoRaMac.h:853
MIB_ADR
@ MIB_ADR
Definition: LoRaMac.h:1126
MIB_APP_SKEY
@ MIB_APP_SKEY
Definition: LoRaMac.h:1150
uMibParam::NwkSKey
uint8_t * NwkSKey
Definition: LoRaMac.h:1356
sMlmeConfirm::DemodMargin
uint8_t DemodMargin
Definition: LoRaMac.h:1049
MIB_CHANNELS_DATARATE
@ MIB_CHANNELS_DATARATE
Definition: LoRaMac.h:1250
sMlmeReqTxCw::Power
uint8_t Power
Definition: LoRaMac.h:999
sChannelParams::DrRange
DrRange_t DrRange
Definition: LoRaMac.h:183
sMcpsReq
Definition: LoRaMac.h:772
sMcpsConfirm::NbRetries
uint8_t NbRetries
Definition: LoRaMac.h:826
sRx2ChannelParams::Frequency
uint32_t Frequency
Definition: LoRaMac.h:198
LORAMAC_REGION_EU433
@ LORAMAC_REGION_EU433
Definition: LoRaMac.h:1610
uMibParam::MinRxSymbols
uint8_t MinRxSymbols
Definition: LoRaMac.h:1494
uMibParam::SystemMaxRxError
uint32_t SystemMaxRxError
Definition: LoRaMac.h:1488
MIB_NETWORK_JOINED
@ MIB_NETWORK_JOINED
Definition: LoRaMac.h:1118
eJoinStatus
eJoinStatus
Definition: LoRaMac.h:1309
MCPS_PROPRIETARY
@ MCPS_PROPRIETARY
Definition: LoRaMac.h:673
sMcpsReq::uMcpsParam::Confirmed
McpsReqConfirmed_t Confirmed
Definition: LoRaMac.h:790
uLoRaMacFrameCtrl::sCtrlBits
Definition: LoRaMac.h:510
McpsReq_t
struct sMcpsReq McpsReq_t
sLoRaMacPrimitives::MacMlmeConfirm
void(* MacMlmeConfirm)(MlmeConfirm_t *MlmeConfirm)
MLME-Confirm primitive.
Definition: LoRaMac.h:1669
uMibParam::ChannelsDefaultMask
uint16_t * ChannelsDefaultMask
Definition: LoRaMac.h:1404
sLoRaMacParams::ReceiveDelay1
uint32_t ReceiveDelay1
Definition: LoRaMac.h:240
DrRange_t
union uDrRange DrRange_t
sMlmeReqJoin
Definition: LoRaMac.h:958
MIB_CHANNELS_DEFAULT_DATARATE
@ MIB_CHANNELS_DEFAULT_DATARATE
Definition: LoRaMac.h:1242
TimerTime_t
uint32_t TimerTime_t
Timer time variable definition.
Definition: timer.h:69
sMlmeConfirm::Status
LoRaMacEventInfoStatus_t Status
Definition: LoRaMac.h:1040
MlmeReq_t
struct sMlmeReq MlmeReq_t
sRx2ChannelParams::Datarate
uint8_t Datarate
Definition: LoRaMac.h:206
sMcpsIndication
Definition: LoRaMac.h:845
LoRaMacRegion_t
enum eLoRaMacRegion_t LoRaMacRegion_t
MIB_MIN_RX_SYMBOLS
@ MIB_MIN_RX_SYMBOLS
Definition: LoRaMac.h:1295
LORAMAC_STATUS_REGION_NOT_SUPPORTED
@ LORAMAC_STATUS_REGION_NOT_SUPPORTED
Definition: LoRaMac.h:1583
LORAMAC_REGION_AS923_2
@ LORAMAC_REGION_AS923_2
Definition: LoRaMac.h:1630
sMcpsReq::Type
Mcps_t Type
Definition: LoRaMac.h:776
Mlme_t
enum eMlme Mlme_t
LoRaMAC management services.
LORAMAC_STATUS_LENGTH_ERROR
@ LORAMAC_STATUS_LENGTH_ERROR
Definition: LoRaMac.h:1574
sMcpsIndication::McpsIndication
Mcps_t McpsIndication
Definition: LoRaMac.h:849
uMibParam::DownLinkCounter
uint32_t DownLinkCounter
Definition: LoRaMac.h:1476
sMcpsConfirm::McpsRequest
Mcps_t McpsRequest
Definition: LoRaMac.h:806
eJoinStatus_t
enum eJoinStatus eJoinStatus_t
LoRaMacMibSetRequestConfirm
LoRaMacStatus_t LoRaMacMibSetRequestConfirm(MibRequestConfirm_t *mibSet)
LoRaMAC MIB-Set.
Definition: LoRaMac.cpp:2754
sMlmeReq
Definition: LoRaMac.h:1006
sLoRaMacParams::ChannelsNbRep
uint8_t ChannelsNbRep
Definition: LoRaMac.h:256
LoRaMacFrameType_t
enum eLoRaMacFrameType LoRaMacFrameType_t
sMcpsIndication::Buffer
uint8_t * Buffer
Definition: LoRaMac.h:873