/*!
|
* \file Commissioning.h
|
*
|
* \brief End device commissioning parameters
|
*
|
* \copyright Revised BSD License, see section \ref LICENSE.
|
*
|
* \code
|
* ______ _
|
* / _____) _ | |
|
* ( (____ _____ ____ _| |_ _____ ____| |__
|
* \____ \| ___ | (_ _) ___ |/ ___) _ \
|
* _____) ) ____| | | || |_| ____( (___| | | |
|
* (______/|_____)_|_|_| \__)_____)\____)_| |_|
|
* (C)2013-2017 Semtech
|
*
|
* \endcode
|
*
|
* \author Miguel Luis ( Semtech )
|
*
|
* \author Gregory Cristian ( Semtech )
|
*/
|
#ifndef __LORA_COMMISSIONING_H__
|
#define __LORA_COMMISSIONING_H__
|
|
/*!
|
******************************************************************************
|
********************************** WARNING ***********************************
|
******************************************************************************
|
The crypto-element implementation supports both 1.0.x and 1.1.x LoRaWAN
|
versions of the specification.
|
Thus it has been decided to use the 1.1.x keys and EUI name definitions.
|
The below table shows the names equivalence between versions:
|
+---------------------+-------------------------+
|
| 1.0.x | 1.1.x |
|
+=====================+=========================+
|
| LORAWAN_DEVICE_EUI | LORAWAN_DEVICE_EUI |
|
+---------------------+-------------------------+
|
| LORAWAN_APP_EUI | LORAWAN_JOIN_EUI |
|
+---------------------+-------------------------+
|
| LORAWAN_GEN_APP_KEY | LORAWAN_APP_KEY |
|
+---------------------+-------------------------+
|
| LORAWAN_APP_KEY | LORAWAN_NWK_KEY |
|
+---------------------+-------------------------+
|
| LORAWAN_NWK_S_KEY | LORAWAN_F_NWK_S_INT_KEY |
|
+---------------------+-------------------------+
|
| LORAWAN_NWK_S_KEY | LORAWAN_S_NWK_S_INT_KEY |
|
+---------------------+-------------------------+
|
| LORAWAN_NWK_S_KEY | LORAWAN_NWK_S_ENC_KEY |
|
+---------------------+-------------------------+
|
| LORAWAN_APP_S_KEY | LORAWAN_APP_S_KEY |
|
+---------------------+-------------------------+
|
******************************************************************************
|
******************************************************************************
|
******************************************************************************
|
*/
|
|
/*!
|
* When set to 1 the application uses the Over-the-Air activation procedure
|
* When set to 0 the application uses the Personalization activation procedure
|
*/
|
//#define OVER_THE_AIR_ACTIVATION (DeviceParamInfor.Settings.DeviceInfor.LoRaStaActiveMode)
|
#define LORAWAN_WORK_CHANNEL DeviceParamInfor.Settings.DeviceInfor.WorkChannel
|
#define OVER_THE_AIR_ACTIVATION ABP_MODE
|
|
/*!
|
* When using ABP activation the MAC layer must know in advance to which server
|
* version it will be connected.
|
*/
|
#define ABP_ACTIVATION_LRWAN_VERSION_V10x 0x01000300 // 1.0.3.0
|
|
#define ABP_ACTIVATION_LRWAN_VERSION ABP_ACTIVATION_LRWAN_VERSION_V10x
|
|
/*!
|
* Indicates if the end-device is to be connected to a private or public network
|
*/
|
#define LORAWAN_PUBLIC_NETWORK true
|
|
/*!
|
* IEEE Organizationally Unique Identifier ( OUI ) (big endian)
|
* \remark This is unique to a company or organization
|
*/
|
#define IEEE_OUI 0x88, 0x00, 0x00
|
|
/*!
|
* Mote device IEEE EUI (big endian)
|
*
|
* \remark In this application the value is automatically generated by calling
|
* BoardGetUniqueId function
|
*/
|
#define LORAWAN_DEVICE_EUI { IEEE_OUI, 0x00, 0x00, 0x88, 0x88, 0x88 }
|
|
/*!
|
* App/Join server IEEE EUI (big endian)
|
*/
|
#define LORAWAN_JOIN_EUI { 0X70, 0XB3, 0XD5, 0X7E, 0XD0, 0X02, 0X63, 0X42 }
|
|
/*!
|
* Application root key
|
* WARNING: NOT USED FOR 1.0.x DEVICES
|
*/
|
#define LORAWAN_APP_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
/*!
|
* Application root key - Used to derive Multicast keys on 1.0.x devices.
|
* WARNING: USED only FOR 1.0.x DEVICES
|
*/
|
#define LORAWAN_GEN_APP_KEY { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F }
|
|
/*!
|
* Network root key
|
* WARNING: FOR 1.0.x DEVICES IT IS THE \ref LORAWAN_APP_KEY
|
*/
|
#define LORAWAN_NWK_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
/*!
|
* Current network ID
|
*/
|
#define LORAWAN_NETWORK_ID ( uint32_t )0
|
|
/*!
|
* Device address on the network (big endian)
|
*
|
* \remark In this application the value is automatically generated using
|
* a pseudo random generator seeded with a value derived from
|
* BoardUniqueId value if LORAWAN_DEVICE_ADDRESS is set to 0
|
*/
|
#define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x88888888
|
|
/*!
|
* Forwarding Network session integrity key
|
* WARNING: NWK_S_KEY FOR 1.0.x DEVICES
|
*/
|
#define LORAWAN_F_NWK_S_INT_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
/*!
|
* Serving Network session integrity key
|
* WARNING: NOT USED FOR 1.0.x DEVICES. MUST BE THE SAME AS \ref LORAWAN_F_NWK_S_INT_KEY
|
*/
|
#define LORAWAN_S_NWK_S_INT_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
/*!
|
* Network session encryption key
|
* WARNING: NOT USED FOR 1.0.x DEVICES. MUST BE THE SAME AS \ref LORAWAN_F_NWK_S_INT_KEY
|
*/
|
#define LORAWAN_NWK_S_ENC_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
/*!
|
* Application session key
|
*/
|
#define LORAWAN_APP_S_KEY { 0x2B, 0x7E, 0x15, 0x16, 0x28, 0xAE, 0xD2, 0xA6, 0xAB, 0xF7, 0x15, 0x88, 0x09, 0xCF, 0x4F, 0x3C }
|
|
#endif // __LORA_COMMISSIONING_H__
|