wayne roberts / lorawan1v1

Dependencies:   sx12xx_hal

Dependents:   LoRaWAN-SanJose_Bootcamp LoRaWAN-grove-cayenne LoRaWAN-classC-demo LoRaWAN-grove-cayenne ... more

Revision:
3:eb174e10afbb
Parent:
0:6b3ac9c5a042
Child:
4:e4bfe9183f94
--- a/mac/LoRaMacPrivate.h	Thu Mar 01 17:27:30 2018 +0000
+++ b/mac/LoRaMacPrivate.h	Mon Mar 05 16:49:15 2018 -0800
@@ -105,6 +105,7 @@
      */
     MOTE_MAC_RX_TIMING_SETUP_ANS     = 0x08,
 
+    SRV_MAC_ADR_PARAM_SETUP_ANS      = 0x0c,
 #ifdef LORAWAN_JOIN_EUI
     MOTE_MAC_REKEY_IND               = 0x0b,
     MOTE_MAC_REJOIN_PARAM_ANS        = 0x0f,
@@ -169,7 +170,7 @@
     /*!
      * Number of uplink messages repetitions [1:15] (unconfirmed messages only)
      */
-    uint8_t NbTrans;//ChannelsNbRep;
+    uint8_t NbTrans;
     /*!
      * Datarate offset between uplink and downlink on first window
      */
@@ -182,6 +183,7 @@
      * Mask indicating which channels are enabled
      */
     uint16_t ChannelsMask[6];
+    uint8_t NbEnabledChannels;
 } LoRaMacParams_t;
 
 /*!
@@ -299,6 +301,7 @@
      */
     SRV_MAC_RX_TIMING_SETUP_REQ      = 0x08,
 
+    SRV_MAC_ADR_PARAM_SETUP_REQ      = 0x0c,
 #ifdef LORAWAN_JOIN_EUI
     SRV_MAC_REKEY_CONF               = 0x0b,
     SRV_MAC_FORCE_REJOIN_REQ         = 0x0e,
@@ -373,7 +376,7 @@
 LoRaMacStatus_t LoRaMacChannelRemove( uint8_t id );
 LoRaMacStatus_t LoRaMacChannelAdd( uint8_t id, ChannelParams_t params );
 
-void region_adr_next_dr(int8_t* dr, bool);
+//void region_adr_next_dr(int8_t* dr, bool);
 void region_ScheduleTx( void );
 uint32_t region_GetRxBandwidth( int8_t datarate );
 uint16_t region_GetRxSymbolTimeout( int8_t datarate );
@@ -382,10 +385,15 @@
 void region_adr_request(adr_t*);
 void region_tx_setup(int8_t dbm, uint8_t pkt_len);
 void region_session_start(LoRaMacEventInfoStatus_t);
+int8_t region_LimitTxPower( int8_t txPower );
+uint8_t region_CountNbEnabledChannels(void);
+#ifdef LORAWAN_JOIN_EUI
+int8_t region_AlternateDatarate( uint16_t nbTrials );
+#endif /* LORAWAN_JOIN_EUI  */
 
 /* from LoRaMac.cpp: */
 extern LoRaMacParams_t LoRaMacParams;
-extern LoRaMacParams_t LoRaMacParamsDefaults;
+extern const LoRaMacParams_t LoRaMacParamsDefaults;
 extern uint8_t Channel;
 void SendFrameOnChannel( uint8_t ch_num );
 void RxWindowSetup( unsigned freq, int8_t datarate, unsigned bandwidth, uint16_t timeout);