diff --git a/_f_e_c_8h_source.html b/_f_e_c_8h_source.html index b4d7ac74..cd7fe77c 100644 --- a/_f_e_c_8h_source.html +++ b/_f_e_c_8h_source.html @@ -136,10 +136,10 @@ $(document).ready(function(){initNavTree('_f_e_c_8h_source.html',''); initResiza
72 extern RadioLibBCH RadioLibBCHInstance;
73 
74 // macros to access bits in byte array, from http://www.mathcs.emory.edu/~cheung/Courses/255/Syllabus/1-C-intro/bit-array.html
-
75 #define SET_BIT_IN_ARRAY(A, k) ( A[(k/8)] |= (1 << (k%8)) )
-
76 #define CLEAR_BIT_IN_ARRAY(A, k) ( A[(k/8)] &= ~(1 << (k%8)) )
-
77 #define TEST_BIT_IN_ARRAY(A, k) ( A[(k/8)] & (1 << (k%8)) )
-
78 #define GET_BIT_IN_ARRAY(A, k) ( (A[(k/8)] & (1 << (k%8))) ? 1 : 0 )
+
75 #define SET_BIT_IN_ARRAY_MSB(A, k) ( A[((k)/8)] |= (1 << ((k)%8)) )
+
76 #define CLEAR_BIT_IN_ARRAY_MSB(A, k) ( A[((k)/8)] &= ~(1 << ((k)%8)) )
+
77 #define TEST_BIT_IN_ARRAY_MSB(A, k) ( A[((k)/8)] & (1 << ((k)%8)) )
+
78 #define GET_BIT_IN_ARRAY_MSB(A, k) ( (A[((k)/8)] & (1 << ((k)%8))) ? 1 : 0 )
79 
80 
81 #endif
diff --git a/_s_t_m32_w_lx_8h_source.html b/_s_t_m32_w_lx_8h_source.html index dc0a5cd6..87c0d4f2 100644 --- a/_s_t_m32_w_lx_8h_source.html +++ b/_s_t_m32_w_lx_8h_source.html @@ -186,7 +186,7 @@ $(document).ready(function(){initNavTree('_s_t_m32_w_lx_8h_source.html',''); ini
STM32WLx::setPacketReceivedAction
void setPacketReceivedAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is received.
Definition: STM32WLx.cpp:130
STM32WLx::beginFSK
int16_t beginFSK(float freq=434.0, float br=4.8, float freqDev=5.0, float rxBw=156.2, int8_t power=10, uint16_t preambleLength=16, float tcxoVoltage=1.6, bool useRegulatorLDO=false)
Initialization method for FSK modem.
Definition: STM32WLx.cpp:27
SX1262
Derived class for SX1262 modules.
Definition: SX1262.h:22
-
SX126x::setRfSwitchTable
void setRfSwitchTable(const uint32_t(&pins)[Module::RFSWITCH_MAX_PINS], const Module::RfSwitchMode_t table[])
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1533
+
SX126x::setRfSwitchTable
void setRfSwitchTable(const uint32_t(&pins)[Module::RFSWITCH_MAX_PINS], const Module::RfSwitchMode_t table[])
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1447
diff --git a/_s_x126x_8h_source.html b/_s_x126x_8h_source.html index e293cee2..3607d979 100644 --- a/_s_x126x_8h_source.html +++ b/_s_x126x_8h_source.html @@ -791,29 +791,30 @@ $(document).ready(function(){initNavTree('_s_x126x_8h_source.html',''); initResi
1218  size_t implicitLen = 0;
1219  uint8_t invertIQEnabled = RADIOLIB_SX126X_LORA_IQ_STANDARD;
1220 
-
1221  int16_t config(uint8_t modem);
-
1222  bool findChip(const char* verStr);
-
1223  int16_t startReceiveCommon(uint32_t timeout = RADIOLIB_SX126X_RX_TIMEOUT_INF, RadioLibIrqFlags_t irqFlags = RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask = RADIOLIB_IRQ_RX_DEFAULT_MASK);
-
1224  int16_t setPacketMode(uint8_t mode, uint8_t len);
-
1225  int16_t setHeaderType(uint8_t hdrType, size_t len = 0xFF);
-
1226  int16_t directMode();
-
1227  int16_t packetMode();
-
1228 
-
1229  // fixes to errata
-
1230  int16_t fixSensitivity();
-
1231  int16_t fixImplicitTimeout();
-
1232  int16_t fixInvertedIQ(uint8_t iqConfig);
-
1233 
+
1221  int16_t modSetup(float tcxoVoltage, bool useRegulatorLDO, uint8_t modem);
+
1222  int16_t config(uint8_t modem);
+
1223  bool findChip(const char* verStr);
+
1224  int16_t startReceiveCommon(uint32_t timeout = RADIOLIB_SX126X_RX_TIMEOUT_INF, RadioLibIrqFlags_t irqFlags = RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask = RADIOLIB_IRQ_RX_DEFAULT_MASK);
+
1225  int16_t setPacketMode(uint8_t mode, uint8_t len);
+
1226  int16_t setHeaderType(uint8_t hdrType, size_t len = 0xFF);
+
1227  int16_t directMode();
+
1228  int16_t packetMode();
+
1229 
+
1230  // fixes to errata
+
1231  int16_t fixSensitivity();
+
1232  int16_t fixImplicitTimeout();
+
1233  int16_t fixInvertedIQ(uint8_t iqConfig);
1234 
-
1235  void regdump();
-
1236  void effectEvalPre(uint8_t* buff, uint32_t start);
-
1237  void effectEvalPost(uint8_t* buff, uint32_t start);
-
1238  void effectEval();
-
1239 };
-
1240 
-
1241 #endif
-
1242 
-
1243 #endif
+
1235 
+
1236  void regdump();
+
1237  void effectEvalPre(uint8_t* buff, uint32_t start);
+
1238  void effectEvalPost(uint8_t* buff, uint32_t start);
+
1239  void effectEval();
+
1240 };
+
1241 
+
1242 #endif
+
1243 
+
1244 #endif
Module
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:65
Module::RFSWITCH_MAX_PINS
static const size_t RFSWITCH_MAX_PINS
The maximum number of pins supported by the RF switch code. Note: It is not recommended to use this c...
Definition: Module.h:74
Module::MODE_TX
@ MODE_TX
Transmission mode.
Definition: Module.h:111
@@ -823,90 +824,90 @@ $(document).ready(function(){initNavTree('_s_x126x_8h_source.html',''); initResi
PhysicalLayer::startTransmit
int16_t startTransmit(const char *str, uint8_t addr=0)
Interrupt-driven Arduino String transmit method. Unlike the standard transmit method,...
Definition: PhysicalLayer.cpp:149
PhysicalLayer::receive
virtual int16_t receive(uint8_t *data, size_t len)
Binary receive method. Must be implemented in module class.
Definition: PhysicalLayer.cpp:112
SX126x
Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:442
-
SX126x::startChannelScan
int16_t startChannelScan() override
Interrupt-driven channel activity detection method. DIO1 will be activated when LoRa preamble is dete...
Definition: SX126x.cpp:755
-
SX126x::getFrequencyError
float getFrequencyError()
Gets frequency error of the latest received packet. WARNING: This functionality is based on SX128x im...
Definition: SX126x.cpp:1392
-
SX126x::setRfSwitchPins
void setRfSwitchPins(uint32_t rxEn, uint32_t txEn)
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1529
-
SX126x::setDio1Action
void setDio1Action(void(*func)(void))
Sets interrupt service routine to call when DIO1 activates.
Definition: SX126x.cpp:503
-
SX126x::setPaConfig
int16_t setPaConfig(uint8_t paDutyCycle, uint8_t deviceSel, uint8_t hpMax=RADIOLIB_SX126X_PA_CONFIG_HP_MAX, uint8_t paLut=RADIOLIB_SX126X_PA_CONFIG_PA_LUT)
Set the PA configuration. Allows user to optimize PA for a specific output power and matching network...
Definition: SX126x.cpp:1822
-
SX126x::getTimeOnAir
RadioLibTime_t getTimeOnAir(size_t len) override
Get expected time-on-air for a given size of payload.
Definition: SX126x.cpp:1453
-
SX126x::randomByte
uint8_t randomByte() override
Get one truly random byte from RSSI noise.
Definition: SX126x.cpp:1558
-
SX126x::calculateRxTimeout
RadioLibTime_t calculateRxTimeout(RadioLibTime_t timeoutUs) override
Calculate the timeout value for this specific module / series (in number of symbols or units of time)
Definition: SX126x.cpp:1488
-
SX126x::setDataShaping
int16_t setDataShaping(uint8_t sh) override
Sets time-bandwidth product of Gaussian filter applied for shaping. Allowed values are RADIOLIB_SHAPI...
Definition: SX126x.cpp:1133
-
SX126x::setRegulatorLDO
int16_t setRegulatorLDO()
Set regulator mode to LDO.
Definition: SX126x.cpp:1517
-
SX126x::invertIQ
int16_t invertIQ(bool enable) override
Enable/disable inversion of the I and Q signals.
Definition: SX126x.cpp:1587
-
SX126x::uploadPatch
int16_t uploadPatch(const uint32_t *patch, size_t len, bool nonvolatile=true)
Upload binary patch into the SX126x device RAM. Patch is needed to e.g., enable spectral scan and mus...
Definition: SX126x.cpp:1611
-
SX126x::setEncoding
int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Available in FSK mode only. Serves only as alias for PhysicalLayer compat...
Definition: SX126x.cpp:1525
-
SX126x::setRfSwitchTable
void setRfSwitchTable(const uint32_t(&pins)[Module::RFSWITCH_MAX_PINS], const Module::RfSwitchMode_t table[])
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1533
-
SX126x::beginFSK
int16_t beginFSK(float br, float freqDev, float rxBw, uint16_t preambleLength, float tcxoVoltage, bool useRegulatorLDO=false)
Initialization method for FSK modem.
Definition: SX126x.cpp:111
-
SX126x::setBandwidth
int16_t setBandwidth(float bw)
Sets LoRa bandwidth. Allowed values are 7.8, 10.4, 15.6, 20.8, 31.25, 41.7, 62.5, 125....
Definition: SX126x.cpp:815
+
SX126x::startChannelScan
int16_t startChannelScan() override
Interrupt-driven channel activity detection method. DIO1 will be activated when LoRa preamble is dete...
Definition: SX126x.cpp:669
+
SX126x::getFrequencyError
float getFrequencyError()
Gets frequency error of the latest received packet. WARNING: This functionality is based on SX128x im...
Definition: SX126x.cpp:1306
+
SX126x::setRfSwitchPins
void setRfSwitchPins(uint32_t rxEn, uint32_t txEn)
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1443
+
SX126x::setDio1Action
void setDio1Action(void(*func)(void))
Sets interrupt service routine to call when DIO1 activates.
Definition: SX126x.cpp:417
+
SX126x::setPaConfig
int16_t setPaConfig(uint8_t paDutyCycle, uint8_t deviceSel, uint8_t hpMax=RADIOLIB_SX126X_PA_CONFIG_HP_MAX, uint8_t paLut=RADIOLIB_SX126X_PA_CONFIG_PA_LUT)
Set the PA configuration. Allows user to optimize PA for a specific output power and matching network...
Definition: SX126x.cpp:1736
+
SX126x::getTimeOnAir
RadioLibTime_t getTimeOnAir(size_t len) override
Get expected time-on-air for a given size of payload.
Definition: SX126x.cpp:1367
+
SX126x::randomByte
uint8_t randomByte() override
Get one truly random byte from RSSI noise.
Definition: SX126x.cpp:1472
+
SX126x::calculateRxTimeout
RadioLibTime_t calculateRxTimeout(RadioLibTime_t timeoutUs) override
Calculate the timeout value for this specific module / series (in number of symbols or units of time)
Definition: SX126x.cpp:1402
+
SX126x::setDataShaping
int16_t setDataShaping(uint8_t sh) override
Sets time-bandwidth product of Gaussian filter applied for shaping. Allowed values are RADIOLIB_SHAPI...
Definition: SX126x.cpp:1047
+
SX126x::setRegulatorLDO
int16_t setRegulatorLDO()
Set regulator mode to LDO.
Definition: SX126x.cpp:1431
+
SX126x::invertIQ
int16_t invertIQ(bool enable) override
Enable/disable inversion of the I and Q signals.
Definition: SX126x.cpp:1501
+
SX126x::uploadPatch
int16_t uploadPatch(const uint32_t *patch, size_t len, bool nonvolatile=true)
Upload binary patch into the SX126x device RAM. Patch is needed to e.g., enable spectral scan and mus...
Definition: SX126x.cpp:1525
+
SX126x::setEncoding
int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Available in FSK mode only. Serves only as alias for PhysicalLayer compat...
Definition: SX126x.cpp:1439
+
SX126x::setRfSwitchTable
void setRfSwitchTable(const uint32_t(&pins)[Module::RFSWITCH_MAX_PINS], const Module::RfSwitchMode_t table[])
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX126x.cpp:1447
+
SX126x::beginFSK
int16_t beginFSK(float br, float freqDev, float rxBw, uint16_t preambleLength, float tcxoVoltage, bool useRegulatorLDO=false)
Initialization method for FSK modem.
Definition: SX126x.cpp:68
+
SX126x::setBandwidth
int16_t setBandwidth(float bw)
Sets LoRa bandwidth. Allowed values are 7.8, 10.4, 15.6, 20.8, 31.25, 41.7, 62.5, 125....
Definition: SX126x.cpp:729
SX126x::readData
virtual int16_t readData(uint8_t *data, size_t len)
Reads data that was received after calling startReceive method.
Definition: PhysicalLayer.cpp:209
-
SX126x::explicitHeader
int16_t explicitHeader()
Set explicit header mode for future reception/transmission.
Definition: SX126x.cpp:1513
-
SX126x::clearChannelScanAction
void clearChannelScanAction() override
Clears interrupt service routine to call when a channel scan is finished.
Definition: SX126x.cpp:531
-
SX126x::forceLDRO
int16_t forceLDRO(bool enable)
Forces LoRa low data rate optimization. Only available in LoRa mode. After calling this method,...
Definition: SX126x.cpp:1537
+
SX126x::explicitHeader
int16_t explicitHeader()
Set explicit header mode for future reception/transmission.
Definition: SX126x.cpp:1427
+
SX126x::clearChannelScanAction
void clearChannelScanAction() override
Clears interrupt service routine to call when a channel scan is finished.
Definition: SX126x.cpp:445
+
SX126x::forceLDRO
int16_t forceLDRO(bool enable)
Forces LoRa low data rate optimization. Only available in LoRa mode. After calling this method,...
Definition: SX126x.cpp:1451
SX126x::transmit
int16_t transmit(const char *str, uint8_t addr=0)
C-string transmit method.
Definition: PhysicalLayer.cpp:52
-
SX126x::setDirectAction
void setDirectAction(void(*func)(void)) override
Set interrupt service routine function to call when data bit is received in direct mode.
Definition: SX126x.cpp:1602
-
SX126x::setIrqFlags
int16_t setIrqFlags(uint32_t irq) override
Set interrupt on DIO1 to be sent on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX126x.cpp:1501
-
SX126x::setNodeAddress
int16_t setNodeAddress(uint8_t nodeAddr)
Sets node address. Calling this method will also enable address filtering for node address only.
Definition: SX126x.cpp:1213
-
SX126x::spectralScanGetStatus
int16_t spectralScanGetStatus()
Read the status of spectral scan.
Definition: SX126x.cpp:1678
-
SX126x::clearPacketReceivedAction
void clearPacketReceivedAction() override
Clears interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:515
-
SX126x::setTCXO
int16_t setTCXO(float voltage, uint32_t delay=5000)
Sets TCXO (Temperature Compensated Crystal Oscillator) configuration.
Definition: SX126x.cpp:1698
-
SX126x::getSNR
float getSNR() override
Gets SNR (Signal to Noise Ratio) of the last received packet. Only available for LoRa modem.
Definition: SX126x.cpp:1376
-
SX126x::setRxBandwidth
int16_t setRxBandwidth(float rxBw)
Sets FSK receiver bandwidth. Allowed values are 4.8, 5.8, 7.3, 9.7, 11.7, 14.6, 19....
Definition: SX126x.cpp:1033
-
SX126x::setRegulatorDCDC
int16_t setRegulatorDCDC()
Set regulator mode to DC-DC.
Definition: SX126x.cpp:1521
-
SX126x::startReceive
int16_t startReceive() override
Interrupt-driven receive method with default parameters. Implemented for compatibility with PhysicalL...
Definition: SX126x.cpp:604
-
SX126x::clearDio1Action
void clearDio1Action()
Clears interrupt service routine to call when DIO1 activates.
Definition: SX126x.cpp:507
-
SX126x::checkDataRate
int16_t checkDataRate(DataRate_t dr) override
Check the data rate can be configured by this module.
Definition: SX126x.cpp:1012
-
SX126x::setPacketReceivedAction
void setPacketReceivedAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:511
-
SX126x::getRSSI
float getRSSI() override
Gets recorded signal strength indicator. Overload with packet mode enabled for PhysicalLayer compatib...
Definition: SX126x.cpp:1358
-
SX126x::standby
int16_t standby() override
Sets the module to standby mode (overload for PhysicalLayer compatibility, uses 13 MHz RC oscillator)...
Definition: SX126x.cpp:486
-
SX126x::setFrequencyDeviation
int16_t setFrequencyDeviation(float freqDev) override
Sets FSK frequency deviation. Allowed values range from 0.0 to 200.0 kHz.
Definition: SX126x.cpp:938
-
SX126x::spectralScanAbort
void spectralScanAbort()
Abort an ongoing spectral scan.
Definition: SX126x.cpp:1674
-
SX126x::sleep
int16_t sleep() override
Sets the module to sleep mode. To wake the device up, call standby(). Overload with warm start enable...
Definition: SX126x.cpp:466
-
SX126x::receiveDirect
int16_t receiveDirect() override
Starts direct mode reception. Only implemented for PhysicalLayer compatibility, as SX126x series does...
Definition: SX126x.cpp:363
-
SX126x::spectralScanStart
int16_t spectralScanStart(uint16_t numSamples, uint8_t window=RADIOLIB_SX126X_SPECTRAL_SCAN_WINDOW_DEFAULT, uint8_t interval=RADIOLIB_SX126X_SCAN_INTERVAL_8_20_US)
Start spectral scan. Requires binary path to be uploaded.
Definition: SX126x.cpp:1658
-
SX126x::finishTransmit
int16_t finishTransmit() override
Clean up after transmission is done.
Definition: SX126x.cpp:596
-
SX126x::setCurrentLimit
int16_t setCurrentLimit(float currentLimit)
Sets current protection limit. Can be set in 2.5 mA steps.
Definition: SX126x.cpp:903
-
SX126x::setRxBoostedGainMode
int16_t setRxBoostedGainMode(bool rxbgm, bool persist=true)
Enables or disables Rx Boosted Gain mode as described in SX126x datasheet section 9....
Definition: SX126x.cpp:1096
-
SX126x::transmitDirect
int16_t transmitDirect(uint32_t frf=0) override
Starts direct mode transmission.
Definition: SX126x.cpp:347
+
SX126x::setDirectAction
void setDirectAction(void(*func)(void)) override
Set interrupt service routine function to call when data bit is received in direct mode.
Definition: SX126x.cpp:1516
+
SX126x::setIrqFlags
int16_t setIrqFlags(uint32_t irq) override
Set interrupt on DIO1 to be sent on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX126x.cpp:1415
+
SX126x::setNodeAddress
int16_t setNodeAddress(uint8_t nodeAddr)
Sets node address. Calling this method will also enable address filtering for node address only.
Definition: SX126x.cpp:1127
+
SX126x::spectralScanGetStatus
int16_t spectralScanGetStatus()
Read the status of spectral scan.
Definition: SX126x.cpp:1592
+
SX126x::clearPacketReceivedAction
void clearPacketReceivedAction() override
Clears interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:429
+
SX126x::setTCXO
int16_t setTCXO(float voltage, uint32_t delay=5000)
Sets TCXO (Temperature Compensated Crystal Oscillator) configuration.
Definition: SX126x.cpp:1612
+
SX126x::getSNR
float getSNR() override
Gets SNR (Signal to Noise Ratio) of the last received packet. Only available for LoRa modem.
Definition: SX126x.cpp:1290
+
SX126x::setRxBandwidth
int16_t setRxBandwidth(float rxBw)
Sets FSK receiver bandwidth. Allowed values are 4.8, 5.8, 7.3, 9.7, 11.7, 14.6, 19....
Definition: SX126x.cpp:947
+
SX126x::setRegulatorDCDC
int16_t setRegulatorDCDC()
Set regulator mode to DC-DC.
Definition: SX126x.cpp:1435
+
SX126x::startReceive
int16_t startReceive() override
Interrupt-driven receive method with default parameters. Implemented for compatibility with PhysicalL...
Definition: SX126x.cpp:518
+
SX126x::clearDio1Action
void clearDio1Action()
Clears interrupt service routine to call when DIO1 activates.
Definition: SX126x.cpp:421
+
SX126x::checkDataRate
int16_t checkDataRate(DataRate_t dr) override
Check the data rate can be configured by this module.
Definition: SX126x.cpp:926
+
SX126x::setPacketReceivedAction
void setPacketReceivedAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:425
+
SX126x::getRSSI
float getRSSI() override
Gets recorded signal strength indicator. Overload with packet mode enabled for PhysicalLayer compatib...
Definition: SX126x.cpp:1272
+
SX126x::standby
int16_t standby() override
Sets the module to standby mode (overload for PhysicalLayer compatibility, uses 13 MHz RC oscillator)...
Definition: SX126x.cpp:400
+
SX126x::setFrequencyDeviation
int16_t setFrequencyDeviation(float freqDev) override
Sets FSK frequency deviation. Allowed values range from 0.0 to 200.0 kHz.
Definition: SX126x.cpp:852
+
SX126x::spectralScanAbort
void spectralScanAbort()
Abort an ongoing spectral scan.
Definition: SX126x.cpp:1588
+
SX126x::sleep
int16_t sleep() override
Sets the module to sleep mode. To wake the device up, call standby(). Overload with warm start enable...
Definition: SX126x.cpp:380
+
SX126x::receiveDirect
int16_t receiveDirect() override
Starts direct mode reception. Only implemented for PhysicalLayer compatibility, as SX126x series does...
Definition: SX126x.cpp:277
+
SX126x::spectralScanStart
int16_t spectralScanStart(uint16_t numSamples, uint8_t window=RADIOLIB_SX126X_SPECTRAL_SCAN_WINDOW_DEFAULT, uint8_t interval=RADIOLIB_SX126X_SCAN_INTERVAL_8_20_US)
Start spectral scan. Requires binary path to be uploaded.
Definition: SX126x.cpp:1572
+
SX126x::finishTransmit
int16_t finishTransmit() override
Clean up after transmission is done.
Definition: SX126x.cpp:510
+
SX126x::setCurrentLimit
int16_t setCurrentLimit(float currentLimit)
Sets current protection limit. Can be set in 2.5 mA steps.
Definition: SX126x.cpp:817
+
SX126x::setRxBoostedGainMode
int16_t setRxBoostedGainMode(bool rxbgm, bool persist=true)
Enables or disables Rx Boosted Gain mode as described in SX126x datasheet section 9....
Definition: SX126x.cpp:1010
+
SX126x::transmitDirect
int16_t transmitDirect(uint32_t frf=0) override
Starts direct mode transmission.
Definition: SX126x.cpp:261
SX126x::startTransmit
int16_t startTransmit(const char *str, uint8_t addr=0)
Interrupt-driven Arduino String transmit method. Unlike the standard transmit method,...
Definition: PhysicalLayer.cpp:149
-
SX126x::variablePacketLengthMode
int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_SX126X_MAX_PACKET_LENGTH)
Set modem in variable packet length mode. Available in FSK mode only.
Definition: SX126x.cpp:1449
+
SX126x::variablePacketLengthMode
int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_SX126X_MAX_PACKET_LENGTH)
Set modem in variable packet length mode. Available in FSK mode only.
Definition: SX126x.cpp:1363
SX126x::begin
int16_t begin(uint8_t cr, uint8_t syncWord, uint16_t preambleLength, float tcxoVoltage, bool useRegulatorLDO=false)
Initialization method for LoRa modem.
Definition: SX126x.cpp:22
-
SX126x::setCRC
int16_t setCRC(uint8_t len, uint16_t initial=0x1D0F, uint16_t polynomial=0x1021, bool inverted=true)
Sets CRC configuration.
Definition: SX126x.cpp:1258
-
SX126x::reset
int16_t reset(bool verify=true)
Reset method. Will reset the chip to the default state using RST pin.
Definition: SX126x.cpp:208
-
SX126x::setSyncWord
int16_t setSyncWord(uint8_t syncWord, uint8_t controlBits=0x44)
Sets LoRa sync word.
Definition: SX126x.cpp:892
-
SX126x::calibrateImageRejection
int16_t calibrateImageRejection(float freqMin, float freqMax)
Perform image rejection calibration for the specified frequency band. WARNING: Use at your own risk!...
Definition: SX126x.cpp:1869
-
SX126x::getCurrentLimit
float getCurrentLimit()
Reads current protection limit.
Definition: SX126x.cpp:916
+
SX126x::setCRC
int16_t setCRC(uint8_t len, uint16_t initial=0x1D0F, uint16_t polynomial=0x1021, bool inverted=true)
Sets CRC configuration.
Definition: SX126x.cpp:1172
+
SX126x::reset
int16_t reset(bool verify=true)
Reset method. Will reset the chip to the default state using RST pin.
Definition: SX126x.cpp:122
+
SX126x::setSyncWord
int16_t setSyncWord(uint8_t syncWord, uint8_t controlBits=0x44)
Sets LoRa sync word.
Definition: SX126x.cpp:806
+
SX126x::calibrateImageRejection
int16_t calibrateImageRejection(float freqMin, float freqMax)
Perform image rejection calibration for the specified frequency band. WARNING: Use at your own risk!...
Definition: SX126x.cpp:1783
+
SX126x::getCurrentLimit
float getCurrentLimit()
Reads current protection limit.
Definition: SX126x.cpp:830
SX126x::SX126x
SX126x(Module *mod)
Default constructor.
Definition: SX126x.cpp:6
-
SX126x::clearIrqFlags
int16_t clearIrqFlags(uint32_t irq) override
Clear interrupt on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX126x.cpp:1505
-
SX126x::getIrqFlags
uint32_t getIrqFlags() override
Read currently active IRQ flags.
Definition: SX126x.cpp:1495
+
SX126x::clearIrqFlags
int16_t clearIrqFlags(uint32_t irq) override
Clear interrupt on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX126x.cpp:1419
+
SX126x::getIrqFlags
uint32_t getIrqFlags() override
Read currently active IRQ flags.
Definition: SX126x.cpp:1409
SX126x::receive
virtual int16_t receive(uint8_t *data, size_t len)
Binary receive method. Must be implemented in module class.
Definition: PhysicalLayer.cpp:112
-
SX126x::autoLDRO
int16_t autoLDRO()
Re-enables automatic LDRO configuration. Only available in LoRa mode. After calling this method,...
Definition: SX126x.cpp:1549
-
SX126x::fixedPacketLengthMode
int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_SX126X_MAX_PACKET_LENGTH)
Set modem in fixed packet length mode. Available in FSK mode only.
Definition: SX126x.cpp:1445
-
SX126x::setBroadcastAddress
int16_t setBroadcastAddress(uint8_t broadAddr)
Sets broadcast address. Calling this method will also enable address filtering for node and broadcast...
Definition: SX126x.cpp:1230
-
SX126x::setBitRate
int16_t setBitRate(float br) override
Sets FSK bit rate. Allowed values range from 0.6 to 300.0 kbps.
Definition: SX126x.cpp:962
-
SX126x::getPacketLength
size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: SX126x.cpp:1425
-
SX126x::setSyncBits
int16_t setSyncBits(uint8_t *syncWord, uint8_t bitsLen)
Sets FSK sync word in the form of array of up to 8 bytes.
Definition: SX126x.cpp:1194
-
SX126x::setPacketSentAction
void setPacketSentAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is sent.
Definition: SX126x.cpp:519
-
SX126x::readBit
void readBit(uint32_t pin) override
Function to read and process data bit in direct reception mode.
Definition: SX126x.cpp:1606
-
SX126x::scanChannel
int16_t scanChannel() override
Performs scan for LoRa transmission in the current channel. Detects both preamble and payload....
Definition: SX126x.cpp:437
-
SX126x::getDataRate
float getDataRate() const
Gets effective data rate for the last transmitted packet. The value is calculated only for payload by...
Definition: SX126x.cpp:1354
-
SX126x::startReceiveDutyCycleAuto
int16_t startReceiveDutyCycleAuto(uint16_t senderPreambleLength=0, uint16_t minSymbols=8, RadioLibIrqFlags_t irqFlags=RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask=RADIOLIB_IRQ_RX_DEFAULT_MASK)
Calls startReceiveDutyCycle with rxPeriod and sleepPeriod set so the unit shouldn't miss any messages...
Definition: SX126x.cpp:649
-
SX126x::setPreambleLength
int16_t setPreambleLength(size_t preambleLength) override
Sets preamble length for LoRa or FSK modem. Allowed values range from 1 to 65535.
Definition: SX126x.cpp:925
-
SX126x::setPaRampTime
int16_t setPaRampTime(uint8_t rampTime)
Set PA ramp-up time. Set to 200us by default.
Definition: SX126x.cpp:1877
+
SX126x::autoLDRO
int16_t autoLDRO()
Re-enables automatic LDRO configuration. Only available in LoRa mode. After calling this method,...
Definition: SX126x.cpp:1463
+
SX126x::fixedPacketLengthMode
int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_SX126X_MAX_PACKET_LENGTH)
Set modem in fixed packet length mode. Available in FSK mode only.
Definition: SX126x.cpp:1359
+
SX126x::setBroadcastAddress
int16_t setBroadcastAddress(uint8_t broadAddr)
Sets broadcast address. Calling this method will also enable address filtering for node and broadcast...
Definition: SX126x.cpp:1144
+
SX126x::setBitRate
int16_t setBitRate(float br) override
Sets FSK bit rate. Allowed values range from 0.6 to 300.0 kbps.
Definition: SX126x.cpp:876
+
SX126x::getPacketLength
size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: SX126x.cpp:1339
+
SX126x::setSyncBits
int16_t setSyncBits(uint8_t *syncWord, uint8_t bitsLen)
Sets FSK sync word in the form of array of up to 8 bytes.
Definition: SX126x.cpp:1108
+
SX126x::setPacketSentAction
void setPacketSentAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is sent.
Definition: SX126x.cpp:433
+
SX126x::readBit
void readBit(uint32_t pin) override
Function to read and process data bit in direct reception mode.
Definition: SX126x.cpp:1520
+
SX126x::scanChannel
int16_t scanChannel() override
Performs scan for LoRa transmission in the current channel. Detects both preamble and payload....
Definition: SX126x.cpp:351
+
SX126x::getDataRate
float getDataRate() const
Gets effective data rate for the last transmitted packet. The value is calculated only for payload by...
Definition: SX126x.cpp:1268
+
SX126x::startReceiveDutyCycleAuto
int16_t startReceiveDutyCycleAuto(uint16_t senderPreambleLength=0, uint16_t minSymbols=8, RadioLibIrqFlags_t irqFlags=RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask=RADIOLIB_IRQ_RX_DEFAULT_MASK)
Calls startReceiveDutyCycle with rxPeriod and sleepPeriod set so the unit shouldn't miss any messages...
Definition: SX126x.cpp:563
+
SX126x::setPreambleLength
int16_t setPreambleLength(size_t preambleLength) override
Sets preamble length for LoRa or FSK modem. Allowed values range from 1 to 65535.
Definition: SX126x.cpp:839
+
SX126x::setPaRampTime
int16_t setPaRampTime(uint8_t rampTime)
Set PA ramp-up time. Set to 200us by default.
Definition: SX126x.cpp:1791
SX126x::XTAL
bool XTAL
Whether the module has an XTAL (true) or TCXO (false). Defaults to false.
Definition: SX126x.h:459
-
SX126x::implicitHeader
int16_t implicitHeader(size_t len)
Set implicit header mode for future reception/transmission.
Definition: SX126x.cpp:1509
-
SX126x::setDio2AsRfSwitch
int16_t setDio2AsRfSwitch(bool enable=true)
Set DIO2 to function as RF switch (default in Semtech example designs).
Definition: SX126x.cpp:1751
-
SX126x::spectralScanGetResult
int16_t spectralScanGetResult(uint16_t *results)
Read the result of spectral scan.
Definition: SX126x.cpp:1686
-
SX126x::setWhitening
int16_t setWhitening(bool enabled, uint16_t initial=0x01FF)
Sets FSK whitening parameters.
Definition: SX126x.cpp:1317
-
SX126x::setSpreadingFactor
int16_t setSpreadingFactor(uint8_t sf)
Sets LoRa spreading factor. Allowed values range from 5 to 12.
Definition: SX126x.cpp:866
+
SX126x::implicitHeader
int16_t implicitHeader(size_t len)
Set implicit header mode for future reception/transmission.
Definition: SX126x.cpp:1423
+
SX126x::setDio2AsRfSwitch
int16_t setDio2AsRfSwitch(bool enable=true)
Set DIO2 to function as RF switch (default in Semtech example designs).
Definition: SX126x.cpp:1665
+
SX126x::spectralScanGetResult
int16_t spectralScanGetResult(uint16_t *results)
Read the result of spectral scan.
Definition: SX126x.cpp:1600
+
SX126x::setWhitening
int16_t setWhitening(bool enabled, uint16_t initial=0x01FF)
Sets FSK whitening parameters.
Definition: SX126x.cpp:1231
+
SX126x::setSpreadingFactor
int16_t setSpreadingFactor(uint8_t sf)
Sets LoRa spreading factor. Allowed values range from 5 to 12.
Definition: SX126x.cpp:780
SX126x::standbyXOSC
bool standbyXOSC
Whether to use XOSC (true) or RC (false) oscillator in standby mode. Defaults to false.
Definition: SX126x.h:464
-
SX126x::setChannelScanAction
void setChannelScanAction(void(*func)(void)) override
Sets interrupt service routine to call when a channel scan is finished.
Definition: SX126x.cpp:527
-
SX126x::setDataRate
int16_t setDataRate(DataRate_t dr) override
Set data.
Definition: SX126x.cpp:983
-
SX126x::clearPacketSentAction
void clearPacketSentAction() override
Clears interrupt service routine to call when a packet is sent.
Definition: SX126x.cpp:523
-
SX126x::startReceiveDutyCycle
int16_t startReceiveDutyCycle(uint32_t rxPeriod, uint32_t sleepPeriod, RadioLibIrqFlags_t irqFlags=RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask=RADIOLIB_IRQ_RX_DEFAULT_MASK)
Interrupt-driven receive method where the device mostly sleeps and periodically wakes to listen....
Definition: SX126x.cpp:622
-
SX126x::disableAddressFiltering
int16_t disableAddressFiltering()
Disables address filtering. Calling this method will also erase previously set addresses.
Definition: SX126x.cpp:1247
-
SX126x::setCodingRate
int16_t setCodingRate(uint8_t cr)
Sets LoRa coding rate denominator. Allowed values range from 5 to 8.
Definition: SX126x.cpp:879
-
SX126x::getChannelScanResult
int16_t getChannelScanResult() override
Read the channel scan result.
Definition: SX126x.cpp:796
+
SX126x::setChannelScanAction
void setChannelScanAction(void(*func)(void)) override
Sets interrupt service routine to call when a channel scan is finished.
Definition: SX126x.cpp:441
+
SX126x::setDataRate
int16_t setDataRate(DataRate_t dr) override
Set data.
Definition: SX126x.cpp:897
+
SX126x::clearPacketSentAction
void clearPacketSentAction() override
Clears interrupt service routine to call when a packet is sent.
Definition: SX126x.cpp:437
+
SX126x::startReceiveDutyCycle
int16_t startReceiveDutyCycle(uint32_t rxPeriod, uint32_t sleepPeriod, RadioLibIrqFlags_t irqFlags=RADIOLIB_IRQ_RX_DEFAULT_FLAGS, RadioLibIrqFlags_t irqMask=RADIOLIB_IRQ_RX_DEFAULT_MASK)
Interrupt-driven receive method where the device mostly sleeps and periodically wakes to listen....
Definition: SX126x.cpp:536
+
SX126x::disableAddressFiltering
int16_t disableAddressFiltering()
Disables address filtering. Calling this method will also erase previously set addresses.
Definition: SX126x.cpp:1161
+
SX126x::setCodingRate
int16_t setCodingRate(uint8_t cr)
Sets LoRa coding rate denominator. Allowed values range from 5 to 8.
Definition: SX126x.cpp:793
+
SX126x::getChannelScanResult
int16_t getChannelScanResult() override
Read the channel scan result.
Definition: SX126x.cpp:710
RadioLibTime_t
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition: TypeDef.h:616
RadioLibIrqFlags_t
uint32_t RadioLibIrqFlags_t
Type used for radio-agnostic IRQ flags. IRQ to enable corresponds to the bit index (RadioLibIrq_t)....
Definition: TypeDef.h:622
Module::RfSwitchMode_t
Description of RF switch pin states for a single mode. See setRfSwitchTable for details.
Definition: Module.h:81