mirror of
https://github.com/lora-aprs/LoRa_APRS_iGate.git
synced 2026-02-05 07:14:19 +01:00
add RF Bake
This commit is contained in:
parent
6eb82b78bf
commit
d82db93801
|
|
@ -25,19 +25,20 @@ String create_long_aprs(double lng);
|
|||
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> toAprsIs;
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> fromModem;
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> toModem;
|
||||
|
||||
System LoRaSystem;
|
||||
Configuration userConfig;
|
||||
|
||||
DisplayTask displayTask;
|
||||
ModemTask modemTask(fromModem);
|
||||
ModemTask modemTask(fromModem, toModem);
|
||||
EthTask ethTask;
|
||||
WifiTask wifiTask;
|
||||
OTATask otaTask;
|
||||
NTPTask ntpTask;
|
||||
FTPTask ftpTask;
|
||||
AprsIsTask aprsIsTask(toAprsIs);
|
||||
RouterTask routerTask(fromModem, toAprsIs);
|
||||
RouterTask routerTask(fromModem, toModem, toAprsIs);
|
||||
|
||||
// cppcheck-suppress unusedFunction
|
||||
void setup() {
|
||||
|
|
|
|||
|
|
@ -7,7 +7,8 @@
|
|||
#include "TaskModem.h"
|
||||
#include "project_configuration.h"
|
||||
|
||||
ModemTask::ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem) : Task(TASK_MODEM, TaskModem), _fromModem(fromModem) {
|
||||
ModemTask::ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem, TaskQueue<std::shared_ptr<APRSMessage>> &toModem)
|
||||
: Task(TASK_MODEM, TaskModem), _fromModem(fromModem), _toModem(toModem) {
|
||||
}
|
||||
|
||||
ModemTask::~ModemTask() {
|
||||
|
|
@ -51,5 +52,10 @@ bool ModemTask::loop(System &system) {
|
|||
system.getDisplay().addFrame(std::shared_ptr<DisplayFrame>(new TextFrame("LoRa", msg->toString())));
|
||||
}
|
||||
|
||||
if (!_toModem.empty()) {
|
||||
std::shared_ptr<APRSMessage> msg = _toModem.getElement();
|
||||
_lora_aprs.sendMessage(msg);
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
class ModemTask : public Task {
|
||||
public:
|
||||
explicit ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem);
|
||||
explicit ModemTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem, TaskQueue<std::shared_ptr<APRSMessage>> &_toModem);
|
||||
virtual ~ModemTask();
|
||||
|
||||
virtual bool setup(System &system) override;
|
||||
|
|
@ -15,7 +15,9 @@ public:
|
|||
|
||||
private:
|
||||
LoRa_APRS _lora_aprs;
|
||||
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> &_fromModem;
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> &_toModem;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -9,7 +9,10 @@
|
|||
String create_lat_aprs(double lat);
|
||||
String create_long_aprs(double lng);
|
||||
|
||||
RouterTask::RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem, TaskQueue<std::shared_ptr<APRSMessage>> &toAprsIs) : Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toAprsIs(toAprsIs) {
|
||||
RouterTask::RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem
|
||||
, TaskQueue<std::shared_ptr<APRSMessage>> &toModem
|
||||
, TaskQueue<std::shared_ptr<APRSMessage>> &toAprsIs)
|
||||
: Task(TASK_ROUTER, TaskRouter), _fromModem(fromModem), _toModem(toModem), _toAprsIs(toAprsIs) {
|
||||
}
|
||||
|
||||
RouterTask::~RouterTask() {
|
||||
|
|
@ -53,6 +56,13 @@ bool RouterTask::loop(System &system) {
|
|||
if (system.getUserConfig()->aprs_is.active)
|
||||
_toAprsIs.addElement(_beaconMsg);
|
||||
|
||||
if (system.getUserConfig()->digi.beacon) {
|
||||
std::shared_ptr<APRSMessage> msg = _beaconMsg;
|
||||
msg->setPath("WIDE1-1");
|
||||
|
||||
_toModem.addElement(msg);
|
||||
}
|
||||
|
||||
system.getDisplay().addFrame(std::shared_ptr<DisplayFrame>(new TextFrame("BEACON", _beaconMsg->toString())));
|
||||
|
||||
_beacon_timer.start();
|
||||
|
|
|
|||
|
|
@ -6,7 +6,9 @@
|
|||
|
||||
class RouterTask : public Task {
|
||||
public:
|
||||
RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem, TaskQueue<std::shared_ptr<APRSMessage>> &toAprsIs);
|
||||
RouterTask(TaskQueue<std::shared_ptr<APRSMessage>> &fromModem
|
||||
, TaskQueue<std::shared_ptr<APRSMessage>> &toModem
|
||||
, TaskQueue<std::shared_ptr<APRSMessage>> &toAprsIs);
|
||||
virtual ~RouterTask();
|
||||
|
||||
virtual bool setup(System &system) override;
|
||||
|
|
@ -14,6 +16,7 @@ public:
|
|||
|
||||
private:
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> &_fromModem;
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> &_toModem;
|
||||
TaskQueue<std::shared_ptr<APRSMessage>> &_toAprsIs;
|
||||
|
||||
std::shared_ptr<APRSMessage> _beaconMsg;
|
||||
|
|
|
|||
Loading…
Reference in a new issue