diff --git a/src/LoRa_APRS_iGate.cpp b/src/LoRa_APRS_iGate.cpp index af97d49..1dfea9a 100644 --- a/src/LoRa_APRS_iGate.cpp +++ b/src/LoRa_APRS_iGate.cpp @@ -13,7 +13,6 @@ #include "TaskEth.h" #include "TaskFTP.h" #include "TaskMQTT.h" -//#include "TaskModem.h" #include "TaskNTP.h" #include "TaskOTA.h" #include "TaskRadiolib.h" diff --git a/src/TaskRadiolib.cpp b/src/TaskRadiolib.cpp index 34f05b9..afc7ac2 100644 --- a/src/TaskRadiolib.cpp +++ b/src/TaskRadiolib.cpp @@ -1,10 +1,7 @@ +#include +#include #include -#include -#include - -#include "Task.h" -#include "TaskAprsIs.h" #include "TaskRadiolib.h" RadiolibTask::RadiolibTask(TaskQueue> &fromModem, TaskQueue> &toModem) : Task(TASK_RADIOLIB, TaskRadiolib), _fromModem(fromModem), _toModem(toModem) { @@ -80,13 +77,15 @@ bool RadiolibTask::setup(System &system) { rxEnable = false; txEnable = false; } + _stateInfo = "LoRa-Modem failed"; + _state = Error; } state = radio->setCRC(true); if (state != RADIOLIB_ERR_NONE) { system.getLogger().log(logging::LoggerLevel::LOGGER_LEVEL_ERROR, getName(), "[%s] setCRC failed, code %d", timeString().c_str(), state); - while (true) - ; + _stateInfo = "LoRa-Modem failed"; + _state = Error; } radio->setDio0Action(setFlag); @@ -95,12 +94,15 @@ bool RadiolibTask::setup(System &system) { int state = startRX(RADIOLIB_SX127X_RXCONTINUOUS); if (state != RADIOLIB_ERR_NONE) { system.getLogger().log(logging::LoggerLevel::LOGGER_LEVEL_ERROR, getName(), "[%s] startRX failed, code %d", timeString().c_str(), state); - rxEnable = false; + rxEnable = false; + _stateInfo = "LoRa-Modem failed"; + _state = Error; } } preambleDurationMilliSec = ((uint64_t)(preambleLength + 4) << (config.spreadingFactor + 10 /* to milli-sec */)) / config.signalBandwidth; + _stateInfo = ""; return true; } diff --git a/src/TaskRadiolib.h b/src/TaskRadiolib.h index 2f9cc85..11e59da 100644 --- a/src/TaskRadiolib.h +++ b/src/TaskRadiolib.h @@ -2,8 +2,8 @@ #define TASK_LORA_H_ #include "project_configuration.h" +#include #include -#include #include #include