You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I haven't tested this yet, but I think if the following patch is applied to the source upstream, one could add the following segment to configs.ini (which might make it a valuable addition):
[lora]lora_freq=868.0
lora.patch:
diff --git a/lora.cpp b/lora.cpp
index 6b03536..ae1833b 100644
--- a/lora.cpp+++ b/lora.cpp@@ -43,7 +43,20 @@ void Lora::setup() {
loraSPI->setPins(HSPI_MISO, HSPI_MOSI, HSPI_SCLK);
pinMode(RFM95_RST, OUTPUT);
rf95->init();
- rf95->setFrequency(RF95_FREQ);+++ float freq = RF95_FREQ;+ // Load phone configs+ {+ CriticalFile ini(Storage::ConfigsFile);+ if ((ini.load() || ini.restore()) && !ini.isEmpty()) {+ if (ini[0].hasKey("v") && !strcmp(ini[0]["v"], "1")) { // check version of the file format+ if ( ini.hasSection("lora") )+ freq = ini["lora"].getFloatValueSafe("lora_freq", RF95_FREQ);+ }+ }+ }+ rf95->setFrequency(freq);
rf95->setTxPower(23, false);
log_v("Free memory after LoRa: %d %d", ESP.getFreeHeap(), heap_caps_get_free_size(MALLOC_CAP_32BIT));
Note that it might need better orchestration of the ini file parsing; it's a bit inline-hacky.
Also: it is only applied after reboot: for full functionality, the setFrequency() needs to be taken out of the setup() function.
Instead of having to rebuild the firmware on each update
The text was updated successfully, but these errors were encountered: