diff --git a/data/is-cfg.json b/data/is-cfg.json index bab9eae..dbf0b70 100644 --- a/data/is-cfg.json +++ b/data/is-cfg.json @@ -1,5 +1,5 @@ { - "callsign": "NOCALL-10", + "callsign": "OK1FWG-11", "network": { "DHCP": true, "static": { @@ -11,29 +11,29 @@ }, "hostname": { "overwrite": false, - "name": "NOCALL-10" + "name": "OK1FWG-11" } }, "wifi": { "active": true, "AP": [ { - "SSID": "YOURSSID", - "password": "YOURPASSWORD" + "SSID": "FWG2", + "password": "K8I/0N8c" } ] }, "beacon": { - "message": "LoRa iGATE & Digi, Info: github.com/lora-aprs/LoRa_APRS_iGate", + "message": "LoRa iGATE & Digi, ", "position": { - "latitude": 0.000000, - "longitude": 0.000000 + "latitude": 50.033687, + "longitude": 15.798107 }, "timeout": 15 }, "aprs_is": { "active": true, - "passcode": "", + "passcode": "23208", "server": "euro.aprs2.net", "port": 14580 }, @@ -48,12 +48,13 @@ "power": 20, "spreading_factor": 12, "signal_bandwidth": 125000, - "coding_rate4": 5 + "coding_rate4": 5, + "signal_info": true }, "display": { - "always_on": true, + "always_on": false, "timeout": 10, - "overwrite_pin": 0, + "overwrite_pin": 17, "turn180": true }, "ftp": { diff --git a/platformio.ini b/platformio.ini index c955992..5ae1892 100644 --- a/platformio.ini +++ b/platformio.ini @@ -2,7 +2,7 @@ default_envs = lora_board [env] -platform = espressif32 @ 3.1.1 +platform = espressif32 @ 3.4.0 framework = arduino lib_ldf_mode = deep+ monitor_speed = 115200 diff --git a/src/TaskModem.cpp b/src/TaskModem.cpp index d3908bc..9fc0f24 100644 --- a/src/TaskModem.cpp +++ b/src/TaskModem.cpp @@ -40,6 +40,17 @@ bool ModemTask::loop(System &system) { if (_lora_aprs.checkMessage()) { std::shared_ptr msg = _lora_aprs.getMessage(); // msg->getAPRSBody()->setData(msg->getAPRSBody()->getData() + " 123"); + + // Added for reporting additional information like RSSI&SNR + if (system.getUserConfig()->lora.signalInfo) { + String addSigInfo = msg->getBody()->getData(); + int lastIndex = addSigInfo.lastIndexOf("!"); + int index = addSigInfo.substring(0, lastIndex).lastIndexOf("!"); + addSigInfo.replace("\n", ""); + String rssi_snr = String(" RSSI: " + String(_lora_aprs.packetRssi()) + " dBm SNR: " + String(_lora_aprs.packetSnr()) + " dB "); + addSigInfo = String(addSigInfo.substring(0, index - 1) + rssi_snr + addSigInfo.substring(index) + "\n"); + msg->getBody()->setData(addSigInfo); + } logPrintD("[" + timeString() + "] "); logPrintD("Received packet '"); logPrintD(msg->toString()); diff --git a/src/project_configuration.cpp b/src/project_configuration.cpp index 3ca11f2..56f3ab9 100644 --- a/src/project_configuration.cpp +++ b/src/project_configuration.cpp @@ -58,6 +58,7 @@ void ProjectConfigurationManagement::readProjectConfiguration(DynamicJsonDocumen conf.lora.spreadingFactor = data["lora"]["spreading_factor"] | 12; conf.lora.signalBandwidth = data["lora"]["signal_bandwidth"] | 125000; conf.lora.codingRate4 = data["lora"]["coding_rate4"] | 5; + conf.lora.signalInfo = data["lora"]["signal_info"] | true; conf.display.alwaysOn = data["display"]["always_on"] | true; conf.display.timeout = data["display"]["timeout"] | 10; conf.display.overwritePin = data["display"]["overwrite_pin"] | 0; @@ -122,6 +123,7 @@ void ProjectConfigurationManagement::writeProjectConfiguration(Configuration &co data["lora"]["spreading_factor"] = conf.lora.spreadingFactor; data["lora"]["signal_bandwidth"] = conf.lora.signalBandwidth; data["lora"]["coding_rate4"] = conf.lora.codingRate4; + data["lora"]["signal_info"] = conf.lora.signalInfo; data["display"]["always_on"] = conf.display.alwaysOn; data["display"]["timeout"] = conf.display.timeout; data["display"]["overwrite_pin"] = conf.display.overwritePin; diff --git a/src/project_configuration.h b/src/project_configuration.h index 09745c4..8b31f56 100644 --- a/src/project_configuration.h +++ b/src/project_configuration.h @@ -89,6 +89,7 @@ public: int spreadingFactor; long signalBandwidth; int codingRate4; + bool signalInfo; }; class Display {