diff --git a/config.h b/config.h index 9928968..59c7953 100644 --- a/config.h +++ b/config.h @@ -19,15 +19,9 @@ // lora pinouts, CAD and ISR usage #define CFG_LORA_PIN_SS SS #define CFG_LORA_PIN_RST LORA_RST -// check board config!! -// SX127x - DIO0 -// SX126X - DIO1 -#define CFG_LORA_PIN_DIO0 LORA_IRQ +#define CFG_LORA_PIN_A LORA_IRQ // sx127x - dio0, sx126x - dio1 #ifdef USE_RADIOLIB -// check board config!! -// SX127X - DIO1 (if connected) -// SX126X - BUSY -#define CFG_LORA_PIN_DIO1 RADIOLIB_NC +#define CFG_LORA_PIN_B RADIOLIB_NC // sx127x - dio1, sx126x - busy #define CFG_LORA_USE_ISR true // always ON for RadioLib #else #define CFG_LORA_PIN_DIO1 LORA_IRQ // not used in arduino-LoRa diff --git a/esp32_loraprs.ino b/esp32_loraprs.ino index fb488ec..975aac3 100644 --- a/esp32_loraprs.ino +++ b/esp32_loraprs.ino @@ -34,8 +34,8 @@ void initializeConfig(LoraPrs::Config &cfg) { cfg.LoraPinSs = CFG_LORA_PIN_SS; cfg.LoraPinRst = CFG_LORA_PIN_RST; // For RadioLib DIO0 and DIO1 will depend on Module signature, check RadioLib documentation - cfg.LoraPinDio0 = CFG_LORA_PIN_DIO0; // depends on module type, might be DIO1 for SX126x!! - cfg.LoraPinDio1 = CFG_LORA_PIN_DIO1; // valid for radiolib only, depends on module type, might be BUSY for SX126x!! + cfg.LoraPinA = CFG_LORA_PIN_A; // (sx127x - dio0, sx126x - dio1) + cfg.LoraPinB = CFG_LORA_PIN_B; // (sx127x - dio1, sx126x - busy) cfg.LoraUseIsr = CFG_LORA_USE_ISR; // set to true for incoming packet ISR usage (stream mode, e.g. speech) cfg.LoraUseCad = CFG_LORA_USE_CAD; // carrier detect diff --git a/loraprs_config.h b/loraprs_config.h index 2c15d72..62f3460 100644 --- a/loraprs_config.h +++ b/loraprs_config.h @@ -21,8 +21,8 @@ struct Config // lora hardware pinouts and isr byte LoraPinSs; // lora ss pin byte LoraPinRst; // lora rst pin - byte LoraPinDio0; // lora dio0 pin - byte LoraPinDio1; // lora dio1 pin + byte LoraPinA; // lora dio0 pin (sx127x), dio1 (sx126x), check module docs + byte LoraPinB; // lora dio1 pin (sx127x), busy (sx126x), check module docs bool LoraUseIsr; // true to use interrupts, false for fallback polling, e.g. if Dio0 is not connected bool LoraUseCad; // use carrier detect before transmitting diff --git a/loraprs_service.cpp b/loraprs_service.cpp index 65a1d0b..5649b74 100644 --- a/loraprs_service.cpp +++ b/loraprs_service.cpp @@ -196,7 +196,7 @@ void Service::setupLora(long loraFreq, long bw, int sf, int cr, int pwr, int syn isImplicitHeaderMode_ = sf == 6; #ifdef USE_RADIOLIB - radio_ = std::make_shared(new Module(config_.LoraPinSs, config_.LoraPinDio0, config_.LoraPinRst, config_.LoraPinDio1)); + radio_ = std::make_shared(new Module(config_.LoraPinSs, config_.LoraPinA, config_.LoraPinRst, config_.LoraPinB)); int state = radio_->begin((float)loraFreq / 1e6, (float)bw / 1e3, sf, cr, sync, pwr); if (state != ERR_NONE) { LOG_ERROR("Radio start error:", state);