|
|
@@ -12,6 +12,19 @@
|
|
|
|
|
|
/* ------------------------------ Config -------------------------------- */
|
|
|
|
|
|
+#ifndef LORA_FREQ
|
|
|
+ #define LORA_FREQ 915.0
|
|
|
+#endif
|
|
|
+#ifndef LORA_BW
|
|
|
+ #define LORA_BW 125
|
|
|
+#endif
|
|
|
+#ifndef LORA_SF
|
|
|
+ #define LORA_SF 10
|
|
|
+#endif
|
|
|
+#ifndef LORA_CR
|
|
|
+ #define LORA_CR 5
|
|
|
+#endif
|
|
|
+
|
|
|
#define ANNOUNCE_DATA "repeater:v1"
|
|
|
|
|
|
#define ADMIN_PASSWORD "h^(kl@#)"
|
|
|
@@ -296,11 +309,18 @@ void setup() {
|
|
|
delay(5000);
|
|
|
|
|
|
board.begin();
|
|
|
+
|
|
|
+#ifdef SX126X_DIO3_TCXO_VOLTAGE
|
|
|
+ float tcxo = SX126X_DIO3_TCXO_VOLTAGE;
|
|
|
+#else
|
|
|
+ float tcxo = 1.6f;
|
|
|
+#endif
|
|
|
+
|
|
|
#if defined(P_LORA_SCLK)
|
|
|
spi.begin(P_LORA_SCLK, P_LORA_MISO, P_LORA_MOSI);
|
|
|
- int status = radio.begin(915.0, 250, 9, 5, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, 22);
|
|
|
+ int status = radio.begin(LORA_FREQ, LORA_BW, LORA_SF, LORA_CR, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, 22, 8, tcxo);
|
|
|
#else
|
|
|
- int status = radio.begin(915.0, 250, 9, 5, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, 22);
|
|
|
+ int status = radio.begin(LORA_FREQ, LORA_BW, LORA_SF, LORA_CR, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, 22, 8, tcxo);
|
|
|
#endif
|
|
|
if (status != RADIOLIB_ERR_NONE) {
|
|
|
Serial.print("ERROR: radio init failed: ");
|
|
|
@@ -308,6 +328,14 @@ void setup() {
|
|
|
halt();
|
|
|
}
|
|
|
|
|
|
+#ifdef SX126X_CURRENT_LIMIT
|
|
|
+ radio.setCurrentLimit(SX126X_CURRENT_LIMIT);
|
|
|
+#endif
|
|
|
+
|
|
|
+#ifdef SX126X_DIO2_AS_RF_SWITCH
|
|
|
+ radio.setDio2AsRfSwitch(SX126X_DIO2_AS_RF_SWITCH);
|
|
|
+#endif
|
|
|
+
|
|
|
SPIFFS.begin(true);
|
|
|
IdentityStore store(SPIFFS, "/identity");
|
|
|
if (!store.load("_main", the_mesh.self_id)) {
|