Revert "Digipeater - Different LoRa Settings for RX and TX"

pull/117/head
Peter Buchegger 2021-09-19 21:36:51 +02:00 zatwierdzone przez GitHub
rodzic b2d5f507d9
commit f8dfdc1246
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
6 zmienionych plików z 44 dodań i 155 usunięć

Wyświetl plik

@ -35,16 +35,12 @@
"beacon": false "beacon": false
}, },
"lora": { "lora": {
"rxFrequency": 433775000, "frequency_rx": 433775000,
"rxSpreadingFactor": 12, "frequency_tx": 433775000,
"rxSignalBandwidth": 125000, "power": 20,
"rxCodingRate4": 5, "spreading_factor": 12,
"rxGain": 1, "signal_bandwidth": 125000,
"txFrequency": 433900000, "coding_rate4": 5
"txSpreadingFactor": 11,
"txSignalBandwidth": 125000,
"txCodingRate4": 5,
"txPower": 20
}, },
"display": { "display": {
"always_on": true, "always_on": true,

Wyświetl plik

@ -1,6 +1,6 @@
#include "LoRa_APRS.h" #include "LoRa_APRS.h"
LoRa_APRS::LoRa_APRS() : _rxFrequency(433775000), _rxSpreadingFactor(12), _rxSignalBandwidth(125000), _rxCodingRate4(5), _txFrequency(433775000), _txSpreadingFactor(12), _txSignalBandwidth(125000), _txCodingRate4(5) { LoRa_APRS::LoRa_APRS() : _RxFrequency(433775000), _TxFrequency(433775000) {
} }
bool LoRa_APRS::checkMessage() { bool LoRa_APRS::checkMessage() {
@ -32,10 +32,7 @@ std::shared_ptr<APRSMessage> LoRa_APRS::getMessage() {
} }
void LoRa_APRS::sendMessage(const std::shared_ptr<APRSMessage> msg) { void LoRa_APRS::sendMessage(const std::shared_ptr<APRSMessage> msg) {
setSpreadingFactor(_txSpreadingFactor); setFrequency(_TxFrequency);
setSignalBandwidth(_txSignalBandwidth);
setCodingRate4(_txCodingRate4);
setFrequency(_txFrequency);
String data = msg->encode(); String data = msg->encode();
beginPacket(); beginPacket();
// Header: // Header:
@ -45,84 +42,24 @@ void LoRa_APRS::sendMessage(const std::shared_ptr<APRSMessage> msg) {
// APRS Data: // APRS Data:
write((const uint8_t *)data.c_str(), data.length()); write((const uint8_t *)data.c_str(), data.length());
endPacket(); endPacket();
setSpreadingFactor(_rxSpreadingFactor); setFrequency(_RxFrequency);
setSignalBandwidth(_rxSignalBandwidth);
setCodingRate4(_rxCodingRate4);
setFrequency(_rxFrequency);
} }
void LoRa_APRS::setRxFrequency(long frequency) { void LoRa_APRS::setRxFrequency(long frequency) {
_rxFrequency = frequency; _RxFrequency = frequency;
setFrequency(_rxFrequency); setFrequency(_RxFrequency);
} }
// cppcheck-suppress unusedFunction // cppcheck-suppress unusedFunction
long LoRa_APRS::getRxFrequency() const { long LoRa_APRS::getRxFrequency() const {
return _rxFrequency; return _RxFrequency;
} }
void LoRa_APRS::setTxFrequency(long frequency) { void LoRa_APRS::setTxFrequency(long frequency) {
_txFrequency = frequency; _TxFrequency = frequency;
} }
// cppcheck-suppress unusedFunction // cppcheck-suppress unusedFunction
long LoRa_APRS::getTxFrequency() const { long LoRa_APRS::getTxFrequency() const {
return _txFrequency; return _TxFrequency;
}
void LoRa_APRS::setRxSpreadingFactor(int spreadingFactor) {
_rxSpreadingFactor = spreadingFactor;
setSpreadingFactor(_rxSpreadingFactor);
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getRxSpreadingFactor() const {
return _rxSpreadingFactor;
}
void LoRa_APRS::setRxSignalBandwidth(long signalBandwidth) {
_rxSignalBandwidth = signalBandwidth;
setSignalBandwidth(_rxSignalBandwidth);
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getRxSignalBandwidth() const {
return _rxSignalBandwidth;
}
void LoRa_APRS::setRxCodingRate4(int codingRate) {
_rxCodingRate4 = codingRate;
setCodingRate4(_rxCodingRate4);
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getRxCodingRate4() const {
return _rxCodingRate4;
}
void LoRa_APRS::setTxSpreadingFactor(int spreadingFactor) {
_txSpreadingFactor = spreadingFactor;
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getTxSpreadingFactor() const {
return _txSpreadingFactor;
}
void LoRa_APRS::setTxSignalBandwidth(long signalBandwidth) {
_txSignalBandwidth = signalBandwidth;
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getTxSignalBandwidth() const {
return _txSignalBandwidth;
}
void LoRa_APRS::setTxCodingRate4(int codingRate) {
_txCodingRate4 = codingRate;
}
// cppcheck-suppress unusedFunction
long LoRa_APRS::getTxCodingRate4() const {
return _txCodingRate4;
} }

Wyświetl plik

@ -22,34 +22,10 @@ public:
void setTxFrequency(long frequency); void setTxFrequency(long frequency);
long getTxFrequency() const; long getTxFrequency() const;
void setRxSpreadingFactor(int spreadingFactor);
long getRxSpreadingFactor() const;
void setRxSignalBandwidth(long signalBandwidth);
long getRxSignalBandwidth() const;
void setRxCodingRate4(int codingRate);
long getRxCodingRate4() const;
void setTxSpreadingFactor(int spreadingFactor);
long getTxSpreadingFactor() const;
void setTxSignalBandwidth(long signalBandwidth);
long getTxSignalBandwidth() const;
void setTxCodingRate4(int codingRate);
long getTxCodingRate4() const;
private: private:
std::shared_ptr<APRSMessage> _LastReceivedMsg; std::shared_ptr<APRSMessage> _LastReceivedMsg;
long _rxFrequency; long _RxFrequency;
int _rxSpreadingFactor; long _TxFrequency;
long _rxSignalBandwidth;
int _rxCodingRate4;
long _txFrequency;
int _txSpreadingFactor;
long _txSignalBandwidth;
int _txCodingRate4;
}; };
#endif #endif

Wyświetl plik

@ -16,24 +16,19 @@ ModemTask::~ModemTask() {
bool ModemTask::setup(System &system) { bool ModemTask::setup(System &system) {
SPI.begin(system.getBoardConfig()->LoraSck, system.getBoardConfig()->LoraMiso, system.getBoardConfig()->LoraMosi, system.getBoardConfig()->LoraCS); SPI.begin(system.getBoardConfig()->LoraSck, system.getBoardConfig()->LoraMiso, system.getBoardConfig()->LoraMosi, system.getBoardConfig()->LoraCS);
_lora_aprs.setPins(system.getBoardConfig()->LoraCS, system.getBoardConfig()->LoraReset, system.getBoardConfig()->LoraIRQ); _lora_aprs.setPins(system.getBoardConfig()->LoraCS, system.getBoardConfig()->LoraReset, system.getBoardConfig()->LoraIRQ);
if (!_lora_aprs.begin(system.getUserConfig()->lora.rxFrequency)) { if (!_lora_aprs.begin(system.getUserConfig()->lora.frequencyRx)) {
logPrintlnE("Starting LoRa failed!"); logPrintlnE("Starting LoRa failed!");
_stateInfo = "LoRa-Modem failed"; _stateInfo = "LoRa-Modem failed";
_state = Error; _state = Error;
while (true) while (true)
; ;
} }
_lora_aprs.setRxFrequency(system.getUserConfig()->lora.rxFrequency); _lora_aprs.setRxFrequency(system.getUserConfig()->lora.frequencyRx);
_lora_aprs.setRxSpreadingFactor(system.getUserConfig()->lora.rxSpreadingFactor); _lora_aprs.setTxFrequency(system.getUserConfig()->lora.frequencyTx);
_lora_aprs.setRxSignalBandwidth(system.getUserConfig()->lora.rxSignalBandwidth); _lora_aprs.setTxPower(system.getUserConfig()->lora.power);
_lora_aprs.setRxCodingRate4(system.getUserConfig()->lora.rxCodingRate4); _lora_aprs.setSpreadingFactor(system.getUserConfig()->lora.spreadingFactor);
_lora_aprs.setGain(system.getUserConfig()->lora.rxGain); _lora_aprs.setSignalBandwidth(system.getUserConfig()->lora.signalBandwidth);
_lora_aprs.setCodingRate4(system.getUserConfig()->lora.codingRate4);
_lora_aprs.setTxFrequency(system.getUserConfig()->lora.txFrequency);
_lora_aprs.setTxSpreadingFactor(system.getUserConfig()->lora.txSpreadingFactor);
_lora_aprs.setTxSignalBandwidth(system.getUserConfig()->lora.txSignalBandwidth);
_lora_aprs.setTxCodingRate4(system.getUserConfig()->lora.txCodingRate4);
_lora_aprs.setTxPower(system.getUserConfig()->lora.txPower);
_lora_aprs.enableCrc(); _lora_aprs.enableCrc();
_stateInfo = ""; _stateInfo = "";

Wyświetl plik

@ -36,21 +36,14 @@ void ProjectConfigurationManagement::readProjectConfiguration(DynamicJsonDocumen
conf.aprs_is.server = data["aprs_is"]["server"].as<String>(); conf.aprs_is.server = data["aprs_is"]["server"].as<String>();
conf.aprs_is.port = data["aprs_is"]["port"] | 14580; conf.aprs_is.port = data["aprs_is"]["port"] | 14580;
conf.digi.active = data["digi"]["active"] | false; conf.digi.active = data["digi"]["active"] | false;
conf.digi.beacon = data["digi"]["beacon"] | false; conf.digi.beacon = data["digi"]["beacon"] | false;
conf.lora.frequencyRx = data["lora"]["frequency_rx"] | 433775000;
conf.lora.rxFrequency = data["lora"]["rxFrequency"] | 433775000; conf.lora.frequencyTx = data["lora"]["frequency_tx"] | 433775000;
conf.lora.rxSpreadingFactor = data["lora"]["rxSpreadingFactor"] | 12; conf.lora.power = data["lora"]["power"] | 20;
conf.lora.rxSignalBandwidth = data["lora"]["rxSignalBandwidth"] | 125000; conf.lora.spreadingFactor = data["lora"]["spreading_factor"] | 12;
conf.lora.rxCodingRate4 = data["lora"]["rxCodingRate4"] | 5; conf.lora.signalBandwidth = data["lora"]["signal_bandwidth"] | 125000;
conf.lora.rxGain = data["lora"]["rxGain"] | 1; conf.lora.codingRate4 = data["lora"]["coding_rate4"] | 5;
conf.lora.txFrequency = data["lora"]["txFrequency"] | 433775000;
conf.lora.txSpreadingFactor = data["lora"]["txSpreadingFactor"] | 12;
conf.lora.txSignalBandwidth = data["lora"]["txSignalBandwidth"] | 125000;
conf.lora.txCodingRate4 = data["lora"]["txCodingRate4"] | 5;
conf.lora.txPower = data["lora"]["txPower"] | 20;
conf.display.alwaysOn = data["display"]["always_on"] | true; conf.display.alwaysOn = data["display"]["always_on"] | true;
conf.display.timeout = data["display"]["timeout"] | 10; conf.display.timeout = data["display"]["timeout"] | 10;
conf.display.overwritePin = data["display"]["overwrite_pin"] | 0; conf.display.overwritePin = data["display"]["overwrite_pin"] | 0;
@ -105,16 +98,12 @@ void ProjectConfigurationManagement::writeProjectConfiguration(Configuration &co
data["aprs_is"]["port"] = conf.aprs_is.port; data["aprs_is"]["port"] = conf.aprs_is.port;
data["digi"]["active"] = conf.digi.active; data["digi"]["active"] = conf.digi.active;
data["digi"]["beacon"] = conf.digi.beacon; data["digi"]["beacon"] = conf.digi.beacon;
data["lora"]["rxFrequency"] = conf.lora.rxFrequency; data["lora"]["frequency_rx"] = conf.lora.frequencyRx;
data["lora"]["rxSpreadingFactor"] = conf.lora.rxSpreadingFactor; data["lora"]["frequency_tx"] = conf.lora.frequencyTx;
data["lora"]["rxSignalBandwidth"] = conf.lora.rxSignalBandwidth; data["lora"]["power"] = conf.lora.power;
data["lora"]["rxCodingRate4"] = conf.lora.rxCodingRate4; data["lora"]["spreading_factor"] = conf.lora.spreadingFactor;
data["lora"]["rxGain"] = conf.lora.rxGain; data["lora"]["signal_bandwidth"] = conf.lora.signalBandwidth;
data["lora"]["txFrequency"] = conf.lora.txFrequency; data["lora"]["coding_rate4"] = conf.lora.codingRate4;
data["lora"]["txSpreadingFactor"] = conf.lora.txSpreadingFactor;
data["lora"]["txSignalBandwidth"] = conf.lora.txSignalBandwidth;
data["lora"]["txCodingRate4"] = conf.lora.txCodingRate4;
data["lora"]["txPower"] = conf.lora.txPower;
data["display"]["always_on"] = conf.display.alwaysOn; data["display"]["always_on"] = conf.display.alwaysOn;
data["display"]["timeout"] = conf.display.timeout; data["display"]["timeout"] = conf.display.timeout;
data["display"]["overwrite_pin"] = conf.display.overwritePin; data["display"]["overwrite_pin"] = conf.display.overwritePin;

Wyświetl plik

@ -66,19 +66,15 @@ public:
class LoRa { class LoRa {
public: public:
LoRa() : rxFrequency(433775000), rxSpreadingFactor(12), rxSignalBandwidth(125000), rxCodingRate4(5), rxGain(1), txFrequency(433775000), txSpreadingFactor(12), txSignalBandwidth(125000), txCodingRate4(5), txPower(20) { LoRa() : frequencyRx(433775000), frequencyTx(433775000), power(20), spreadingFactor(12), signalBandwidth(125000), codingRate4(5) {
} }
long rxFrequency; long frequencyRx;
int rxSpreadingFactor; long frequencyTx;
long rxSignalBandwidth; int power;
int rxCodingRate4; int spreadingFactor;
int rxGain; long signalBandwidth;
long txFrequency; int codingRate4;
int txSpreadingFactor;
long txSignalBandwidth;
int txCodingRate4;
int txPower;
}; };
class Display { class Display {