 |
LoRaMAC
4.4.7
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
76 #define REGION_VERSION 0x00010003
84 typedef enum ePhyAttribute
326 typedef enum eInitType
347 typedef enum eChannelsMask
362 typedef struct sBeaconFormat
381 typedef union uPhyParam
412 typedef struct sGetPhyParams
449 typedef struct sSetBandTxDoneParams
476 typedef struct sInitDefaultsParams
495 typedef union uVerifyParams
532 typedef struct sApplyCFListParams
547 typedef struct sChanMaskSetParams
562 typedef struct sRxConfigParams
609 typedef struct sTxConfigParams
640 typedef struct sLinkAdrReqParams
679 typedef struct sRxParamSetupReqParams
698 typedef struct sNewChannelReqParams
713 typedef struct sTxParamSetupReqParams
732 typedef struct sDlChannelReqParams
747 typedef enum eAlternateDrType
762 typedef struct sNextChanParams
801 typedef struct sChannelAddParams
816 typedef struct sChannelRemoveParams
827 typedef struct sContinuousWaveParams
858 typedef struct sRxBeaconSetupParams
1192 #endif // __REGION_H__
AlternateDrType_t
Definition: Region.h:747
uint8_t Size
Definition: Region.h:541
uint32_t RxTime
Definition: Region.h:867
BeaconFormat_t BeaconFormat
Definition: Region.h:402
bool DutyCycleEnabled
Definition: Region.h:783
TimerTime_t LastAggrTx
Definition: Region.h:771
SysTime_t ElapsedTimeSinceStartUp
Definition: Region.h:470
ChannelParams_t * NewChannel
Definition: Region.h:703
LoRaMacStatus_t
Definition: LoRaMac.h:2227
int32_t WindowOffset
Definition: Region.h:591
uint8_t CurrentNbRep
Definition: Region.h:673
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:579
uint8_t DownlinkDwellTime
Definition: Region.h:437
int8_t RegionTxParamSetupReq(LoRaMacRegion_t region, TxParamSetupReqParams_t *txParamSetupReq)
The function processes a TX ParamSetup Request.
uint16_t Timeout
Definition: Region.h:852
int8_t Datarate
Definition: Region.h:423
int8_t CurrentTxPower
Definition: Region.h:669
ChannelParams_t * Channels
Definition: Region.h:398
uint8_t Rfu2Size
Definition: Region.h:375
uint8_t PayloadSize
Definition: Region.h:653
uint8_t Channel
Definition: Region.h:443
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:626
LoRaMacRegion_t
Definition: LoRaMac.h:495
uint8_t UplinkDwellTime
Definition: Region.h:430
bool RegionChannelsRemove(LoRaMacRegion_t region, ChannelRemoveParams_t *channelRemove)
Removes a channel.
InitType_t
Definition: Region.h:326
bool DutyCycle
Definition: Region.h:508
LoRaMacStatus_t RegionChannelAdd(LoRaMacRegion_t region, ChannelAddParams_t *channelAdd)
Adds a channel.
uint16_t PktLen
Definition: Region.h:634
InitType_t Type
Definition: Region.h:489
uint32_t Frequency
Definition: Region.h:500
uint8_t ChannelId
Definition: Region.h:737
void RegionComputeRxWindowParameters(LoRaMacRegion_t region, int8_t datarate, uint8_t minRxSymbols, uint32_t rxError, RxConfigParams_t *rxConfigParams)
uint32_t Rx1Frequency
Definition: Region.h:741
uint8_t Rfu1Size
Definition: Region.h:371
PhyAttribute_t Attribute
Definition: Region.h:417
void * NvmGroup1
Definition: Region.h:481
void RegionRxBeaconSetup(LoRaMacRegion_t region, RxBeaconSetup_t *rxBeaconSetup, uint8_t *outDr)
Sets the radio into beacon reception mode.
PhyAttribute_t
Definition: Region.h:84
bool LastTxIsJoinRequest
Definition: Region.h:791
Version_t Version
Definition: Region.h:645
bool RegionVerify(LoRaMacRegion_t region, VerifyParams_t *verify, PhyAttribute_t phyAttribute)
Verifies a parameter.
Definition: LoRaMacTypes.h:1165
int8_t TxPower
Definition: Region.h:504
bool RegionRxConfig(LoRaMacRegion_t region, RxConfigParams_t *rxConfig, int8_t *datarate)
Configuration of the RX windows.
TimerTime_t LastTxDoneTime
Definition: Region.h:462
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:406
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:587
LoRa MAC layer implementation.
uint8_t MaxEirp
Definition: Region.h:726
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:367
ChannelsMask_t
Definition: Region.h:347
void RegionSetContinuousWave(LoRaMacRegion_t region, ContinuousWaveParams_t *continuousWave)
Sets the radio into continuous wave mode.
float AntennaGain
Definition: Region.h:630
TimerTime_t AggrTimeOff
Definition: Region.h:767
uint32_t Value
Definition: Region.h:386
uint16_t * ChannelsMask
Definition: Region.h:394
float fValue
Definition: Region.h:390
bool Joined
Definition: Region.h:458
int8_t RegionDlChannelReq(LoRaMacRegion_t region, DlChannelReqParams_t *dlChannelReq)
The function processes a DlChannel Request.
uint16_t SymbolTimeout
Definition: Region.h:863
uint8_t Bandwidth
Definition: Region.h:575
uint8_t * Payload
Definition: Region.h:537
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:552
bool RxContinuous
Definition: Region.h:599
int8_t ChannelId
Definition: Region.h:707
LoRaMacRxSlot_t
Definition: LoRaMac.h:198
bool AdrEnabled
Definition: Region.h:661
int8_t CurrentDatarate
Definition: Region.h:665
LoRaMacRxSlot_t RxSlot
Definition: Region.h:603
TimerTime_t LastTxAirTime
Definition: Region.h:466
uint8_t RegionRxParamSetupReq(LoRaMacRegion_t region, RxParamSetupReqParams_t *rxParamSetupReq)
The function processes a RX Parameter Setup Request.
void * NvmGroup2
Definition: Region.h:485
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:556