DISCO-L072CZ-LRWAN1-base
Dependencies: BufferedSerial LoRaWAN-lib-st-murata ST-DEVKIT-LRWAN mbed
main.h
- Committer:
- alphaemmeo
- Date:
- 2017-12-04
- Revision:
- 1:dcf49b02bfd9
- Parent:
- 0:60680ad16314
File content as of revision 1:dcf49b02bfd9:
/* * Copyright (c) Ivano Calabrese * Licensed under the Apache License, Version 2.0); */ #include "mbed.h" #include "PinMap.h" #include "BufferedSerial.h" //#include "GenericPingPong.h" void SystemClock_Config(void); extern BufferedSerial *ser; extern void dump(const char *title, const void *data, int len, bool dwords = false); #define dprintf(...) { ser->printf(__VA_ARGS__); ser->printf("\r\n"); } /*! * Defines the application data transmission duty cycle. 5s, value in [ms]. */ #define APP_TX_DUTYCYCLE 60000 /*! * Defines a random delay for application data transmission duty cycle. 1s, * value in [ms]. */ #define APP_TX_DUTYCYCLE_RND 1000 /*! * LoRaWAN application port */ #define LORAWAN_APP_PORT 1 #define LORAWAN_APP_DATA_SIZE 1 /*! * User application data buffer size */ #define LORAWAN_APP_DATA_MAX_SIZE 64 /*! * Mote device IEEE EUI (big endian) */ //#define LORAWAN_DEVICE_EUI { IEEE_OUI, 0x44, 0x55, 0x66, 0x77, 0x88 } #define LORAWAN_DEVICE_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11 } /*! * Application IEEE EUI (big endian) */ #define LORAWAN_APPLICATION_EUI { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11 } /*! * AES encryption/decryption cipher application key */ #define LORAWAN_APPLICATION_KEY { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11 } /*! * 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 0 /*! * Indicates if the end-device is to be connected to a private or public network */ #define LORAWAN_PUBLIC_NETWORK true /*! * Default datarate */ #define LORAWAN_DEFAULT_DATARATE DR_0 /*! * LoRaWAN confirmed messages */ #define LORAWAN_CONFIRMED_MSG_ON false /*! * Current network ID */ #define LORAWAN_NETWORK_ID ( uint32_t )0 /*! * Device address on the network (big endian) */ #define LORAWAN_DEVICE_ADDRESS ( uint32_t )0x12345678 /*! * AES encryption/decryption cipher network session key */ #define LORAWAN_NWKSKEY { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 } /*! * AES encryption/decryption cipher application session key */ #define LORAWAN_APPSKEY { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 } /*! * LoRaWAN Adaptive Data Rate * * \remark Please note that when ADR is enabled the end-device should be static */ #define LORAWAN_ADR_ON 1 #if defined( USE_BAND_868 ) /*! * LoRaWAN ETSI duty cycle control enable/disable * * \remark Please note that ETSI mandates duty cycled transmissions. Use only for test purposes */ #define LORAWAN_DUTYCYCLE_ON false #define LC4 { 867100000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } #define LC5 { 867300000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } #define LC6 { 867500000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } #define LC7 { 867700000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } #define LC8 { 867900000, { ( ( DR_5 << 4 ) | DR_0 ) }, 0 } #define LC9 { 868800000, { ( ( DR_7 << 4 ) | DR_7 ) }, 2 } #define LC10 { 868300000, { ( ( DR_6 << 4 ) | DR_6 ) }, 1 } #endif /*! * Indicates if the MAC layer network join status has changed. */ static bool IsNetworkJoinedStatusUpdate = false;