diff --git a/_s_x1262_8h_source.html b/_s_x1262_8h_source.html
index 6aba2e65..91ddb4c9 100644
--- a/_s_x1262_8h_source.html
+++ b/_s_x1262_8h_source.html
@@ -135,9 +135,9 @@ $(document).ready(function(){initNavTree('_s_x1262_8h_source.html',''); initResi
SX1262(Module *mod)
Default constructor.
Definition: SX1262.cpp:4
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: SX1262.cpp:32
int16_t begin(float freq=434.0, float bw=125.0, uint8_t sf=9, uint8_t cr=7, uint8_t syncWord=RADIOLIB_SX126X_SYNC_WORD_PRIVATE, int8_t power=10, uint16_t preambleLength=8, float tcxoVoltage=1.6, bool useRegulatorLDO=false)
Initialization method for LoRa modem.
Definition: SX1262.cpp:8
-virtual int16_t setOutputPower(int8_t power)
Sets output power. Allowed values are in range from -9 to 22 dBm. This method is virtual to allow ove...
Definition: SX1262.cpp:84
+virtual int16_t setOutputPower(int8_t power)
Sets output power. Allowed values are in range from -9 to 22 dBm. This method is virtual to allow ove...
Definition: SX1262.cpp:67
int16_t setFrequency(float freq)
Sets carrier frequency. Allowed values are in range from 150.0 to 960.0 MHz.
Definition: SX1262.cpp:50
-Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:443
+Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:431
diff --git a/_s_x1268_8h_source.html b/_s_x1268_8h_source.html
index 15b2c34f..95999a5b 100644
--- a/_s_x1268_8h_source.html
+++ b/_s_x1268_8h_source.html
@@ -131,12 +131,12 @@ $(document).ready(function(){initNavTree('_s_x1268_8h_source.html',''); initResi
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:31
Derived class for SX1268 modules.
Definition: SX1268.h:21
-int16_t setOutputPower(int8_t power)
Sets output power. Allowed values are in range from -9 to 22 dBm.
Definition: SX1268.cpp:79
+int16_t setOutputPower(int8_t power)
Sets output power. Allowed values are in range from -9 to 22 dBm.
Definition: SX1268.cpp:68
SX1268(Module *mod)
Default constructor.
Definition: SX1268.cpp:4
int16_t setFrequency(float freq)
Sets carrier frequency. Allowed values are in range from 410.0 to 810.0 MHz.
Definition: SX1268.cpp:50
int16_t begin(float freq=434.0, float bw=125.0, uint8_t sf=9, uint8_t cr=7, uint8_t syncWord=RADIOLIB_SX126X_SYNC_WORD_PRIVATE, int8_t power=10, uint16_t preambleLength=8, float tcxoVoltage=1.6, bool useRegulatorLDO=false)
Initialization method for LoRa modem.
Definition: SX1268.cpp:8
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: SX1268.cpp:32
-Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:443
+Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:431
diff --git a/_s_x126x_8h_source.html b/_s_x126x_8h_source.html
index dda47e00..96d76865 100644
--- a/_s_x126x_8h_source.html
+++ b/_s_x126x_8h_source.html
@@ -276,523 +276,511 @@ $(document).ready(function(){initNavTree('_s_x126x_8h_source.html',''); initResi
188 #define RADIOLIB_SX126X_CALIBRATE_RC64K_ON 0b00000001
189 #define RADIOLIB_SX126X_CALIBRATE_ALL 0b01111111
-
- 192 #define RADIOLIB_SX126X_CAL_IMG_430_MHZ_1 0x6B
- 193 #define RADIOLIB_SX126X_CAL_IMG_430_MHZ_2 0x6F
- 194 #define RADIOLIB_SX126X_CAL_IMG_470_MHZ_1 0x75
- 195 #define RADIOLIB_SX126X_CAL_IMG_470_MHZ_2 0x81
- 196 #define RADIOLIB_SX126X_CAL_IMG_779_MHZ_1 0xC1
- 197 #define RADIOLIB_SX126X_CAL_IMG_779_MHZ_2 0xC5
- 198 #define RADIOLIB_SX126X_CAL_IMG_863_MHZ_1 0xD7
- 199 #define RADIOLIB_SX126X_CAL_IMG_863_MHZ_2 0xDB
- 200 #define RADIOLIB_SX126X_CAL_IMG_902_MHZ_1 0xE1
- 201 #define RADIOLIB_SX126X_CAL_IMG_902_MHZ_2 0xE9
-
-
- 204 #define RADIOLIB_SX126X_PA_CONFIG_HP_MAX 0x07
- 205 #define RADIOLIB_SX126X_PA_CONFIG_PA_LUT 0x01
- 206 #define RADIOLIB_SX126X_PA_CONFIG_SX1262_8 0x00
-
-
- 209 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_FS 0x40
- 210 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_STDBY_XOSC 0x30
- 211 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_STDBY_RC 0x20
-
-
- 214 #define RADIOLIB_SX126X_IRQ_LR_FHSS_HOP 0b0100000000000000
- 215 #define RADIOLIB_SX126X_IRQ_TIMEOUT 0b0000001000000000
- 216 #define RADIOLIB_SX126X_IRQ_CAD_DETECTED 0b0000000100000000
- 217 #define RADIOLIB_SX126X_IRQ_CAD_DONE 0b0000000010000000
- 218 #define RADIOLIB_SX126X_IRQ_CRC_ERR 0b0000000001000000
- 219 #define RADIOLIB_SX126X_IRQ_HEADER_ERR 0b0000000000100000
- 220 #define RADIOLIB_SX126X_IRQ_HEADER_VALID 0b0000000000010000
- 221 #define RADIOLIB_SX126X_IRQ_SYNC_WORD_VALID 0b0000000000001000
- 222 #define RADIOLIB_SX126X_IRQ_PREAMBLE_DETECTED 0b0000000000000100
- 223 #define RADIOLIB_SX126X_IRQ_RX_DONE 0b0000000000000010
- 224 #define RADIOLIB_SX126X_IRQ_TX_DONE 0b0000000000000001
- 225 #define RADIOLIB_SX126X_IRQ_RX_DEFAULT 0b0000001001100010
- 226 #define RADIOLIB_SX126X_IRQ_ALL 0b0100001111111111
- 227 #define RADIOLIB_SX126X_IRQ_NONE 0b0000000000000000
-
-
- 230 #define RADIOLIB_SX126X_DIO2_AS_IRQ 0x00
- 231 #define RADIOLIB_SX126X_DIO2_AS_RF_SWITCH 0x01
-
-
- 234 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_6 0x00
- 235 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_7 0x01
- 236 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_8 0x02
- 237 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_2 0x03
- 238 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_4 0x04
- 239 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_7 0x05
- 240 #define RADIOLIB_SX126X_DIO3_OUTPUT_3_0 0x06
- 241 #define RADIOLIB_SX126X_DIO3_OUTPUT_3_3 0x07
-
-
- 244 #define RADIOLIB_SX126X_PACKET_TYPE_GFSK 0x00
- 245 #define RADIOLIB_SX126X_PACKET_TYPE_LORA 0x01
- 246 #define RADIOLIB_SX126X_PACKET_TYPE_LR_FHSS 0x03
-
-
- 249 #define RADIOLIB_SX126X_PA_RAMP_10U 0x00
- 250 #define RADIOLIB_SX126X_PA_RAMP_20U 0x01
- 251 #define RADIOLIB_SX126X_PA_RAMP_40U 0x02
- 252 #define RADIOLIB_SX126X_PA_RAMP_80U 0x03
- 253 #define RADIOLIB_SX126X_PA_RAMP_200U 0x04
- 254 #define RADIOLIB_SX126X_PA_RAMP_800U 0x05
- 255 #define RADIOLIB_SX126X_PA_RAMP_1700U 0x06
- 256 #define RADIOLIB_SX126X_PA_RAMP_3400U 0x07
-
-
- 259 #define RADIOLIB_SX126X_GFSK_FILTER_NONE 0x00
- 260 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_3 0x08
- 261 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_5 0x09
- 262 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_7 0x0A
- 263 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_1 0x0B
- 264 #define RADIOLIB_SX126X_GFSK_RX_BW_4_8 0x1F
- 265 #define RADIOLIB_SX126X_GFSK_RX_BW_5_8 0x17
- 266 #define RADIOLIB_SX126X_GFSK_RX_BW_7_3 0x0F
- 267 #define RADIOLIB_SX126X_GFSK_RX_BW_9_7 0x1E
- 268 #define RADIOLIB_SX126X_GFSK_RX_BW_11_7 0x16
- 269 #define RADIOLIB_SX126X_GFSK_RX_BW_14_6 0x0E
- 270 #define RADIOLIB_SX126X_GFSK_RX_BW_19_5 0x1D
- 271 #define RADIOLIB_SX126X_GFSK_RX_BW_23_4 0x15
- 272 #define RADIOLIB_SX126X_GFSK_RX_BW_29_3 0x0D
- 273 #define RADIOLIB_SX126X_GFSK_RX_BW_39_0 0x1C
- 274 #define RADIOLIB_SX126X_GFSK_RX_BW_46_9 0x14
- 275 #define RADIOLIB_SX126X_GFSK_RX_BW_58_6 0x0C
- 276 #define RADIOLIB_SX126X_GFSK_RX_BW_78_2 0x1B
- 277 #define RADIOLIB_SX126X_GFSK_RX_BW_93_8 0x13
- 278 #define RADIOLIB_SX126X_GFSK_RX_BW_117_3 0x0B
- 279 #define RADIOLIB_SX126X_GFSK_RX_BW_156_2 0x1A
- 280 #define RADIOLIB_SX126X_GFSK_RX_BW_187_2 0x12
- 281 #define RADIOLIB_SX126X_GFSK_RX_BW_234_3 0x0A
- 282 #define RADIOLIB_SX126X_GFSK_RX_BW_312_0 0x19
- 283 #define RADIOLIB_SX126X_GFSK_RX_BW_373_6 0x11
- 284 #define RADIOLIB_SX126X_GFSK_RX_BW_467_0 0x09
- 285 #define RADIOLIB_SX126X_LORA_BW_7_8 0x00
- 286 #define RADIOLIB_SX126X_LORA_BW_10_4 0x08
- 287 #define RADIOLIB_SX126X_LORA_BW_15_6 0x01
- 288 #define RADIOLIB_SX126X_LORA_BW_20_8 0x09
- 289 #define RADIOLIB_SX126X_LORA_BW_31_25 0x02
- 290 #define RADIOLIB_SX126X_LORA_BW_41_7 0x0A
- 291 #define RADIOLIB_SX126X_LORA_BW_62_5 0x03
- 292 #define RADIOLIB_SX126X_LORA_BW_125_0 0x04
- 293 #define RADIOLIB_SX126X_LORA_BW_250_0 0x05
- 294 #define RADIOLIB_SX126X_LORA_BW_500_0 0x06
- 295 #define RADIOLIB_SX126X_LORA_CR_4_5 0x01
- 296 #define RADIOLIB_SX126X_LORA_CR_4_6 0x02
- 297 #define RADIOLIB_SX126X_LORA_CR_4_7 0x03
- 298 #define RADIOLIB_SX126X_LORA_CR_4_8 0x04
- 299 #define RADIOLIB_SX126X_LORA_LOW_DATA_RATE_OPTIMIZE_OFF 0x00
- 300 #define RADIOLIB_SX126X_LORA_LOW_DATA_RATE_OPTIMIZE_ON 0x01
-
-
- 303 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_OFF 0x00
- 304 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_8 0x04
- 305 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_16 0x05
- 306 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_24 0x06
- 307 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_32 0x07
- 308 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_OFF 0x00
- 309 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_NODE 0x01
- 310 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_NODE_BROADCAST 0x02
- 311 #define RADIOLIB_SX126X_GFSK_PACKET_FIXED 0x00
- 312 #define RADIOLIB_SX126X_GFSK_PACKET_VARIABLE 0x01
- 313 #define RADIOLIB_SX126X_GFSK_CRC_OFF 0x01
- 314 #define RADIOLIB_SX126X_GFSK_CRC_1_BYTE 0x00
- 315 #define RADIOLIB_SX126X_GFSK_CRC_2_BYTE 0x02
- 316 #define RADIOLIB_SX126X_GFSK_CRC_1_BYTE_INV 0x04
- 317 #define RADIOLIB_SX126X_GFSK_CRC_2_BYTE_INV 0x06
- 318 #define RADIOLIB_SX126X_GFSK_WHITENING_OFF 0x00
- 319 #define RADIOLIB_SX126X_GFSK_WHITENING_ON 0x01
- 320 #define RADIOLIB_SX126X_LORA_HEADER_EXPLICIT 0x00
- 321 #define RADIOLIB_SX126X_LORA_HEADER_IMPLICIT 0x01
- 322 #define RADIOLIB_SX126X_LORA_CRC_OFF 0x00
- 323 #define RADIOLIB_SX126X_LORA_CRC_ON 0x01
- 324 #define RADIOLIB_SX126X_LORA_IQ_STANDARD 0x00
- 325 #define RADIOLIB_SX126X_LORA_IQ_INVERTED 0x01
-
-
- 328 #define RADIOLIB_SX126X_CAD_ON_1_SYMB 0x00
- 329 #define RADIOLIB_SX126X_CAD_ON_2_SYMB 0x01
- 330 #define RADIOLIB_SX126X_CAD_ON_4_SYMB 0x02
- 331 #define RADIOLIB_SX126X_CAD_ON_8_SYMB 0x03
- 332 #define RADIOLIB_SX126X_CAD_ON_16_SYMB 0x04
- 333 #define RADIOLIB_SX126X_CAD_GOTO_STDBY 0x00
- 334 #define RADIOLIB_SX126X_CAD_GOTO_RX 0x01
- 335 #define RADIOLIB_SX126X_CAD_PARAM_DEFAULT 0xFF
- 336 #define RADIOLIB_SX126X_CAD_PARAM_DET_MIN 10
-
-
- 339 #define RADIOLIB_SX126X_STATUS_MODE_STDBY_RC 0b00100000
- 340 #define RADIOLIB_SX126X_STATUS_MODE_STDBY_XOSC 0b00110000
- 341 #define RADIOLIB_SX126X_STATUS_MODE_FS 0b01000000
- 342 #define RADIOLIB_SX126X_STATUS_MODE_RX 0b01010000
- 343 #define RADIOLIB_SX126X_STATUS_MODE_TX 0b01100000
- 344 #define RADIOLIB_SX126X_STATUS_DATA_AVAILABLE 0b00000100
- 345 #define RADIOLIB_SX126X_STATUS_CMD_TIMEOUT 0b00000110
- 346 #define RADIOLIB_SX126X_STATUS_CMD_INVALID 0b00001000
- 347 #define RADIOLIB_SX126X_STATUS_CMD_FAILED 0b00001010
- 348 #define RADIOLIB_SX126X_STATUS_TX_DONE 0b00001100
- 349 #define RADIOLIB_SX126X_STATUS_SPI_FAILED 0b11111111
-
-
- 352 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PREAMBLE_ERR 0b10000000
- 353 #define RADIOLIB_SX126X_GFSK_RX_STATUS_SYNC_ERR 0b01000000
- 354 #define RADIOLIB_SX126X_GFSK_RX_STATUS_ADRS_ERR 0b00100000
- 355 #define RADIOLIB_SX126X_GFSK_RX_STATUS_CRC_ERR 0b00010000
- 356 #define RADIOLIB_SX126X_GFSK_RX_STATUS_LENGTH_ERR 0b00001000
- 357 #define RADIOLIB_SX126X_GFSK_RX_STATUS_ABORT_ERR 0b00000100
- 358 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PACKET_RECEIVED 0b00000010
- 359 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PACKET_SENT 0b00000001
-
-
- 362 #define RADIOLIB_SX126X_PA_RAMP_ERR 0b100000000
- 363 #define RADIOLIB_SX126X_PLL_LOCK_ERR 0b001000000
- 364 #define RADIOLIB_SX126X_XOSC_START_ERR 0b000100000
- 365 #define RADIOLIB_SX126X_IMG_CALIB_ERR 0b000010000
- 366 #define RADIOLIB_SX126X_ADC_CALIB_ERR 0b000001000
- 367 #define RADIOLIB_SX126X_PLL_CALIB_ERR 0b000000100
- 368 #define RADIOLIB_SX126X_RC13M_CALIB_ERR 0b000000010
- 369 #define RADIOLIB_SX126X_RC64K_CALIB_ERR 0b000000001
-
-
- 372 #define RADIOLIB_SX126X_SCAN_INTERVAL_7_68_US 10
- 373 #define RADIOLIB_SX126X_SCAN_INTERVAL_8_20_US 11
- 374 #define RADIOLIB_SX126X_SCAN_INTERVAL_8_68_US 12
-
-
-
- 378 #define RADIOLIB_SX126X_HOPPING_ENABLED 0b00000001
- 379 #define RADIOLIB_SX126X_HOPPING_DISABLED 0b00000000
+
+ 192 #define RADIOLIB_SX126X_PA_CONFIG_HP_MAX 0x07
+ 193 #define RADIOLIB_SX126X_PA_CONFIG_PA_LUT 0x01
+ 194 #define RADIOLIB_SX126X_PA_CONFIG_SX1262_8 0x00
+
+
+ 197 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_FS 0x40
+ 198 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_STDBY_XOSC 0x30
+ 199 #define RADIOLIB_SX126X_RX_TX_FALLBACK_MODE_STDBY_RC 0x20
+
+
+ 202 #define RADIOLIB_SX126X_IRQ_LR_FHSS_HOP 0b0100000000000000
+ 203 #define RADIOLIB_SX126X_IRQ_TIMEOUT 0b0000001000000000
+ 204 #define RADIOLIB_SX126X_IRQ_CAD_DETECTED 0b0000000100000000
+ 205 #define RADIOLIB_SX126X_IRQ_CAD_DONE 0b0000000010000000
+ 206 #define RADIOLIB_SX126X_IRQ_CRC_ERR 0b0000000001000000
+ 207 #define RADIOLIB_SX126X_IRQ_HEADER_ERR 0b0000000000100000
+ 208 #define RADIOLIB_SX126X_IRQ_HEADER_VALID 0b0000000000010000
+ 209 #define RADIOLIB_SX126X_IRQ_SYNC_WORD_VALID 0b0000000000001000
+ 210 #define RADIOLIB_SX126X_IRQ_PREAMBLE_DETECTED 0b0000000000000100
+ 211 #define RADIOLIB_SX126X_IRQ_RX_DONE 0b0000000000000010
+ 212 #define RADIOLIB_SX126X_IRQ_TX_DONE 0b0000000000000001
+ 213 #define RADIOLIB_SX126X_IRQ_RX_DEFAULT 0b0000001001100010
+ 214 #define RADIOLIB_SX126X_IRQ_ALL 0b0100001111111111
+ 215 #define RADIOLIB_SX126X_IRQ_NONE 0b0000000000000000
+
+
+ 218 #define RADIOLIB_SX126X_DIO2_AS_IRQ 0x00
+ 219 #define RADIOLIB_SX126X_DIO2_AS_RF_SWITCH 0x01
+
+
+ 222 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_6 0x00
+ 223 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_7 0x01
+ 224 #define RADIOLIB_SX126X_DIO3_OUTPUT_1_8 0x02
+ 225 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_2 0x03
+ 226 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_4 0x04
+ 227 #define RADIOLIB_SX126X_DIO3_OUTPUT_2_7 0x05
+ 228 #define RADIOLIB_SX126X_DIO3_OUTPUT_3_0 0x06
+ 229 #define RADIOLIB_SX126X_DIO3_OUTPUT_3_3 0x07
+
+
+ 232 #define RADIOLIB_SX126X_PACKET_TYPE_GFSK 0x00
+ 233 #define RADIOLIB_SX126X_PACKET_TYPE_LORA 0x01
+ 234 #define RADIOLIB_SX126X_PACKET_TYPE_LR_FHSS 0x03
+
+
+ 237 #define RADIOLIB_SX126X_PA_RAMP_10U 0x00
+ 238 #define RADIOLIB_SX126X_PA_RAMP_20U 0x01
+ 239 #define RADIOLIB_SX126X_PA_RAMP_40U 0x02
+ 240 #define RADIOLIB_SX126X_PA_RAMP_80U 0x03
+ 241 #define RADIOLIB_SX126X_PA_RAMP_200U 0x04
+ 242 #define RADIOLIB_SX126X_PA_RAMP_800U 0x05
+ 243 #define RADIOLIB_SX126X_PA_RAMP_1700U 0x06
+ 244 #define RADIOLIB_SX126X_PA_RAMP_3400U 0x07
+
+
+ 247 #define RADIOLIB_SX126X_GFSK_FILTER_NONE 0x00
+ 248 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_3 0x08
+ 249 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_5 0x09
+ 250 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_0_7 0x0A
+ 251 #define RADIOLIB_SX126X_GFSK_FILTER_GAUSS_1 0x0B
+ 252 #define RADIOLIB_SX126X_GFSK_RX_BW_4_8 0x1F
+ 253 #define RADIOLIB_SX126X_GFSK_RX_BW_5_8 0x17
+ 254 #define RADIOLIB_SX126X_GFSK_RX_BW_7_3 0x0F
+ 255 #define RADIOLIB_SX126X_GFSK_RX_BW_9_7 0x1E
+ 256 #define RADIOLIB_SX126X_GFSK_RX_BW_11_7 0x16
+ 257 #define RADIOLIB_SX126X_GFSK_RX_BW_14_6 0x0E
+ 258 #define RADIOLIB_SX126X_GFSK_RX_BW_19_5 0x1D
+ 259 #define RADIOLIB_SX126X_GFSK_RX_BW_23_4 0x15
+ 260 #define RADIOLIB_SX126X_GFSK_RX_BW_29_3 0x0D
+ 261 #define RADIOLIB_SX126X_GFSK_RX_BW_39_0 0x1C
+ 262 #define RADIOLIB_SX126X_GFSK_RX_BW_46_9 0x14
+ 263 #define RADIOLIB_SX126X_GFSK_RX_BW_58_6 0x0C
+ 264 #define RADIOLIB_SX126X_GFSK_RX_BW_78_2 0x1B
+ 265 #define RADIOLIB_SX126X_GFSK_RX_BW_93_8 0x13
+ 266 #define RADIOLIB_SX126X_GFSK_RX_BW_117_3 0x0B
+ 267 #define RADIOLIB_SX126X_GFSK_RX_BW_156_2 0x1A
+ 268 #define RADIOLIB_SX126X_GFSK_RX_BW_187_2 0x12
+ 269 #define RADIOLIB_SX126X_GFSK_RX_BW_234_3 0x0A
+ 270 #define RADIOLIB_SX126X_GFSK_RX_BW_312_0 0x19
+ 271 #define RADIOLIB_SX126X_GFSK_RX_BW_373_6 0x11
+ 272 #define RADIOLIB_SX126X_GFSK_RX_BW_467_0 0x09
+ 273 #define RADIOLIB_SX126X_LORA_BW_7_8 0x00
+ 274 #define RADIOLIB_SX126X_LORA_BW_10_4 0x08
+ 275 #define RADIOLIB_SX126X_LORA_BW_15_6 0x01
+ 276 #define RADIOLIB_SX126X_LORA_BW_20_8 0x09
+ 277 #define RADIOLIB_SX126X_LORA_BW_31_25 0x02
+ 278 #define RADIOLIB_SX126X_LORA_BW_41_7 0x0A
+ 279 #define RADIOLIB_SX126X_LORA_BW_62_5 0x03
+ 280 #define RADIOLIB_SX126X_LORA_BW_125_0 0x04
+ 281 #define RADIOLIB_SX126X_LORA_BW_250_0 0x05
+ 282 #define RADIOLIB_SX126X_LORA_BW_500_0 0x06
+ 283 #define RADIOLIB_SX126X_LORA_CR_4_5 0x01
+ 284 #define RADIOLIB_SX126X_LORA_CR_4_6 0x02
+ 285 #define RADIOLIB_SX126X_LORA_CR_4_7 0x03
+ 286 #define RADIOLIB_SX126X_LORA_CR_4_8 0x04
+ 287 #define RADIOLIB_SX126X_LORA_LOW_DATA_RATE_OPTIMIZE_OFF 0x00
+ 288 #define RADIOLIB_SX126X_LORA_LOW_DATA_RATE_OPTIMIZE_ON 0x01
+
+
+ 291 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_OFF 0x00
+ 292 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_8 0x04
+ 293 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_16 0x05
+ 294 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_24 0x06
+ 295 #define RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_32 0x07
+ 296 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_OFF 0x00
+ 297 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_NODE 0x01
+ 298 #define RADIOLIB_SX126X_GFSK_ADDRESS_FILT_NODE_BROADCAST 0x02
+ 299 #define RADIOLIB_SX126X_GFSK_PACKET_FIXED 0x00
+ 300 #define RADIOLIB_SX126X_GFSK_PACKET_VARIABLE 0x01
+ 301 #define RADIOLIB_SX126X_GFSK_CRC_OFF 0x01
+ 302 #define RADIOLIB_SX126X_GFSK_CRC_1_BYTE 0x00
+ 303 #define RADIOLIB_SX126X_GFSK_CRC_2_BYTE 0x02
+ 304 #define RADIOLIB_SX126X_GFSK_CRC_1_BYTE_INV 0x04
+ 305 #define RADIOLIB_SX126X_GFSK_CRC_2_BYTE_INV 0x06
+ 306 #define RADIOLIB_SX126X_GFSK_WHITENING_OFF 0x00
+ 307 #define RADIOLIB_SX126X_GFSK_WHITENING_ON 0x01
+ 308 #define RADIOLIB_SX126X_LORA_HEADER_EXPLICIT 0x00
+ 309 #define RADIOLIB_SX126X_LORA_HEADER_IMPLICIT 0x01
+ 310 #define RADIOLIB_SX126X_LORA_CRC_OFF 0x00
+ 311 #define RADIOLIB_SX126X_LORA_CRC_ON 0x01
+ 312 #define RADIOLIB_SX126X_LORA_IQ_STANDARD 0x00
+ 313 #define RADIOLIB_SX126X_LORA_IQ_INVERTED 0x01
+
+
+ 316 #define RADIOLIB_SX126X_CAD_ON_1_SYMB 0x00
+ 317 #define RADIOLIB_SX126X_CAD_ON_2_SYMB 0x01
+ 318 #define RADIOLIB_SX126X_CAD_ON_4_SYMB 0x02
+ 319 #define RADIOLIB_SX126X_CAD_ON_8_SYMB 0x03
+ 320 #define RADIOLIB_SX126X_CAD_ON_16_SYMB 0x04
+ 321 #define RADIOLIB_SX126X_CAD_GOTO_STDBY 0x00
+ 322 #define RADIOLIB_SX126X_CAD_GOTO_RX 0x01
+ 323 #define RADIOLIB_SX126X_CAD_PARAM_DEFAULT 0xFF
+ 324 #define RADIOLIB_SX126X_CAD_PARAM_DET_MIN 10
+
+
+ 327 #define RADIOLIB_SX126X_STATUS_MODE_STDBY_RC 0b00100000
+ 328 #define RADIOLIB_SX126X_STATUS_MODE_STDBY_XOSC 0b00110000
+ 329 #define RADIOLIB_SX126X_STATUS_MODE_FS 0b01000000
+ 330 #define RADIOLIB_SX126X_STATUS_MODE_RX 0b01010000
+ 331 #define RADIOLIB_SX126X_STATUS_MODE_TX 0b01100000
+ 332 #define RADIOLIB_SX126X_STATUS_DATA_AVAILABLE 0b00000100
+ 333 #define RADIOLIB_SX126X_STATUS_CMD_TIMEOUT 0b00000110
+ 334 #define RADIOLIB_SX126X_STATUS_CMD_INVALID 0b00001000
+ 335 #define RADIOLIB_SX126X_STATUS_CMD_FAILED 0b00001010
+ 336 #define RADIOLIB_SX126X_STATUS_TX_DONE 0b00001100
+ 337 #define RADIOLIB_SX126X_STATUS_SPI_FAILED 0b11111111
+
+
+ 340 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PREAMBLE_ERR 0b10000000
+ 341 #define RADIOLIB_SX126X_GFSK_RX_STATUS_SYNC_ERR 0b01000000
+ 342 #define RADIOLIB_SX126X_GFSK_RX_STATUS_ADRS_ERR 0b00100000
+ 343 #define RADIOLIB_SX126X_GFSK_RX_STATUS_CRC_ERR 0b00010000
+ 344 #define RADIOLIB_SX126X_GFSK_RX_STATUS_LENGTH_ERR 0b00001000
+ 345 #define RADIOLIB_SX126X_GFSK_RX_STATUS_ABORT_ERR 0b00000100
+ 346 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PACKET_RECEIVED 0b00000010
+ 347 #define RADIOLIB_SX126X_GFSK_RX_STATUS_PACKET_SENT 0b00000001
+
+
+ 350 #define RADIOLIB_SX126X_PA_RAMP_ERR 0b100000000
+ 351 #define RADIOLIB_SX126X_PLL_LOCK_ERR 0b001000000
+ 352 #define RADIOLIB_SX126X_XOSC_START_ERR 0b000100000
+ 353 #define RADIOLIB_SX126X_IMG_CALIB_ERR 0b000010000
+ 354 #define RADIOLIB_SX126X_ADC_CALIB_ERR 0b000001000
+ 355 #define RADIOLIB_SX126X_PLL_CALIB_ERR 0b000000100
+ 356 #define RADIOLIB_SX126X_RC13M_CALIB_ERR 0b000000010
+ 357 #define RADIOLIB_SX126X_RC64K_CALIB_ERR 0b000000001
+
+
+ 360 #define RADIOLIB_SX126X_SCAN_INTERVAL_7_68_US 10
+ 361 #define RADIOLIB_SX126X_SCAN_INTERVAL_8_20_US 11
+ 362 #define RADIOLIB_SX126X_SCAN_INTERVAL_8_68_US 12
+
+
+
+ 366 #define RADIOLIB_SX126X_HOPPING_ENABLED 0b00000001
+ 367 #define RADIOLIB_SX126X_HOPPING_DISABLED 0b00000000
+
+
+ 370 #define RADIOLIB_SX126X_SYNC_WORD_PUBLIC 0x34
+ 371 #define RADIOLIB_SX126X_SYNC_WORD_PRIVATE 0x12
+
+
+ 374 #define RADIOLIB_SX126X_TX_BITBANG_1_DISABLED 0b00000000
+ 375 #define RADIOLIB_SX126X_TX_BITBANG_1_ENABLED 0b00010000
+
+
+ 378 #define RADIOLIB_SX126X_TX_BITBANG_0_DISABLED 0b00000000
+ 379 #define RADIOLIB_SX126X_TX_BITBANG_0_ENABLED 0b00001100
-
- 382 #define RADIOLIB_SX126X_SYNC_WORD_PUBLIC 0x34
- 383 #define RADIOLIB_SX126X_SYNC_WORD_PRIVATE 0x12
-
-
- 386 #define RADIOLIB_SX126X_TX_BITBANG_1_DISABLED 0b00000000
- 387 #define RADIOLIB_SX126X_TX_BITBANG_1_ENABLED 0b00010000
+
+ 382 #define RADIOLIB_SX126X_DIO1_OUT_DISABLED 0b00000010
+ 383 #define RADIOLIB_SX126X_DIO1_OUT_ENABLED 0b00000000
+ 384 #define RADIOLIB_SX126X_DIO2_OUT_DISABLED 0b00000100
+ 385 #define RADIOLIB_SX126X_DIO2_OUT_ENABLED 0b00000000
+ 386 #define RADIOLIB_SX126X_DIO3_OUT_DISABLED 0b00001000
+ 387 #define RADIOLIB_SX126X_DIO3_OUT_ENABLED 0b00000000
-
- 390 #define RADIOLIB_SX126X_TX_BITBANG_0_DISABLED 0b00000000
- 391 #define RADIOLIB_SX126X_TX_BITBANG_0_ENABLED 0b00001100
-
-
- 394 #define RADIOLIB_SX126X_DIO1_OUT_DISABLED 0b00000010
- 395 #define RADIOLIB_SX126X_DIO1_OUT_ENABLED 0b00000000
- 396 #define RADIOLIB_SX126X_DIO2_OUT_DISABLED 0b00000100
- 397 #define RADIOLIB_SX126X_DIO2_OUT_ENABLED 0b00000000
- 398 #define RADIOLIB_SX126X_DIO3_OUT_DISABLED 0b00001000
- 399 #define RADIOLIB_SX126X_DIO3_OUT_ENABLED 0b00000000
-
-
- 402 #define RADIOLIB_SX126X_DIO1_IN_DISABLED 0b00000000
- 403 #define RADIOLIB_SX126X_DIO1_IN_ENABLED 0b00000010
- 404 #define RADIOLIB_SX126X_DIO2_IN_DISABLED 0b00000000
- 405 #define RADIOLIB_SX126X_DIO2_IN_ENABLED 0b00000100
- 406 #define RADIOLIB_SX126X_DIO3_IN_DISABLED 0b00000000
- 407 #define RADIOLIB_SX126X_DIO3_IN_ENABLED 0b00001000
-
-
- 410 #define RADIOLIB_SX126X_RX_GAIN_BOOSTED 0x96
- 411 #define RADIOLIB_SX126X_RX_GAIN_POWER_SAVING 0x94
- 412 #define RADIOLIB_SX126X_RX_GAIN_SPECTRAL_SCAN 0xCB
-
-
- 415 #define RADIOLIB_SX126X_PATCH_UPDATE_DISABLED 0b00000000
- 416 #define RADIOLIB_SX126X_PATCH_UPDATE_ENABLED 0b00010000
-
-
- 419 #define RADIOLIB_SX126X_SPECTRAL_SCAN_NONE 0x00
- 420 #define RADIOLIB_SX126X_SPECTRAL_SCAN_ONGOING 0x0F
- 421 #define RADIOLIB_SX126X_SPECTRAL_SCAN_ABORTED 0xF0
- 422 #define RADIOLIB_SX126X_SPECTRAL_SCAN_COMPLETED 0xFF
-
-
- 425 #define RADIOLIB_SX126X_SPECTRAL_SCAN_WINDOW_DEFAULT (0x05 << 2)
-
-
- 428 #define RADIOLIB_SX126X_LNA_RNG_DISABLED 0b00000001
- 429 #define RADIOLIB_SX126X_LNA_RNG_ENABLED 0b00000000
-
-
- 432 #define RADIOLIB_SX126X_MIXER_RNG_DISABLED 0b00000001
- 433 #define RADIOLIB_SX126X_MIXER_RNG_ENABLED 0b00000000
-
-
- 436 #define RADIOLIB_SX126X_SPECTRAL_SCAN_RES_SIZE (33)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 475 int16_t
begin(uint8_t cr, uint8_t syncWord, uint16_t preambleLength,
float tcxoVoltage,
bool useRegulatorLDO =
false);
-
- 488 int16_t
beginFSK(
float br,
float freqDev,
float rxBw, uint16_t preambleLength,
float tcxoVoltage,
bool useRegulatorLDO =
false);
-
- 496 int16_t
reset(
bool verify =
true);
-
- 506 int16_t
transmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
-
- 515 int16_t
receive(uint8_t* data,
size_t len)
override;
-
-
-
-
-
-
-
- 544 int16_t
scanChannel(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
-
- 552 int16_t
sleep(
bool retainConfig =
true);
-
-
-
- 567 int16_t
standby(uint8_t mode,
bool wakeup =
true);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 623 int16_t
startTransmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
-
-
-
-
-
- 654 int16_t
startReceive(uint32_t timeout, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE,
size_t len = 0);
+
+ 390 #define RADIOLIB_SX126X_DIO1_IN_DISABLED 0b00000000
+ 391 #define RADIOLIB_SX126X_DIO1_IN_ENABLED 0b00000010
+ 392 #define RADIOLIB_SX126X_DIO2_IN_DISABLED 0b00000000
+ 393 #define RADIOLIB_SX126X_DIO2_IN_ENABLED 0b00000100
+ 394 #define RADIOLIB_SX126X_DIO3_IN_DISABLED 0b00000000
+ 395 #define RADIOLIB_SX126X_DIO3_IN_ENABLED 0b00001000
+
+
+ 398 #define RADIOLIB_SX126X_RX_GAIN_BOOSTED 0x96
+ 399 #define RADIOLIB_SX126X_RX_GAIN_POWER_SAVING 0x94
+ 400 #define RADIOLIB_SX126X_RX_GAIN_SPECTRAL_SCAN 0xCB
+
+
+ 403 #define RADIOLIB_SX126X_PATCH_UPDATE_DISABLED 0b00000000
+ 404 #define RADIOLIB_SX126X_PATCH_UPDATE_ENABLED 0b00010000
+
+
+ 407 #define RADIOLIB_SX126X_SPECTRAL_SCAN_NONE 0x00
+ 408 #define RADIOLIB_SX126X_SPECTRAL_SCAN_ONGOING 0x0F
+ 409 #define RADIOLIB_SX126X_SPECTRAL_SCAN_ABORTED 0xF0
+ 410 #define RADIOLIB_SX126X_SPECTRAL_SCAN_COMPLETED 0xFF
+
+
+ 413 #define RADIOLIB_SX126X_SPECTRAL_SCAN_WINDOW_DEFAULT (0x05 << 2)
+
+
+ 416 #define RADIOLIB_SX126X_LNA_RNG_DISABLED 0b00000001
+ 417 #define RADIOLIB_SX126X_LNA_RNG_ENABLED 0b00000000
+
+
+ 420 #define RADIOLIB_SX126X_MIXER_RNG_DISABLED 0b00000001
+ 421 #define RADIOLIB_SX126X_MIXER_RNG_ENABLED 0b00000000
+
+
+ 424 #define RADIOLIB_SX126X_SPECTRAL_SCAN_RES_SIZE (33)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 463 int16_t
begin(uint8_t cr, uint8_t syncWord, uint16_t preambleLength,
float tcxoVoltage,
bool useRegulatorLDO =
false);
+
+ 476 int16_t
beginFSK(
float br,
float freqDev,
float rxBw, uint16_t preambleLength,
float tcxoVoltage,
bool useRegulatorLDO =
false);
+
+ 484 int16_t
reset(
bool verify =
true);
+
+ 494 int16_t
transmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
+
+ 503 int16_t
receive(uint8_t* data,
size_t len)
override;
+
+
+
+
+
+
+
+ 532 int16_t
scanChannel(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
+
+ 540 int16_t
sleep(
bool retainConfig =
true);
+
+
+
+ 555 int16_t
standby(uint8_t mode,
bool wakeup =
true);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 611 int16_t
startTransmit(uint8_t* data,
size_t len, uint8_t addr = 0)
override;
+
+
+
+
+
+ 642 int16_t
startReceive(uint32_t timeout, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE,
size_t len = 0);
+
+ 654 int16_t
startReceiveDutyCycle(uint32_t rxPeriod, uint32_t sleepPeriod, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
- 666 int16_t
startReceiveDutyCycle(uint32_t rxPeriod, uint32_t sleepPeriod, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
-
- 682 int16_t
startReceiveDutyCycleAuto(uint16_t senderPreambleLength = 0, uint16_t minSymbols = 8, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
-
-
-
- 698 int16_t
readData(uint8_t* data,
size_t len)
override;
-
-
-
- 715 int16_t
startChannelScan(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
-
-
-
-
-
-
-
-
-
-
-
- 752 int16_t
setSyncWord(uint8_t syncWord, uint8_t controlBits = 0x44);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 828 int16_t
setSyncWord(uint8_t* syncWord,
size_t len)
override;
-
- 837 int16_t
setSyncBits(uint8_t *syncWord, uint8_t bitsLen);
-
-
-
-
-
-
-
- 868 int16_t
setCRC(uint8_t len, uint16_t initial = 0x1D0F, uint16_t polynomial = 0x1021,
bool inverted =
true);
-
- 877 int16_t
setWhitening(
bool enabled, uint16_t initial = 0x01FF);
-
- 888 int16_t
setTCXO(
float voltage, uint32_t delay = 5000);
+ 670 int16_t
startReceiveDutyCycleAuto(uint16_t senderPreambleLength = 0, uint16_t minSymbols = 8, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
+
+
+
+ 686 int16_t
readData(uint8_t* data,
size_t len)
override;
+
+
+
+ 703 int16_t
startChannelScan(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
+
+
+
+
+
+
+
+
+
+
+
+ 740 int16_t
setSyncWord(uint8_t syncWord, uint8_t controlBits = 0x44);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 816 int16_t
setSyncWord(uint8_t* syncWord,
size_t len)
override;
+
+ 825 int16_t
setSyncBits(uint8_t *syncWord, uint8_t bitsLen);
+
+
+
+
+
+
+
+ 856 int16_t
setCRC(uint8_t len, uint16_t initial = 0x1D0F, uint16_t polynomial = 0x1021,
bool inverted =
true);
+
+ 865 int16_t
setWhitening(
bool enabled, uint16_t initial = 0x01FF);
+
+ 876 int16_t
setTCXO(
float voltage, uint32_t delay = 5000);
+
+
+
+
-
-
-
-
- 907 float getRSSI(
bool packet =
true);
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ 895 float getRSSI(
bool packet =
true);
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1040 int16_t
invertIQ(
bool enable)
override;
-
- 1042 #if !RADIOLIB_EXCLUDE_DIRECT_RECEIVE
-
-
-
-
-
- 1065 int16_t
uploadPatch(
const uint32_t* patch,
size_t len,
bool nonvolatile =
true);
-
- 1074 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);
-
-
-
-
-
-
-
- 1105 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);
-
- 1107 #if !RADIOLIB_GODMODE
-
-
-
-
- 1112 int16_t setTx(uint32_t timeout = 0);
- 1113 int16_t setRx(uint32_t timeout);
- 1114 int16_t setCad(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
- 1115 int16_t writeRegister(uint16_t addr, uint8_t* data, uint8_t numBytes);
- 1116 int16_t readRegister(uint16_t addr, uint8_t* data, uint8_t numBytes);
- 1117 int16_t writeBuffer(uint8_t* data, uint8_t numBytes, uint8_t offset = 0x00);
- 1118 int16_t readBuffer(uint8_t* data, uint8_t numBytes, uint8_t offset = 0x00);
- 1119 int16_t setDioIrqParams(uint16_t irqMask, uint16_t dio1Mask, uint16_t dio2Mask = RADIOLIB_SX126X_IRQ_NONE, uint16_t dio3Mask = RADIOLIB_SX126X_IRQ_NONE);
- 1120 virtual int16_t clearIrqStatus(uint16_t clearIrqParams = RADIOLIB_SX126X_IRQ_ALL);
- 1121 int16_t setRfFrequency(uint32_t frf);
- 1122 int16_t calibrateImage(uint8_t* data);
- 1123 uint8_t getPacketType();
- 1124 int16_t setTxParams(uint8_t power, uint8_t rampTime = RADIOLIB_SX126X_PA_RAMP_200U);
- 1125 int16_t setModulationParams(uint8_t sf, uint8_t bw, uint8_t cr, uint8_t ldro);
- 1126 int16_t setModulationParamsFSK(uint32_t br, uint8_t sh, uint8_t rxBw, uint32_t freqDev);
- 1127 int16_t setPacketParams(uint16_t preambleLen, uint8_t crcType, uint8_t payloadLen, uint8_t hdrType, uint8_t
invertIQ);
- 1128 int16_t setPacketParamsFSK(uint16_t preambleLen, uint8_t crcType, uint8_t syncWordLen, uint8_t addrCmp, uint8_t whiten, uint8_t packType = RADIOLIB_SX126X_GFSK_PACKET_VARIABLE, uint8_t payloadLen = 0xFF, uint8_t preambleDetectorLen = RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_16);
- 1129 int16_t setBufferBaseAddress(uint8_t txBaseAddress = 0x00, uint8_t rxBaseAddress = 0x00);
- 1130 int16_t setRegulatorMode(uint8_t mode);
- 1131 uint8_t getStatus();
- 1132 uint32_t getPacketStatus();
- 1133 uint16_t getDeviceErrors();
- 1134 int16_t clearDeviceErrors();
-
- 1136 int16_t startReceiveCommon(uint32_t timeout = RADIOLIB_SX126X_RX_TIMEOUT_INF, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
- 1137 int16_t setFrequencyRaw(
float freq);
- 1138 int16_t setPacketMode(uint8_t mode, uint8_t len);
- 1139 int16_t setHeaderType(uint8_t hdrType,
size_t len = 0xFF);
- 1140 int16_t directMode();
- 1141 int16_t packetMode();
-
-
- 1144 int16_t fixSensitivity();
- 1145 int16_t fixPaClamping(
bool enable =
true);
- 1146 int16_t fixImplicitTimeout();
- 1147 int16_t fixInvertedIQ(uint8_t iqConfig);
+
+
+
+
+
+
+
+
+
+
+
+
+ 1028 int16_t
invertIQ(
bool enable)
override;
+
+ 1030 #if !RADIOLIB_EXCLUDE_DIRECT_RECEIVE
+
+
+
+
+
+ 1053 int16_t
uploadPatch(
const uint32_t* patch,
size_t len,
bool nonvolatile =
true);
+
+ 1062 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);
+
+
+
+
+
+
+
+ 1093 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);
+
+ 1095 #if !RADIOLIB_GODMODE
+
+
+
+
+ 1100 int16_t setTx(uint32_t timeout = 0);
+ 1101 int16_t setRx(uint32_t timeout);
+ 1102 int16_t setCad(uint8_t symbolNum, uint8_t detPeak, uint8_t detMin);
+ 1103 int16_t writeRegister(uint16_t addr, uint8_t* data, uint8_t numBytes);
+ 1104 int16_t readRegister(uint16_t addr, uint8_t* data, uint8_t numBytes);
+ 1105 int16_t writeBuffer(uint8_t* data, uint8_t numBytes, uint8_t offset = 0x00);
+ 1106 int16_t readBuffer(uint8_t* data, uint8_t numBytes, uint8_t offset = 0x00);
+ 1107 int16_t setDioIrqParams(uint16_t irqMask, uint16_t dio1Mask, uint16_t dio2Mask = RADIOLIB_SX126X_IRQ_NONE, uint16_t dio3Mask = RADIOLIB_SX126X_IRQ_NONE);
+ 1108 virtual int16_t clearIrqStatus(uint16_t clearIrqParams = RADIOLIB_SX126X_IRQ_ALL);
+ 1109 int16_t setRfFrequency(uint32_t frf);
+ 1110 int16_t calibrateImage(
float freqMin,
float freqMax);
+ 1111 uint8_t getPacketType();
+ 1112 int16_t setTxParams(uint8_t power, uint8_t rampTime = RADIOLIB_SX126X_PA_RAMP_200U);
+ 1113 int16_t setModulationParams(uint8_t sf, uint8_t bw, uint8_t cr, uint8_t ldro);
+ 1114 int16_t setModulationParamsFSK(uint32_t br, uint8_t sh, uint8_t rxBw, uint32_t freqDev);
+ 1115 int16_t setPacketParams(uint16_t preambleLen, uint8_t crcType, uint8_t payloadLen, uint8_t hdrType, uint8_t
invertIQ);
+ 1116 int16_t setPacketParamsFSK(uint16_t preambleLen, uint8_t crcType, uint8_t syncWordLen, uint8_t addrCmp, uint8_t whiten, uint8_t packType = RADIOLIB_SX126X_GFSK_PACKET_VARIABLE, uint8_t payloadLen = 0xFF, uint8_t preambleDetectorLen = RADIOLIB_SX126X_GFSK_PREAMBLE_DETECT_16);
+ 1117 int16_t setBufferBaseAddress(uint8_t txBaseAddress = 0x00, uint8_t rxBaseAddress = 0x00);
+ 1118 int16_t setRegulatorMode(uint8_t mode);
+ 1119 uint8_t getStatus();
+ 1120 uint32_t getPacketStatus();
+ 1121 uint16_t getDeviceErrors();
+ 1122 int16_t clearDeviceErrors();
+
+ 1124 int16_t startReceiveCommon(uint32_t timeout = RADIOLIB_SX126X_RX_TIMEOUT_INF, uint16_t irqFlags = RADIOLIB_SX126X_IRQ_RX_DEFAULT, uint16_t irqMask = RADIOLIB_SX126X_IRQ_RX_DONE);
+ 1125 int16_t setFrequencyRaw(
float freq);
+ 1126 int16_t setPacketMode(uint8_t mode, uint8_t len);
+ 1127 int16_t setHeaderType(uint8_t hdrType,
size_t len = 0xFF);
+ 1128 int16_t directMode();
+ 1129 int16_t packetMode();
+
+
+ 1132 int16_t fixSensitivity();
+ 1133 int16_t fixPaClamping(
bool enable =
true);
+ 1134 int16_t fixImplicitTimeout();
+ 1135 int16_t fixInvertedIQ(uint8_t iqConfig);
+
+ 1137 #if !RADIOLIB_GODMODE && !RADIOLIB_LOW_LEVEL
+
+
+
+
+
+ 1143 static int16_t SPIparseStatus(uint8_t in);
+
+ 1145 #if !RADIOLIB_GODMODE
+
+
- 1149 #if !RADIOLIB_GODMODE && !RADIOLIB_LOW_LEVEL
-
-
-
+ 1149 uint8_t bandwidth = 0, spreadingFactor = 0, codingRate = 0, ldrOptimize = 0, crcTypeLoRa = 0, headerType = 0;
+ 1150 uint16_t preambleLengthLoRa = 0;
+ 1151 float bandwidthKhz = 0;
+ 1152 bool ldroAuto =
true;
-
- 1155 static int16_t SPIparseStatus(uint8_t in);
-
- 1157 #if !RADIOLIB_GODMODE
-
-
+ 1154 uint32_t bitRate = 0, frequencyDev = 0;
+ 1155 uint8_t rxBandwidth = 0, pulseShape = 0, crcTypeFSK = 0, syncWordLength = 0, addrComp = 0, whitening = 0, packetType = 0;
+ 1156 uint16_t preambleLengthFSK = 0;
+ 1157 float rxBandwidthKhz = 0;
+
+ 1159 float dataRateMeasured = 0;
- 1161 uint8_t bandwidth = 0, spreadingFactor = 0, codingRate = 0, ldrOptimize = 0, crcTypeLoRa = 0, headerType = 0;
- 1162 uint16_t preambleLengthLoRa = 0;
- 1163 float bandwidthKhz = 0;
- 1164 bool ldroAuto =
true;
-
- 1166 uint32_t bitRate = 0, frequencyDev = 0;
- 1167 uint8_t rxBandwidth = 0, pulseShape = 0, crcTypeFSK = 0, syncWordLength = 0, addrComp = 0, whitening = 0, packetType = 0;
- 1168 uint16_t preambleLengthFSK = 0;
- 1169 float rxBandwidthKhz = 0;
-
- 1171 float dataRateMeasured = 0;
-
- 1173 uint32_t tcxoDelay = 0;
-
- 1175 size_t implicitLen = 0;
- 1176 uint8_t invertIQEnabled = RADIOLIB_SX126X_LORA_IQ_STANDARD;
- 1177 const char* chipType;
-
-
-
-
- 1182 int16_t config(uint8_t modem);
- 1183 bool findChip(
const char* verStr);
-
-
-
-
-
+ 1161 uint32_t tcxoDelay = 0;
+
+ 1163 size_t implicitLen = 0;
+ 1164 uint8_t invertIQEnabled = RADIOLIB_SX126X_LORA_IQ_STANDARD;
+ 1165 const char* chipType;
+
+
+
+
+ 1170 int16_t config(uint8_t modem);
+ 1171 bool findChip(
const char* verStr);
+
+
+
+
+
Implements all common low-level methods to control the wireless module. Every module class contains o...
Definition: Module.h:31
static const size_t RFSWITCH_MAX_PINS
The maximum number of pins supported by the RF switch code.
Definition: Module.h:42
@ MODE_TX
Definition: Module.h:71
@@ -803,7 +791,7 @@ $(document).ready(function(){initNavTree('_s_x126x_8h_source.html',''); initResi
virtual float getRSSI()
Gets RSSI (Recorded Signal Strength Indicator) of the last received packet.
Definition: PhysicalLayer.cpp:284
virtual int16_t receive(uint8_t *data, size_t len)
Binary receive method. Must be implemented in module class.
Definition: PhysicalLayer.cpp:112
virtual int16_t sleep()
Sets module to sleep.
Definition: PhysicalLayer.cpp:118
-Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:443
+Base class for SX126x series. All derived classes for SX126x (e.g. SX1262 or SX1268) inherit from thi...
Definition: SX126x.h:431
int16_t startChannelScan() override
Interrupt-driven channel activity detection method. DIO1 will be activated when LoRa preamble is dete...
Definition: SX126x.cpp:741
void setPacketSentAction(void(*func)(void))
Sets interrupt service routine to call when a packet is sent.
Definition: SX126x.cpp:502
float getFrequencyError()
Gets frequency error of the latest received packet. WARNING: This functionality is based on SX128x im...
Definition: SX126x.cpp:1350
@@ -871,7 +859,7 @@ $(document).ready(function(){initNavTree('_s_x126x_8h_source.html',''); initResi
void clearPacketReceivedAction()
Clears interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:498
void setPacketReceivedAction(void(*func)(void))
Sets interrupt service routine to call when a packet is received.
Definition: SX126x.cpp:494
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:900
-bool XTAL
Whether the module has an XTAL (true) or TCXO (false). Defaults to false.
Definition: SX126x.h:462
+bool XTAL
Whether the module has an XTAL (true) or TCXO (false). Defaults to false.
Definition: SX126x.h:450
int16_t implicitHeader(size_t len)
Set implicit header mode for future reception/transmission.
Definition: SX126x.cpp:1458
float getSNR()
Gets SNR (Signal to Noise Ratio) of the last received packet. Only available for LoRa modem.
Definition: SX126x.cpp:1334
int16_t setDio2AsRfSwitch(bool enable=true)
Set DIO2 to function as RF switch (default in Semtech example designs).
Definition: SX126x.cpp:1700