Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ void setup() {
Serial.println("Set frequency to 915 Mhz");
LoRa.setFrequency(915000000);

// Set TX power, default power for SX1262 and SX1268 are +22 dBm and for SX1261 is +14 dBm
// Set TX power, default power for SX1262, SX1268 and LLCC68 are +22 dBm and for SX1261 is +14 dBm
// This function will set PA config with optimal setting for requested TX power
Serial.println("Set TX power to +17 dBm");
LoRa.setTxPower(17, SX126X_TX_POWER_SX1262); // TX power +17 dBm for SX1262
Expand Down
1 change: 1 addition & 0 deletions keywords.txt
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,7 @@ SX126X_FSK_MODEM LITERAL1
SX126X_LORA_MODEM LITERAL1
SX126X_TX_POWER_SX1261 LITERAL1
SX126X_TX_POWER_SX1262 LITERAL1
SX126X_TX_POWER_LLCC68 LITERAL1
SX126X_TX_POWER_SX1268 LITERAL1
SX126X_RX_GAIN_POWER_SAVING LITERAL1
SX126X_RX_GAIN_BOOSTED LITERAL1
Expand Down
24 changes: 12 additions & 12 deletions src/BaseLoRa.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,18 +44,18 @@ class BaseLoRa

public:

virtual void beginPacket();
virtual bool endPacket(uint32_t timeout);
virtual void write(uint8_t data);
virtual void write(uint8_t* data, uint8_t length);

virtual bool request(uint32_t timeout);
virtual uint8_t available();
virtual uint8_t read();
virtual uint8_t read(uint8_t* data, uint8_t length);

virtual bool wait(uint32_t timeout);
virtual uint8_t status();
virtual void beginPacket() = 0;
virtual bool endPacket(uint32_t timeout) = 0;
virtual void write(uint8_t data) = 0;
virtual void write(uint8_t* data, uint8_t length) = 0;

virtual bool request(uint32_t timeout) = 0;
virtual uint8_t available() = 0;
virtual uint8_t read() = 0;
virtual uint8_t read(uint8_t* data, uint8_t length) = 0;

virtual bool wait(uint32_t timeout) = 0;
virtual uint8_t status() = 0;

};

Expand Down
8 changes: 4 additions & 4 deletions src/SX126x.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ void SX126x::setTxPower(uint8_t txPower, uint8_t version)
paDutyCycle = 0x04;
hpMax = 0x00;
power = 0x0E;
} else if (txPower >= 14 && version == SX126X_TX_POWER_SX1262) {
} else if (txPower >= 14 && (version == SX126X_TX_POWER_SX1262 || version == SX126X_TX_POWER_LLCC68)) {
paDutyCycle = 0x02;
hpMax = 0x02;
power = 0x16;
Expand All @@ -250,13 +250,13 @@ void SX126x::setTxPower(uint8_t txPower, uint8_t version)
paDutyCycle = 0x01;
hpMax = 0x00;
power = 0x0D;
} else if (txPower >= 10 && version == SX126X_TX_POWER_SX1268) {
} else if (txPower >= 10 && (version == SX126X_TX_POWER_SX1268 || version == SX126X_TX_POWER_LLCC68)) {
paDutyCycle = 0x00;
hpMax = 0x03;
power = 0x0F;
} else {
return;
}
// There shouldn't have been an `else` here:
// https://github.com/chandrawi/LoRaRF-Arduino/issues/16

// set power amplifier and TX power configuration
sx126x_setPaConfig(paDutyCycle, hpMax, deviceSel, 0x01);
Expand Down
1 change: 1 addition & 0 deletions src/SX126x_driver.h
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@
// SetPaConfig
#define SX126X_TX_POWER_SX1261 0x01 // device version for TX power: SX1261
#define SX126X_TX_POWER_SX1262 0x02 // : SX1262
#define SX126X_TX_POWER_LLCC68 0x06 // : LLCC68
#define SX126X_TX_POWER_SX1268 0x08 // : SX1268

// SetRxTxFallbackMode
Expand Down