when running "split" (different TX / RX frequencies), the calls to radio.setBandwidth() in changeFreqTx() / changeFreqRx() are passing the raw, scaled int value of bandwidth, direct from Config. this will be rejected, with a return code of RADIOLIB_ERR_INVALID_BANDWIDTH.

change these to match what's done in setup()
This commit is contained in:
N1IOX 2026-01-12 19:37:47 -05:00
parent fe705519cb
commit 3c9cf01ff4

View file

@ -105,7 +105,7 @@ namespace LoRa_Utils {
radio.setSpreadingFactor(Config.loramodule.rxSpreadingFactor);
radio.setCodingRate(Config.loramodule.rxCodingRate4);
float signalBandwidth = Config.loramodule.rxSignalBandwidth/1000;
float signalBandwidth = Config.loramodule.rxSignalBandwidth / 1000;
radio.setBandwidth(signalBandwidth);
radio.setCRC(true);
@ -156,7 +156,8 @@ namespace LoRa_Utils {
radio.setFrequency(freq);
radio.setSpreadingFactor(Config.loramodule.txSpreadingFactor);
radio.setCodingRate(Config.loramodule.txCodingRate4);
radio.setBandwidth(Config.loramodule.txSignalBandwidth);
float signalBandwidth = Config.loramodule.txSignalBandwidth / 1000;
radio.setBandwidth(signalBandwidth);
}
void changeFreqRx() {
@ -165,7 +166,8 @@ namespace LoRa_Utils {
radio.setFrequency(freq);
radio.setSpreadingFactor(Config.loramodule.rxSpreadingFactor);
radio.setCodingRate(Config.loramodule.rxCodingRate4);
radio.setBandwidth(Config.loramodule.rxSignalBandwidth);
float signalBandwidth = Config.loramodule.rxSignalBandwidth / 1000;
radio.setBandwidth(signalBandwidth);
}
void sendNewPacket(const String& newPacket) {