|
LoRaMAC
4.5.2
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
496 typedef union uVerifyParams
533 typedef struct sApplyCFListParams
549 typedef struct sChanMaskSetParams
564 typedef struct sRxConfigParams
618 typedef struct sTxConfigParams
649 typedef struct sLinkAdrReqParams
688 typedef struct sRxParamSetupReqParams
707 typedef struct sNewChannelReqParams
722 typedef struct sTxParamSetupReqParams
741 typedef struct sDlChannelReqParams
756 typedef enum eAlternateDrType
771 typedef struct sNextChanParams
810 typedef struct sChannelAddParams
825 typedef struct sChannelRemoveParams
836 typedef struct sRxBeaconSetupParams
1161 #endif // __REGION_H__
AlternateDrType_t
Definition: Region.h:756
uint8_t Size
Definition: Region.h:543
uint32_t RxTime
Definition: Region.h:845
ActivationType_t NetworkActivation
Definition: Region.h:612
BeaconFormat_t BeaconFormat
Definition: Region.h:399
bool DutyCycleEnabled
Definition: Region.h:792
TimerTime_t LastAggrTx
Definition: Region.h:780
void * Bands
Definition: Region.h:486
SysTime_t ElapsedTimeSinceStartUp
Definition: Region.h:467
ChannelParams_t * NewChannel
Definition: Region.h:712
LoRaMacStatus_t
Definition: LoRaMac.h:2269
int32_t WindowOffset
Definition: Region.h:593
uint8_t CurrentNbRep
Definition: Region.h:682
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:581
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:678
ChannelParams_t * Channels
Definition: Region.h:395
uint8_t Rfu2Size
Definition: Region.h:372
uint8_t PayloadSize
Definition: Region.h:662
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:635
LoRaMacRegion_t
Definition: LoRaMac.h:513
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:509
LoRaMacStatus_t RegionChannelAdd(LoRaMacRegion_t region, ChannelAddParams_t *channelAdd)
Adds a channel.
uint16_t PktLen
Definition: Region.h:643
InitType_t Type
Definition: Region.h:490
uint32_t Frequency
Definition: Region.h:501
uint8_t ChannelId
Definition: Region.h:746
void RegionComputeRxWindowParameters(LoRaMacRegion_t region, int8_t datarate, uint8_t minRxSymbols, uint32_t rxError, RxConfigParams_t *rxConfigParams)
uint32_t Rx1Frequency
Definition: Region.h:750
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:800
ActivationType_t
Definition: LoRaMac.h:167
Version_t Version
Definition: Region.h:654
bool RegionVerify(LoRaMacRegion_t region, VerifyParams_t *verify, PhyAttribute_t phyAttribute)
Verifies a parameter.
Definition: LoRaMacTypes.h:1169
int8_t TxPower
Definition: Region.h:505
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:589
LoRa MAC layer implementation.
uint8_t MaxEirp
Definition: Region.h:735
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:639
TimerTime_t AggrTimeOff
Definition: Region.h:776
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:841
uint8_t Bandwidth
Definition: Region.h:577
uint8_t * Payload
Definition: Region.h:539
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:554
bool RxContinuous
Definition: Region.h:601
int8_t ChannelId
Definition: Region.h:716
LoRaMacRxSlot_t
Definition: LoRaMac.h:205
bool AdrEnabled
Definition: Region.h:670
int8_t CurrentDatarate
Definition: Region.h:674
LoRaMacRxSlot_t RxSlot
Definition: Region.h:605
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:558