Hi,
I got a project with an ESP32S3 and a Lora Ra-02 (SX1278) that communicate with a Heltec Wifi Lora (V3) at 433 MHz. I need some advice because the range in open area is about 100 m, and I would like to upgrade it to 500 m.
ESP32S3 (Sandeep Mistry library):
#define ss 10
#define rst 14
#define dio0 2
loraModule.setPins(ss, rst, dio0);
while (!LoRa.begin(433E6))
{
Serial.println(".");
delay(500);
}
loraModule.setTxPower(20);
loraModule.setSpreadingFactor(7);
loraModule.setSignalBandwidth(125E3);
loraModule.setCodingRate4(5);
loraModule.setPreambleLength(8);
loraModule.enableCrc();
loraModule.setSyncWord(0xA5);
Heltec (Heltec library) :
#define RF_FREQUENCY 433000000 // Hz
#define TX_OUTPUT_POWER 20 // dBm
#define LORA_BANDWIDTH 0 // [0: 125 kHz, \
// 1: 250 kHz, \
// 2: 500 kHz, \
// 3: Reserved]
#define LORA_SPREADING_FACTOR 7 // [SF7..SF12]
#define LORA_CODINGRATE 1 // [1: 4/5, \
// 2: 4/6, \
// 3: 4/7, \
// 4: 4/8]
#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx
#define LORA_SYMBOL_TIMEOUT 0 // Symbols
#define LORA_FIX_LENGTH_PAYLOAD_ON false
#define LORA_IQ_INVERSION_ON false
Radio.SetChannel(RF_FREQUENCY);
Radio.SetRxConfig(
MODEM_LORA,
LORA_BANDWIDTH,
LORA_SPREADING_FACTOR,
LORA_CODINGRATE,
0, // AFC bandwidth (N/A)
LORA_PREAMBLE_LENGTH,
LORA_SYMBOL_TIMEOUT,
LORA_FIX_LENGTH_PAYLOAD_ON,
0, // payload length (0 = variable)
true, // CRC enabled
0, // frequency hopping
0, // hop period
LORA_IQ_INVERSION_ON,
true // continuous receive mode
);
Radio.SetTxConfig(
MODEM_LORA,
TX_OUTPUT_POWER,
0,
LORA_BANDWIDTH,
LORA_SPREADING_FACTOR,
LORA_CODINGRATE,
LORA_PREAMBLE_LENGTH,
LORA_FIX_LENGTH_PAYLOAD_ON,
true,
0,
0,
LORA_IQ_INVERSION_ON,
3000
);
Radio.SetSyncWord(0xA5);
I already tested to upgrade the SF, but the result is that they can’t communicate anymore.
I used this antenna for both of them :



