 |
LoRaMAC
4.5.1
Documentation of the API
|
Go to the documentation of this file.
62 #include "utilities.h"
70 #define LC( channelIndex ) ( uint16_t )( 1 << ( channelIndex - 1 ) )
72 #ifndef REGION_VERSION
77 #define REGION_VERSION 0x02010001
85 typedef enum ePhyAttribute
323 typedef enum eInitType
344 typedef enum eChannelsMask
359 typedef struct sBeaconFormat
378 typedef union uPhyParam
409 typedef struct sGetPhyParams
446 typedef struct sSetBandTxDoneParams
473 typedef struct sInitDefaultsParams
492 typedef union uVerifyParams
529 typedef struct sApplyCFListParams
545 typedef struct sChanMaskSetParams
560 typedef struct sRxConfigParams
614 typedef struct sTxConfigParams
645 typedef struct sLinkAdrReqParams
684 typedef struct sRxParamSetupReqParams
703 typedef struct sNewChannelReqParams
718 typedef struct sTxParamSetupReqParams
737 typedef struct sDlChannelReqParams
752 typedef enum eAlternateDrType
767 typedef struct sNextChanParams
806 typedef struct sChannelAddParams
821 typedef struct sChannelRemoveParams
832 typedef struct sRxBeaconSetupParams
1157 #endif // __REGION_H__
AlternateDrType_t
Definition: Region.h:752
uint8_t Size
Definition: Region.h:539
uint32_t RxTime
Definition: Region.h:841
ActivationType_t NetworkActivation
Definition: Region.h:608
BeaconFormat_t BeaconFormat
Definition: Region.h:399
bool DutyCycleEnabled
Definition: Region.h:788
TimerTime_t LastAggrTx
Definition: Region.h:776
SysTime_t ElapsedTimeSinceStartUp
Definition: Region.h:467
ChannelParams_t * NewChannel
Definition: Region.h:708
LoRaMacStatus_t
Definition: LoRaMac.h:2250
int32_t WindowOffset
Definition: Region.h:589
uint8_t CurrentNbRep
Definition: Region.h:678
uint8_t RegionApplyDrOffset(LoRaMacRegion_t region, uint8_t downlinkDwellTime, int8_t dr, int8_t drOffset)
Computes new datarate according to the given offset.
bool RegionTxConfig(LoRaMacRegion_t region, TxConfigParams_t *txConfig, int8_t *txPower, TimerTime_t *txTimeOnAir)
TX configuration.
int8_t RegionNewChannelReq(LoRaMacRegion_t region, NewChannelReqParams_t *newChannelReq)
The function processes a New Channel Request.
int8_t DrOffset
Definition: Region.h:577
uint8_t DownlinkDwellTime
Definition: Region.h:434
int8_t RegionTxParamSetupReq(LoRaMacRegion_t region, TxParamSetupReqParams_t *txParamSetupReq)
The function processes a TX ParamSetup Request.
int8_t Datarate
Definition: Region.h:420
int8_t CurrentTxPower
Definition: Region.h:674
ChannelParams_t * Channels
Definition: Region.h:395
uint8_t Rfu2Size
Definition: Region.h:372
uint8_t PayloadSize
Definition: Region.h:658
uint8_t Channel
Definition: Region.h:440
Version_t RegionGetVersion(void)
Gets the version of the regional parameters implementation.
PhyParam_t RegionGetPhyParam(LoRaMacRegion_t region, GetPhyParams_t *getPhy)
The function gets a value of a specific phy attribute.
float MaxEirp
Definition: Region.h:631
LoRaMacRegion_t
Definition: LoRaMac.h:509
uint8_t UplinkDwellTime
Definition: Region.h:427
bool RegionChannelsRemove(LoRaMacRegion_t region, ChannelRemoveParams_t *channelRemove)
Removes a channel.
InitType_t
Definition: Region.h:323
bool DutyCycle
Definition: Region.h:505
LoRaMacStatus_t RegionChannelAdd(LoRaMacRegion_t region, ChannelAddParams_t *channelAdd)
Adds a channel.
uint16_t PktLen
Definition: Region.h:639
InitType_t Type
Definition: Region.h:486
uint32_t Frequency
Definition: Region.h:497
uint8_t ChannelId
Definition: Region.h:742
void RegionComputeRxWindowParameters(LoRaMacRegion_t region, int8_t datarate, uint8_t minRxSymbols, uint32_t rxError, RxConfigParams_t *rxConfigParams)
uint32_t Rx1Frequency
Definition: Region.h:746
uint8_t Rfu1Size
Definition: Region.h:368
PhyAttribute_t Attribute
Definition: Region.h:414
void * NvmGroup1
Definition: Region.h:478
void RegionRxBeaconSetup(LoRaMacRegion_t region, RxBeaconSetup_t *rxBeaconSetup, uint8_t *outDr)
Sets the radio into beacon reception mode.
PhyAttribute_t
Definition: Region.h:85
bool LastTxIsJoinRequest
Definition: Region.h:796
ActivationType_t
Definition: LoRaMac.h:167
Version_t Version
Definition: Region.h:650
bool RegionVerify(LoRaMacRegion_t region, VerifyParams_t *verify, PhyAttribute_t phyAttribute)
Verifies a parameter.
Definition: LoRaMacTypes.h:1169
int8_t TxPower
Definition: Region.h:501
bool RegionRxConfig(LoRaMacRegion_t region, RxConfigParams_t *rxConfig, int8_t *datarate)
Configuration of the RX windows.
TimerTime_t LastTxDoneTime
Definition: Region.h:459
bool RegionChanMaskSet(LoRaMacRegion_t region, ChanMaskSetParams_t *chanMaskSet)
Sets a channels mask.
void RegionInitDefaults(LoRaMacRegion_t region, InitDefaultsParams_t *params)
Initializes the channels masks and the channels.
TimerTime_t DutyCycleTimePeriod
Definition: Region.h:403
int8_t RegionAlternateDr(LoRaMacRegion_t region, int8_t currentDr, AlternateDrType_t type)
Alternates the datarate of the channel for the join request.
uint8_t RegionLinkAdrReq(LoRaMacRegion_t region, LinkAdrReqParams_t *linkAdrReq, int8_t *drOut, int8_t *txPowOut, uint8_t *nbRepOut, uint8_t *nbBytesParsed)
The function processes a Link ADR Request.
uint32_t WindowTimeout
Definition: Region.h:585
LoRa MAC layer implementation.
uint8_t MaxEirp
Definition: Region.h:731
void RegionSetBandTxDone(LoRaMacRegion_t region, SetBandTxDoneParams_t *txDone)
Updates the last TX done parameters of the current channel.
bool RegionIsActive(LoRaMacRegion_t region)
The function verifies if a region is active or not. If a region is not active, it cannot be used.
uint8_t BeaconSize
Definition: Region.h:364
ChannelsMask_t
Definition: Region.h:344
float AntennaGain
Definition: Region.h:635
TimerTime_t AggrTimeOff
Definition: Region.h:772
uint32_t Value
Definition: Region.h:383
uint16_t * ChannelsMask
Definition: Region.h:391
float fValue
Definition: Region.h:387
bool Joined
Definition: Region.h:455
int8_t RegionDlChannelReq(LoRaMacRegion_t region, DlChannelReqParams_t *dlChannelReq)
The function processes a DlChannel Request.
uint16_t SymbolTimeout
Definition: Region.h:837
uint8_t Bandwidth
Definition: Region.h:573
uint8_t * Payload
Definition: Region.h:535
LoRaMacStatus_t RegionNextChannel(LoRaMacRegion_t region, NextChanParams_t *nextChanParams, uint8_t *channel, TimerTime_t *time, TimerTime_t *aggregatedTimeOff)
Searches and set the next random available channel.
uint16_t * ChannelsMaskIn
Definition: Region.h:550
bool RxContinuous
Definition: Region.h:597
int8_t ChannelId
Definition: Region.h:712
LoRaMacRxSlot_t
Definition: LoRaMac.h:205
bool AdrEnabled
Definition: Region.h:666
int8_t CurrentDatarate
Definition: Region.h:670
LoRaMacRxSlot_t RxSlot
Definition: Region.h:601
TimerTime_t LastTxAirTime
Definition: Region.h:463
uint8_t RegionRxParamSetupReq(LoRaMacRegion_t region, RxParamSetupReqParams_t *rxParamSetupReq)
The function processes a RX Parameter Setup Request.
void * NvmGroup2
Definition: Region.h:482
Region independent implementations which are common to all regions.
void RegionApplyCFList(LoRaMacRegion_t region, ApplyCFListParams_t *applyCFList)
The function parses the input buffer and sets up the channels of the CF list.
ChannelsMask_t ChannelsMaskType
Definition: Region.h:554