Skip to content

Commit 4564b7b

Browse files
committed
Add function for turning low data rate optimize on/off
It's required everywhere where the symbol length exceeds 16 ms
1 parent c80a125 commit 4564b7b

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

src/LoRa.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -416,6 +416,12 @@ void LoRaClass::setSyncWord(int sw)
416416
writeRegister(REG_SYNC_WORD, sw);
417417
}
418418

419+
void LoRaClass::enableLowDataRateOptimize(bool enabled)
420+
{
421+
uint8_t regValue = readRegister(REG_MODEM_CONFIG_3);
422+
writeRegister(REG_MODEM_CONFIG_3, bitWrite(regValue, 3, enabled));
423+
}
424+
419425
void LoRaClass::enableCrc()
420426
{
421427
writeRegister(REG_MODEM_CONFIG_2, readRegister(REG_MODEM_CONFIG_2) | 0x04);

src/LoRa.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ class LoRaClass : public Stream {
8282
void setCodingRate4(int denominator);
8383
void setPreambleLength(long length);
8484
void setSyncWord(int sw);
85+
void enableLowDataRateOptimize(bool enabled);
8586
void enableCrc();
8687
void disableCrc();
8788

0 commit comments

Comments
 (0)