Ensure library compiles even if no frequency plan was selected

This commit is contained in:
Manuel Bleichenbacher 2018-07-23 17:36:28 +02:00
parent 585c4b80bb
commit 9f0d912758
3 changed files with 13 additions and 6 deletions

View File

@ -2,13 +2,13 @@ menu "The Things Network"
choice TTN_LORA_FREQ
prompt "TTN LoRa frequency"
default TTN_LORA_FREQ_NONE
default TTN_LORA_FREQ_DISABLED
help
LoRa frequency must match the geographic region the device is operated in.
Running it with the incorrect frequency most like violates the law.
Running it with the incorrect frequency most likely violates the law.
config TTN_LORA_FREQ_NONE
bool "None"
config TTN_LORA_FREQ_DISABLED
bool "LoRa Disabled"
config TTN_LORA_FREQ_EU_868
bool "868 MHz (Europe)"

View File

@ -14,6 +14,7 @@
#include "esp_event.h"
#include "esp_log.h"
#include "TheThingsNetwork.h"
#include "config.h"
#include "hal.h"
#include "hal_esp32.h"
#include "lmic.h"
@ -37,10 +38,15 @@ static ClientAction clientAction = eActionUnrelated;
TheThingsNetwork::TheThingsNetwork()
: messageCallback(NULL)
{
#if defined(TTN_IS_DISABLED)
ESP_LOGE(TAG, "TTN is disabled. Configure a frequency plan using 'make menuconfig'");
ASSERT(0);
esp_restart();
#endif
ASSERT(ttnInstance == NULL);
ttnInstance = this;
hal_initCriticalSection();
}
TheThingsNetwork::~TheThingsNetwork()

View File

@ -24,7 +24,8 @@ extern "C" {
#elif defined(CONFIG_TTN_LORA_FREQ_US_915)
#define CFG_us915 1
#else
#error TTN LoRa frequency must be configured using 'make menuconfig'
#define TTN_IS_DISABLED 1
#define CFG_eu868 1
#endif
#if defined(CONFIG_TTN_RADIO_SX1272_73)