diff --git a/src/LoRa_APRS_iGate.cpp b/src/LoRa_APRS_iGate.cpp index 62355c98..b839e471 100644 --- a/src/LoRa_APRS_iGate.cpp +++ b/src/LoRa_APRS_iGate.cpp @@ -20,7 +20,7 @@ #include "TaskWifi.h" #include "project_configuration.h" -#define VERSION "22.12.2" +#define VERSION "22.12.3" #define MODULE_NAME "Main" String create_lat_aprs(double lat); @@ -109,23 +109,30 @@ void setup() { LoRaSystem.getTaskManager().addTask(&routerTask); LoRaSystem.getTaskManager().addTask(&beaconTask); - if (userConfig.aprs_is.active) { - if (boardConfig->Type == eETH_BOARD && !userConfig.wifi.active) { - LoRaSystem.getTaskManager().addAlwaysRunTask(ðTask); - } - if (userConfig.wifi.active) { - LoRaSystem.getTaskManager().addAlwaysRunTask(&wifiTask); - } + bool tcpip = false; + + if (userConfig.wifi.active) { + LoRaSystem.getTaskManager().addAlwaysRunTask(&wifiTask); LoRaSystem.getTaskManager().addTask(&otaTask); + tcpip = true; + } else if (boardConfig->Type == eETH_BOARD) { + LoRaSystem.getTaskManager().addAlwaysRunTask(ðTask); + tcpip = true; + } + + if (tcpip) { LoRaSystem.getTaskManager().addTask(&ntpTask); if (userConfig.ftp.active) { LoRaSystem.getTaskManager().addTask(&ftpTask); } - LoRaSystem.getTaskManager().addTask(&aprsIsTask); - } - if (userConfig.mqtt.active) { - LoRaSystem.getTaskManager().addTask(&mqttTask); + if (userConfig.aprs_is.active) { + LoRaSystem.getTaskManager().addTask(&aprsIsTask); + } + + if (userConfig.mqtt.active) { + LoRaSystem.getTaskManager().addTask(&mqttTask); + } } LoRaSystem.getTaskManager().setup(LoRaSystem);