diff --git a/_module_8h_source.html b/_module_8h_source.html
index d171cdcc..8897cf80 100644
--- a/_module_8h_source.html
+++ b/_module_8h_source.html
@@ -214,73 +214,73 @@ $(document).ready(function(){initNavTree('_module_8h_source.html',''); initResiz
265 int16_t
SPIgetRegValue(uint32_t reg, uint8_t msb = 7, uint8_t lsb = 0);
- 277 int16_t
SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb = 7, uint8_t lsb = 0, uint8_t checkInterval = 2, uint8_t checkMask = 0xFF);
-
-
-
-
-
-
-
-
-
- 317 void SPItransfer(uint16_t cmd, uint32_t reg, uint8_t* dataOut, uint8_t* dataIn,
size_t numBytes);
-
-
-
- 334 int16_t
SPIreadStream(uint16_t cmd, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
-
- 346 int16_t
SPIreadStream(uint8_t* cmd, uint8_t cmdLen, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
-
- 357 int16_t
SPIwriteStream(uint16_t cmd, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
-
- 369 int16_t
SPIwriteStream(uint8_t* cmd, uint8_t cmdLen, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
-
- 382 int16_t
SPItransferStream(
const uint8_t* cmd, uint8_t cmdLen,
bool write, uint8_t* dataOut, uint8_t* dataIn,
size_t numBytes,
bool waitForGpio);
-
-
-
-
-
-
- 393 uint32_t
getIrq()
const {
return(irqPin); }
-
- 399 uint32_t
getRst()
const {
return(rstPin); }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 520 void regdump(
const char* level, uint16_t start,
size_t len);
-
-
- 523 #if !RADIOLIB_GODMODE
-
-
- 526 uint32_t csPin = RADIOLIB_NC;
- 527 uint32_t irqPin = RADIOLIB_NC;
- 528 uint32_t rstPin = RADIOLIB_NC;
- 529 uint32_t gpioPin = RADIOLIB_NC;
-
-
- 532 uint32_t rfSwitchPins[
RFSWITCH_MAX_PINS] = { RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC };
- 533 const RfSwitchMode_t *rfSwitchTable =
nullptr;
-
- 535 #if RADIOLIB_INTERRUPT_TIMING
- 536 uint32_t prevTimingLen = 0;
-
-
-
-
+ 278 int16_t
SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb = 7, uint8_t lsb = 0, uint8_t checkInterval = 2, uint8_t checkMask = 0xFF,
bool force =
false);
+
+
+
+
+
+
+
+
+
+ 318 void SPItransfer(uint16_t cmd, uint32_t reg, uint8_t* dataOut, uint8_t* dataIn,
size_t numBytes);
+
+
+
+ 335 int16_t
SPIreadStream(uint16_t cmd, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
+
+ 347 int16_t
SPIreadStream(uint8_t* cmd, uint8_t cmdLen, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
+
+ 358 int16_t
SPIwriteStream(uint16_t cmd, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
+
+ 370 int16_t
SPIwriteStream(uint8_t* cmd, uint8_t cmdLen, uint8_t* data,
size_t numBytes,
bool waitForGpio =
true,
bool verify =
true);
+
+ 383 int16_t
SPItransferStream(
const uint8_t* cmd, uint8_t cmdLen,
bool write, uint8_t* dataOut, uint8_t* dataIn,
size_t numBytes,
bool waitForGpio);
+
+
+
+
+
+
+ 394 uint32_t
getIrq()
const {
return(irqPin); }
+
+ 400 uint32_t
getRst()
const {
return(rstPin); }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 521 void regdump(
const char* level, uint16_t start,
size_t len);
+
+
+ 524 #if !RADIOLIB_GODMODE
+
+
+ 527 uint32_t csPin = RADIOLIB_NC;
+ 528 uint32_t irqPin = RADIOLIB_NC;
+ 529 uint32_t rstPin = RADIOLIB_NC;
+ 530 uint32_t gpioPin = RADIOLIB_NC;
+
+
+ 533 uint32_t rfSwitchPins[
RFSWITCH_MAX_PINS] = { RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC, RADIOLIB_NC };
+ 534 const RfSwitchMode_t *rfSwitchTable =
nullptr;
+
+ 536 #if RADIOLIB_INTERRUPT_TIMING
+ 537 uint32_t prevTimingLen = 0;
+
+
+
+
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:73
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:82
int16_t(* SPIcheckStatusCb_t)(Module *mod)
Callback for validation SPI status.
Definition: Module.h:174
@@ -291,7 +291,7 @@ $(document).ready(function(){initNavTree('_module_8h_source.html',''); initResiz
RadioLibHal * hal
Hardware abstraction layer to be used.
Definition: Module.h:168
void term()
Terminate low-level module control.
Definition: Module.cpp:44
Module & operator=(const Module &mod)
Overload for assignment operator.
Definition: Module.cpp:27
-uint32_t getGpio() const
Access method to get the pin number of second interrupt/GPIO.
Definition: Module.h:405
+uint32_t getGpio() const
Access method to get the pin number of second interrupt/GPIO.
Definition: Module.h:406
const RfSwitchMode_t * findRfSwitchMode(uint8_t mode) const
Find a mode in the RfSwitchTable.
Definition: Module.cpp:505
OpMode_t
Constants to use in a mode table set be setRfSwitchTable. These constants work for most radios,...
Definition: Module.h:105
@ MODE_TX
Transmission mode.
Definition: Module.h:119
@@ -306,13 +306,13 @@ $(document).ready(function(){initNavTree('_module_8h_source.html',''); initResiz
int16_t(* SPIparseStatusCb_t)(uint8_t in)
Callback for parsing SPI status.
Definition: Module.h:171
void SPItransfer(uint16_t cmd, uint32_t reg, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes)
SPI single transfer method.
Definition: Module.cpp:177
uint8_t SPIreadRegister(uint32_t reg)
SPI basic read method. Use of this method is reserved for special cases, SPIgetRegValue should be use...
Definition: Module.cpp:127
-uint32_t getIrq() const
Access method to get the pin number of interrupt/GPIO.
Definition: Module.h:393
+uint32_t getIrq() const
Access method to get the pin number of interrupt/GPIO.
Definition: Module.h:394
void setRfSwitchTable(const uint32_t(&pins)[RFSWITCH_MAX_PINS], const RfSwitchMode_t table[])
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: Module.cpp:497
void SPIreadRegisterBurst(uint32_t reg, size_t numBytes, uint8_t *inBytes)
SPI burst read method.
Definition: Module.cpp:111
void init()
Initialize low-level module control.
Definition: Module.cpp:37
-uint32_t getRst() const
Access method to get the pin number of hardware reset pin.
Definition: Module.h:399
+uint32_t getRst() const
Access method to get the pin number of hardware reset pin.
Definition: Module.h:400
int16_t SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)
Method to perform a read transaction with SPI stream.
Definition: Module.cpp:239
-int16_t SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF)
Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism.
Definition: Module.cpp:59
+int16_t SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF, bool force=false)
Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism.
Definition: Module.cpp:59
int16_t SPIwriteStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)
Method to perform a write transaction with SPI stream.
Definition: Module.cpp:267
void setRfSwitchState(uint8_t mode)
Set RF switch state.
Definition: Module.cpp:516
Hardware abstraction library base interface.
Definition: Hal.h:13
diff --git a/_s_x127x_8h_source.html b/_s_x127x_8h_source.html
index 2718301a..60a74d6c 100644
--- a/_s_x127x_8h_source.html
+++ b/_s_x127x_8h_source.html
@@ -927,91 +927,91 @@ $(document).ready(function(){initNavTree('_s_x127x_8h_source.html',''); initResi
Base class for SX127x series. All derived classes for SX127x (e.g. SX1278 or SX1272) inherit from thi...
Definition: SX127x.h:583
int16_t packetMode()
Disables direct mode and enables packet mode, allowing the module to receive packets....
Definition: SX127x.cpp:379
void clearChannelScanAction() override
Clears interrupt service routine to call when a channel scan is finished.
Definition: SX127x.cpp:495
-void readBit(uint32_t pin) override
Function to read and process data bit in direct reception mode.
Definition: SX127x.cpp:1783
+void readBit(uint32_t pin) override
Function to read and process data bit in direct reception mode.
Definition: SX127x.cpp:1784
void clearFifoFullAction()
Clears interrupt service routine to call when FIFO is full.
Definition: SX127x.cpp:521
int16_t scanChannel() override
Performs scan for valid LoRa preamble in the current channel.
Definition: SX127x.cpp:276
int16_t setOokFixedOrFloorThreshold(uint8_t value)
Fixed threshold for the Data Slicer in OOK mode or floor threshold for the Data Slicer in OOK when Pe...
Definition: SX127x.cpp:1139
int16_t enableBitSync()
Enable Bit synchronizer.
Definition: SX127x.cpp:1163
-int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK)
Set modem in variable packet length mode. Available in FSK mode only.
Definition: SX127x.cpp:1243
+int16_t variablePacketLengthMode(uint8_t maxLen=RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK)
Set modem in variable packet length mode. Available in FSK mode only.
Definition: SX127x.cpp:1244
int16_t sleep() override
Sets the LoRa module to sleep to save power. Module will not be able to transmit or receive any data ...
Definition: SX127x.cpp:292
void setFifoFullAction(void(*func)(void))
Set interrupt service routine function to call when FIFO is full.
Definition: SX127x.cpp:512
-uint32_t getIrqFlags() override
Read currently active IRQ flags.
Definition: SX127x.cpp:1318
+uint32_t getIrqFlags() override
Read currently active IRQ flags.
Definition: SX127x.cpp:1319
int16_t setOOK(bool enableOOK)
Enables/disables OOK modulation instead of FSK.
Definition: SX127x.cpp:1171
bool fifoGet(volatile uint8_t *data, int totalLen, volatile int *rcvLen)
Set interrupt service routine function to call when FIFO is sufficiently full to read.
Definition: SX127x.cpp:549
int16_t setRxBandwidth(float rxBw)
Sets FSK receiver bandwidth. Allowed values range from 2.6 to 250 kHz. Only available in FSK mode.
Definition: SX127x.cpp:993
-uint8_t getModemStatus()
Reads modem status. Only available in LoRa mode.
Definition: SX127x.cpp:1518
+uint8_t getModemStatus()
Reads modem status. Only available in LoRa mode.
Definition: SX127x.cpp:1519
void clearPacketSentAction() override
Clears interrupt service routine to call when a packet is sent.
Definition: SX127x.cpp:487
virtual void reset()=0
Reset method. Will reset the chip to the default state using RST pin. Declared pure virtual since SX1...
-int16_t getModem(ModemType_t *modem) override
Get modem currently in use by the radio.
Definition: SX127x.cpp:1762
+int16_t getModem(ModemType_t *modem) override
Get modem currently in use by the radio.
Definition: SX127x.cpp:1763
void setPacketSentAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is sent.
Definition: SX127x.cpp:483
virtual int16_t readData(uint8_t *data, size_t len)
Reads data that was received after calling startReceive method.
Definition: PhysicalLayer.cpp:206
-int16_t invertIQ(bool enable) override
Enable/disable inversion of the I and Q signals.
Definition: SX127x.cpp:1740
+int16_t invertIQ(bool enable) override
Enable/disable inversion of the I and Q signals.
Definition: SX127x.cpp:1741
bool fifoAdd(uint8_t *data, int totalLen, int *remLen)
Set interrupt service routine function to call when FIFO is empty.
Definition: SX127x.cpp:526
int16_t setCurrentLimit(uint8_t currentLimit)
Sets current limit for over current protection at transmitter amplifier. Allowed values range from 45...
Definition: SX127x.cpp:759
-void clearFHSSInt(void)
Clear the FHSS interrupt.
Definition: SX127x.cpp:1800
+void clearFHSSInt(void)
Clear the FHSS interrupt.
Definition: SX127x.cpp:1801
int16_t setAFC(bool isEnabled)
Enables or disables FSK automatic frequency correction(AFC)
Definition: SX127x.cpp:1025
int16_t setFrequencyDeviation(float freqDev) override
Sets FSK frequency deviation from carrier frequency. Allowed values depend on bit rate setting and mu...
Definition: SX127x.cpp:951
-size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: SX127x.cpp:1211
+size_t getPacketLength(bool update=true) override
Query modem for the packet length of received payload.
Definition: SX127x.cpp:1212
float getSNR() override
Gets signal-to-noise ratio of the latest received packet. Only available in LoRa mode.
Definition: SX127x.cpp:900
int16_t setOokPeakThresholdStep(uint8_t value)
Size of each decrement of the RSSI threshold in the OOK demodulator.
Definition: SX127x.cpp:1155
int16_t transmit(const char *str, uint8_t addr=0)
C-string transmit method.
Definition: PhysicalLayer.cpp:53
float getAFCError()
Gets current AFC error.
Definition: SX127x.cpp:884
-int16_t setRSSIThreshold(float dbm)
Sets the RSSI value above which the RSSI interrupt is signaled.
Definition: SX127x.cpp:1449
-uint8_t getFHSSChannel(void)
Gets the FHSS channel in use.
Definition: SX127x.cpp:1796
+int16_t setRSSIThreshold(float dbm)
Sets the RSSI value above which the RSSI interrupt is signaled.
Definition: SX127x.cpp:1450
+uint8_t getFHSSChannel(void)
Gets the FHSS channel in use.
Definition: SX127x.cpp:1797
int16_t invertPreamble(bool enable)
Invert FSK preamble polarity. The default (non-inverted) is 0x55, the inverted is 0xAA.
Definition: SX127x.cpp:812
int16_t setAFCBandwidth(float afcBw)
Sets FSK automatic frequency correction bandwidth. Allowed values range from 2.6 to 250 kHz....
Definition: SX127x.cpp:1009
void clearPacketReceivedAction() override
Clears interrupt service routine to call when a packet is received.
Definition: SX127x.cpp:479
int16_t startChannelScan() override
Interrupt-driven channel activity detection method. DIO0 will be activated when LoRa preamble is dete...
Definition: SX127x.cpp:714
-int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK)
Set modem in fixed packet length mode. Available in FSK mode only.
Definition: SX127x.cpp:1239
+int16_t fixedPacketLengthMode(uint8_t len=RADIOLIB_SX127X_MAX_PACKET_LENGTH_FSK)
Set modem in fixed packet length mode. Available in FSK mode only.
Definition: SX127x.cpp:1240
void setFifoEmptyAction(void(*func)(void))
Set interrupt service routine function to call when FIFO is empty.
Definition: SX127x.cpp:499
void clearDio0Action()
Clears interrupt service routine to call when DIO0 activates.
Definition: SX127x.cpp:457
int16_t standby() override
Sets the LoRa module to standby.
Definition: SX127x.cpp:300
void setDio1Action(void(*func)(void), uint32_t dir)
Set interrupt service routine function to call when DIO1 activates.
Definition: SX127x.cpp:461
-int16_t setDIOPreambleDetect(bool usePreambleDetect)
Configure DIO mapping to use RSSI or Preamble Detect for pins that support it.
Definition: SX127x.cpp:1819
+int16_t setDIOPreambleDetect(bool usePreambleDetect)
Configure DIO mapping to use RSSI or Preamble Detect for pins that support it.
Definition: SX127x.cpp:1820
void setFifoThreshold(uint8_t threshold)
Set FIFO threshold level. Be aware that threshold is also set in setFifoFullAction method....
Definition: SX127x.cpp:508
-int16_t setFHSSHoppingPeriod(uint8_t freqHoppingPeriod)
Sets the hopping period and enables FHSS.
Definition: SX127x.cpp:1788
+int16_t setFHSSHoppingPeriod(uint8_t freqHoppingPeriod)
Sets the hopping period and enables FHSS.
Definition: SX127x.cpp:1789
int16_t finishTransmit() override
Clean up after transmission is done.
Definition: SX127x.cpp:645
int16_t disableBitSync()
Disable Bit synchronizer (not allowed in Packet mode).
Definition: SX127x.cpp:1167
int16_t getChannelScanResult() override
Read the channel scan result.
Definition: SX127x.cpp:739
int16_t setPreambleLength(size_t preambleLength) override
Sets LoRa or FSK preamble length. Allowed values range from 6 to 65535 in LoRa mode or 0 to 65535 in ...
Definition: SX127x.cpp:783
int16_t setOokThresholdType(uint8_t type)
Selects the type of threshold in the OOK data slicer.
Definition: SX127x.cpp:1131
-void setRfSwitchPins(uint32_t rxEn, uint32_t txEn)
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX127x.cpp:1528
+void setRfSwitchPins(uint32_t rxEn, uint32_t txEn)
Some modules contain external RF switch controlled by pins. This function gives RadioLib control over...
Definition: SX127x.cpp:1529
int16_t startTransmit(const char *str, uint8_t addr=0)
Interrupt-driven Arduino String transmit method. Unlike the standard transmit method,...
Definition: PhysicalLayer.cpp:148
-int8_t getTempRaw()
Reads uncalibrated temperature value. This function will change operating mode and should not be call...
Definition: SX127x.cpp:1565
-uint8_t randomByte() override
Get one truly random byte from RSSI noise.
Definition: SX127x.cpp:1536
+int8_t getTempRaw()
Reads uncalibrated temperature value. This function will change operating mode and should not be call...
Definition: SX127x.cpp:1566
+uint8_t randomByte() override
Get one truly random byte from RSSI noise.
Definition: SX127x.cpp:1537
void clearDio1Action()
Clears interrupt service routine to call when DIO1 activates.
Definition: SX127x.cpp:468
-int16_t setLowBatteryThreshold(int8_t level, uint32_t pin=RADIOLIB_NC)
Set low battery indicator threshold.
Definition: SX127x.cpp:1885
-RadioLibTime_t getTimeOnAir(size_t len) override
Get expected time-on-air for a given size of payload.
Definition: SX127x.cpp:1273
-int16_t clearIrqFlags(uint32_t irq) override
Clear interrupt on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX127x.cpp:1424
+int16_t setLowBatteryThreshold(int8_t level, uint32_t pin=RADIOLIB_NC)
Set low battery indicator threshold.
Definition: SX127x.cpp:1886
+RadioLibTime_t getTimeOnAir(size_t len) override
Get expected time-on-air for a given size of payload.
Definition: SX127x.cpp:1274
+int16_t clearIrqFlags(uint32_t irq) override
Clear interrupt on a specific IRQ bit (e.g. RxTimeout, CadDone).
Definition: SX127x.cpp:1425
int16_t receiveDirect() override
Enables direct reception mode on pins DIO1 (clock) and DIO2 (data). While in direct mode,...
Definition: SX127x.cpp:342
void clearFifoEmptyAction()
Clears interrupt service routine to call when FIFO is empty.
Definition: SX127x.cpp:504
int16_t setOokPeakThresholdDecrement(uint8_t value)
Period of decrement of the RSSI threshold in the OOK demodulator.
Definition: SX127x.cpp:1147
-int16_t setIrqFlags(uint32_t irq) override
Set interrupt on DIO1 to be sent on a specific IRQ bit (e.g. RxTimeout, CadDone). NOTE: Unlike other ...
Definition: SX127x.cpp:1322
+int16_t setIrqFlags(uint32_t irq) override
Set interrupt on DIO1 to be sent on a specific IRQ bit (e.g. RxTimeout, CadDone). NOTE: Unlike other ...
Definition: SX127x.cpp:1323
int16_t setAFCAGCTrigger(uint8_t trigger)
Controls trigger of AFC and AGC.
Definition: SX127x.cpp:1035
-int16_t setCrcFiltering(bool enable=true)
Enable CRC filtering and generation.
Definition: SX127x.cpp:1439
+int16_t setCrcFiltering(bool enable=true)
Enable CRC filtering and generation.
Definition: SX127x.cpp:1440
virtual int16_t receive(uint8_t *data, size_t len)
Binary receive method. Must be implemented in module class.
Definition: PhysicalLayer.cpp:111
-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: SX127x.cpp:1532
+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: SX127x.cpp:1533
int16_t setNodeAddress(uint8_t nodeAddr)
Sets FSK node address. Calling this method will enable address filtering. Only available in FSK mode.
Definition: SX127x.cpp:1085
-int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Only available in FSK mode. Allowed values are RADIOLIB_ENCODING_NRZ,...
Definition: SX127x.cpp:1484
+int16_t setEncoding(uint8_t encoding) override
Sets transmission encoding. Only available in FSK mode. Allowed values are RADIOLIB_ENCODING_NRZ,...
Definition: SX127x.cpp:1485
int16_t startReceive() override
Interrupt-driven receive method with default parameters. Implemented for compatibility with PhysicalL...
Definition: SX127x.cpp:388
int16_t setBroadcastAddress(uint8_t broadAddr)
Sets FSK broadcast address. Calling this method will enable address filtering. Only available in FSK ...
Definition: SX127x.cpp:1099
-float getNumSymbols(size_t len)
Convert from bytes to LoRa symbols.
Definition: SX127x.cpp:1247
+float getNumSymbols(size_t len)
Convert from bytes to LoRa symbols.
Definition: SX127x.cpp:1248
void setChannelScanAction(void(*func)(void)) override
Sets interrupt service routine to call when a channel scan is finished.
Definition: SX127x.cpp:491
int16_t setSyncWord(uint8_t syncWord)
Sets LoRa sync word. Only available in LoRa mode.
Definition: SX127x.cpp:746
-uint16_t getIRQFlags()
Reads currently active IRQ flags, can be used to check which event caused an interrupt....
Definition: SX127x.cpp:1503
+uint16_t getIRQFlags()
Reads currently active IRQ flags, can be used to check which event caused an interrupt....
Definition: SX127x.cpp:1504
SX127x(Module *mod)
Default constructor. Called internally when creating new LoRa instance.
Definition: SX127x.cpp:5
-int16_t setRSSIConfig(uint8_t smoothingSamples, int8_t offset=0)
Sets RSSI measurement configuration in FSK mode.
Definition: SX127x.cpp:1455
-uint8_t getFHSSHoppingPeriod(void)
Gets FHSS hopping period.
Definition: SX127x.cpp:1792
-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: SX127x.cpp:1309
+int16_t setRSSIConfig(uint8_t smoothingSamples, int8_t offset=0)
Sets RSSI measurement configuration in FSK mode.
Definition: SX127x.cpp:1456
+uint8_t getFHSSHoppingPeriod(void)
Gets FHSS hopping period.
Definition: SX127x.cpp:1793
+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: SX127x.cpp:1310
float getDataRate() const
Get data rate of the latest transmitted packet.
Definition: SX127x.cpp:911
void setPacketReceivedAction(void(*func)(void)) override
Sets interrupt service routine to call when a packet is received.
Definition: SX127x.cpp:475
-void setDirectAction(void(*func)(void)) override
Set interrupt service routine function to call when data bit is received in direct mode.
Definition: SX127x.cpp:1779
+void setDirectAction(void(*func)(void)) override
Set interrupt service routine function to call when data bit is received in direct mode.
Definition: SX127x.cpp:1780
void setDio0Action(void(*func)(void), uint32_t dir)
Set interrupt service routine function to call when DIO0 activates.
Definition: SX127x.cpp:453
int16_t begin(uint8_t *chipVersions, uint8_t numVersions, uint8_t syncWord, uint16_t preambleLength)
Initialization method. Will be called with appropriate parameters when calling initialization method ...
Definition: SX127x.cpp:9
-int16_t getChipVersion()
Read version SPI register. Should return SX1278_CHIP_VERSION (0x12) or SX1272_CHIP_VERSION (0x22) if ...
Definition: SX127x.cpp:1561
+int16_t getChipVersion()
Read version SPI register. Should return SX1278_CHIP_VERSION (0x12) or SX1272_CHIP_VERSION (0x22) if ...
Definition: SX127x.cpp:1562
int16_t transmitDirect(uint32_t frf=0) override
Enables direct transmission mode on pins DIO1 (clock) and DIO2 (data). While in direct mode,...
Definition: SX127x.cpp:313
float getFrequencyError(bool autoCorrect=false)
Gets frequency error of the latest received packet.
Definition: SX127x.cpp:831
-int16_t setDIOMapping(uint32_t pin, uint32_t value) override
Configure DIO pin mapping to get a given signal on a DIO pin (if available).
Definition: SX127x.cpp:1809
+int16_t setDIOMapping(uint32_t pin, uint32_t value) override
Configure DIO pin mapping to get a given signal on a DIO pin (if available).
Definition: SX127x.cpp:1810
int16_t beginFSK(uint8_t *chipVersions, uint8_t numVersions, float freqDev, float rxBw, uint16_t preambleLength, bool enableOOK)
Initialization method for FSK modem. Will be called with appropriate parameters when calling FSK init...
Definition: SX127x.cpp:72
int16_t disableAddressFiltering()
Disables FSK address filtering.
Definition: SX127x.cpp:1113
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition: TypeDef.h:642
diff --git a/class_module-members.html b/class_module-members.html
index 2c5d6876..7e5748b7 100644
--- a/class_module-members.html
+++ b/class_module-members.html
@@ -121,7 +121,7 @@ $(document).ready(function(){initNavTree('class_module.html',''); initResizable(
SPIreadRegisterBurst(uint32_t reg, size_t numBytes, uint8_t *inBytes) | Module | |
SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true) | Module | |
SPIreadStream(uint8_t *cmd, uint8_t cmdLen, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true) | Module | |
- SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF) | Module | |
+ SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF, bool force=false) | Module | |
SPItransfer(uint16_t cmd, uint32_t reg, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes) | Module | |
SPItransferStream(const uint8_t *cmd, uint8_t cmdLen, bool write, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes, bool waitForGpio) | Module | |
SPIwriteRegister(uint32_t reg, uint8_t data) | Module | |
diff --git a/class_module.html b/class_module.html
index e0ecce42..c9179822 100644
--- a/class_module.html
+++ b/class_module.html
@@ -163,9 +163,9 @@ void | int16_t | SPIgetRegValue (uint32_t reg, uint8_t msb=7, uint8_t lsb=0) |
| SPI read method that automatically masks unused bits. This method is the preferred SPI read mechanism. More...
|
|
-int16_t | SPIsetRegValue (uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF) |
- | Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism. More...
|
- |
+int16_t | SPIsetRegValue (uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF, bool force=false) |
+ | Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism. More...
|
+ |
void | SPIreadRegisterBurst (uint32_t reg, size_t numBytes, uint8_t *inBytes) |
| SPI burst read method. More...
|
|
@@ -884,8 +884,8 @@ static const size_t
-
-◆ SPIsetRegValue()
+
+◆ SPIsetRegValue()
@@ -924,7 +924,13 @@ static const size_t | |
|
uint8_t |
- checkMask = 0xFF |
+ checkMask = 0xFF , |
+
+
+ |
+ |
+ bool |
+ force = false |
|
@@ -943,6 +949,7 @@ static const size_t | lsb | Least significant bit of the register variable. Bits below this one will not be affected by the write operation. |
checkInterval | Number of milliseconds between register writing and verification reading. Some registers need up to 10ms to process the change. |
checkMask | Mask of bits to check, only bits set to 1 will be verified. |
+ force | Write new value even if the old value is the same. |
diff --git a/class_module.js b/class_module.js
index 95e47d4a..32b3add8 100644
--- a/class_module.js
+++ b/class_module.js
@@ -33,7 +33,7 @@ var class_module =
[ "SPIreadRegisterBurst", "class_module.html#ac993ab8e2ea0f5aa93339d1f6ffb54ee", null ],
[ "SPIreadStream", "class_module.html#adacceb57ecfecb09150c135b2b44436f", null ],
[ "SPIreadStream", "class_module.html#a085415b49ff72238f118b937ad896cbd", null ],
- [ "SPIsetRegValue", "class_module.html#ade75c5403a05156b43cc7562563ae2d7", null ],
+ [ "SPIsetRegValue", "class_module.html#aed95fba2ee72d7a2a21f98dd63ae4ad1", null ],
[ "SPItransfer", "class_module.html#aa6df70520aa015dd3a1bccdceae67232", null ],
[ "SPItransferStream", "class_module.html#a4174159e476de5cef6ea3f89c883cb5e", null ],
[ "SPIwriteRegister", "class_module.html#a60ca6b4cae98f7d935191a569d519913", null ],
diff --git a/class_s_t_m32_w_lx___module-members.html b/class_s_t_m32_w_lx___module-members.html
index 7988dfe0..78c94b2d 100644
--- a/class_s_t_m32_w_lx___module-members.html
+++ b/class_s_t_m32_w_lx___module-members.html
@@ -121,7 +121,7 @@ $(document).ready(function(){initNavTree('class_s_t_m32_w_lx___module.html','');
SPIreadRegisterBurst(uint32_t reg, size_t numBytes, uint8_t *inBytes) | Module | |
SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true) | Module | |
SPIreadStream(uint8_t *cmd, uint8_t cmdLen, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true) | Module | |
- SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF) | Module | |
+ SPIsetRegValue(uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF, bool force=false) | Module | |
SPItransfer(uint16_t cmd, uint32_t reg, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes) | Module | |
SPItransferStream(const uint8_t *cmd, uint8_t cmdLen, bool write, uint8_t *dataOut, uint8_t *dataIn, size_t numBytes, bool waitForGpio) | Module | |
SPIwriteRegister(uint32_t reg, uint8_t data) | Module | |
diff --git a/class_s_t_m32_w_lx___module.html b/class_s_t_m32_w_lx___module.html
index d1039acf..98d81830 100644
--- a/class_s_t_m32_w_lx___module.html
+++ b/class_s_t_m32_w_lx___module.html
@@ -145,9 +145,9 @@ void | int16_t | SPIgetRegValue (uint32_t reg, uint8_t msb=7, uint8_t lsb=0) |
| SPI read method that automatically masks unused bits. This method is the preferred SPI read mechanism. More...
|
|
-int16_t | SPIsetRegValue (uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF) |
- | Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism. More...
|
- |
+int16_t | SPIsetRegValue (uint32_t reg, uint8_t value, uint8_t msb=7, uint8_t lsb=0, uint8_t checkInterval=2, uint8_t checkMask=0xFF, bool force=false) |
+ | Overwrite-safe SPI write method with verification. This method is the preferred SPI write mechanism. More...
|
+ |
void | SPIreadRegisterBurst (uint32_t reg, size_t numBytes, uint8_t *inBytes) |
| SPI burst read method. More...
|
|
diff --git a/functions_func_s.html b/functions_func_s.html
index ab2bdfdc..d7706409 100644
--- a/functions_func_s.html
+++ b/functions_func_s.html
@@ -684,7 +684,7 @@ $(document).ready(function(){initNavTree('functions_func_s.html',''); initResiza
: Module
SPIsetRegValue()
-: Module
+: Module
SPItransfer()
: Module
diff --git a/functions_s.html b/functions_s.html
index 75eac824..6f261804 100644
--- a/functions_s.html
+++ b/functions_s.html
@@ -711,7 +711,7 @@ $(document).ready(function(){initNavTree('functions_s.html',''); initResizable()
: Module
SPIsetRegValue()
-: Module
+: Module
SPItransfer()
: Module
diff --git a/navtreeindex1.js b/navtreeindex1.js
index 8f46cbd4..02a787bc 100644
--- a/navtreeindex1.js
+++ b/navtreeindex1.js
@@ -195,7 +195,7 @@ var NAVTREEINDEX1 =
"class_module.html#ad1956ac81429ec1f61f83dbc081cf18c":[3,0,39,12],
"class_module.html#ad6cddbf3aebec9717a1a381dd81ad398":[3,0,39,11],
"class_module.html#adacceb57ecfecb09150c135b2b44436f":[3,0,39,21],
-"class_module.html#ade75c5403a05156b43cc7562563ae2d7":[3,0,39,23],
+"class_module.html#aed95fba2ee72d7a2a21f98dd63ae4ad1":[3,0,39,23],
"class_module.html#af5e5dd089a3117f6499b818b426e2e0d":[3,0,39,4],
"class_module.html#af5e5dd089a3117f6499b818b426e2e0da2ea83939f64337390afbdeb0bfdae3f0":[3,0,39,4,0],
"class_module.html#af5e5dd089a3117f6499b818b426e2e0da52475d5a5e20c3593c9f761d0fb41118":[3,0,39,4,1],
diff --git a/search/all_10.js b/search/all_10.js
index 67cd30c3..2014ad75 100644
--- a/search/all_10.js
+++ b/search/all_10.js
@@ -130,7 +130,7 @@ var searchData=
['spireadregister_616',['SPIreadRegister',['../class_module.html#ab250eb929068e0c890e16e8e6d7cd7e6',1,'Module']]],
['spireadregisterburst_617',['SPIreadRegisterBurst',['../class_module.html#ac993ab8e2ea0f5aa93339d1f6ffb54ee',1,'Module']]],
['spireadstream_618',['SPIreadStream',['../class_module.html#adacceb57ecfecb09150c135b2b44436f',1,'Module::SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)'],['../class_module.html#a085415b49ff72238f118b937ad896cbd',1,'Module::SPIreadStream(uint8_t *cmd, uint8_t cmdLen, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)']]],
- ['spisetregvalue_619',['SPIsetRegValue',['../class_module.html#ade75c5403a05156b43cc7562563ae2d7',1,'Module']]],
+ ['spisetregvalue_619',['SPIsetRegValue',['../class_module.html#aed95fba2ee72d7a2a21f98dd63ae4ad1',1,'Module']]],
['spitransfer_620',['SPItransfer',['../class_module.html#aa6df70520aa015dd3a1bccdceae67232',1,'Module']]],
['spitransfer_621',['spiTransfer',['../class_pi_hal.html#a96a0f36efd8e23893add3242bdef8be4',1,'PiHal::spiTransfer()'],['../class_pico_hal.html#acc961bf30af621d0dfec2b3f7e25cf5c',1,'PicoHal::spiTransfer()'],['../class_radio_lib_hal.html#aebcaaf0cefdaaf5b572d4261e472ac8a',1,'RadioLibHal::spiTransfer()']]],
['spitransferstream_622',['SPItransferStream',['../class_module.html#a4174159e476de5cef6ea3f89c883cb5e',1,'Module']]],
diff --git a/search/functions_f.js b/search/functions_f.js
index 7c820f26..c79fb63a 100644
--- a/search/functions_f.js
+++ b/search/functions_f.js
@@ -120,7 +120,7 @@ var searchData=
['spireadregister_1102',['SPIreadRegister',['../class_module.html#ab250eb929068e0c890e16e8e6d7cd7e6',1,'Module']]],
['spireadregisterburst_1103',['SPIreadRegisterBurst',['../class_module.html#ac993ab8e2ea0f5aa93339d1f6ffb54ee',1,'Module']]],
['spireadstream_1104',['SPIreadStream',['../class_module.html#adacceb57ecfecb09150c135b2b44436f',1,'Module::SPIreadStream(uint16_t cmd, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)'],['../class_module.html#a085415b49ff72238f118b937ad896cbd',1,'Module::SPIreadStream(uint8_t *cmd, uint8_t cmdLen, uint8_t *data, size_t numBytes, bool waitForGpio=true, bool verify=true)']]],
- ['spisetregvalue_1105',['SPIsetRegValue',['../class_module.html#ade75c5403a05156b43cc7562563ae2d7',1,'Module']]],
+ ['spisetregvalue_1105',['SPIsetRegValue',['../class_module.html#aed95fba2ee72d7a2a21f98dd63ae4ad1',1,'Module']]],
['spitransfer_1106',['SPItransfer',['../class_module.html#aa6df70520aa015dd3a1bccdceae67232',1,'Module']]],
['spitransfer_1107',['spiTransfer',['../class_pi_hal.html#a96a0f36efd8e23893add3242bdef8be4',1,'PiHal::spiTransfer()'],['../class_pico_hal.html#acc961bf30af621d0dfec2b3f7e25cf5c',1,'PicoHal::spiTransfer()'],['../class_radio_lib_hal.html#aebcaaf0cefdaaf5b572d4261e472ac8a',1,'RadioLibHal::spiTransfer()']]],
['spitransferstream_1108',['SPItransferStream',['../class_module.html#a4174159e476de5cef6ea3f89c883cb5e',1,'Module']]],