Skip to content

Commit fc182dd

Browse files
author
Daniel Jäckle
committed
Add the possibility to set and get the ChannelsDefaultDatarate.
1 parent 9dcb489 commit fc182dd

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed

src/mac/LoRaMac.c

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3004,6 +3004,11 @@ LoRaMacStatus_t LoRaMacMibGetRequestConfirm( MibRequestConfirm_t *mibGet )
30043004
mibGet->Param.JoinAcceptDelay2 = JoinAcceptDelay2;
30053005
break;
30063006
}
3007+
case MIB_CHANNELS_DEFAULT_DATARATE:
3008+
{
3009+
mibGet->Param.ChannelsDefaultDatarate = ChannelsDefaultDatarate;
3010+
break;
3011+
}
30073012
case MIB_CHANNELS_DATARATE:
30083013
{
30093014
mibGet->Param.ChannelsDatarate = ChannelsDatarate;
@@ -3219,6 +3224,19 @@ LoRaMacStatus_t LoRaMacMibSetRequestConfirm( MibRequestConfirm_t *mibSet )
32193224
JoinAcceptDelay2 = mibSet->Param.JoinAcceptDelay2;
32203225
break;
32213226
}
3227+
case MIB_CHANNELS_DEFAULT_DATARATE:
3228+
{
3229+
if( ValueInRange( mibSet->Param.ChannelsDefaultDatarate,
3230+
LORAMAC_TX_MIN_DATARATE, LORAMAC_TX_MAX_DATARATE ) )
3231+
{
3232+
ChannelsDefaultDatarate = mibSet->Param.ChannelsDefaultDatarate;
3233+
}
3234+
else
3235+
{
3236+
status = LORAMAC_STATUS_PARAMETER_INVALID;
3237+
}
3238+
break;
3239+
}
32223240
case MIB_CHANNELS_DATARATE:
32233241
{
32243242
if( ValueInRange( mibSet->Param.ChannelsDatarate,

src/mac/LoRaMac.h

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -985,6 +985,7 @@ typedef struct sMlmeConfirm
985985
* \ref MIB_JOIN_ACCEPT_DELAY_1 | YES | YES
986986
* \ref MIB_JOIN_ACCEPT_DELAY_2 | YES | YES
987987
* \ref MIB_CHANNELS_DATARATE | YES | YES
988+
* \ref MIB_CHANNELS_DEFAULT_DATARATE| YES | YES
988989
* \ref MIB_CHANNELS_TX_POWER | YES | YES
989990
* \ref MIB_UPLINK_COUNTER | YES | NO
990991
* \ref MIB_DOWNLINK_COUNTER | YES | NO
@@ -1116,6 +1117,16 @@ typedef enum eMib
11161117
* LoRaWAN Specification V1.0, chapter 6
11171118
*/
11181119
MIB_JOIN_ACCEPT_DELAY_2,
1120+
/*!
1121+
* Default Data rate of a channel
1122+
*
1123+
* LoRaWAN Specification V1.0, chapter 7
1124+
*
1125+
* EU868 - [DR_0, DR_1, DR_2, DR_3, DR_4, DR_5, DR_6, DR_7]
1126+
*
1127+
* US915 - [DR_0, DR_1, DR_2, DR_3, DR_4, DR_8, DR_9, DR_10, DR_11, DR_12, DR_13]
1128+
*/
1129+
MIB_CHANNELS_DEFAULT_DATARATE,
11191130
/*!
11201131
* Data rate of a channel
11211132
*
@@ -1273,6 +1284,12 @@ typedef union uMibParam
12731284
* Related MIB type: \ref MIB_JOIN_ACCEPT_DELAY_2
12741285
*/
12751286
uint32_t JoinAcceptDelay2;
1287+
/*!
1288+
* Channels data rate
1289+
*
1290+
* Related MIB type: \ref MIB_CHANNELS_DEFAULT_DATARATE
1291+
*/
1292+
int8_t ChannelsDefaultDatarate;
12761293
/*!
12771294
* Channels data rate
12781295
*

0 commit comments

Comments
 (0)