343 * Every write to an SPI register using SPI set function will be verified by a subsequent read operation.
344 * This improves reliablility, but slightly slows down communication.
345 * Note: Enabled by default.
346 */
347#if !defined(RADIOLIB_SPI_PARANOID)
348 #define RADIOLIB_SPI_PARANOID
349#endif
350
351/*
352 * Uncomment to enable parameter range checking
353 * RadioLib will check provided parameters (such as frequency) against limits determined by the device manufacturer.
354 * It is highly advised to keep this macro defined, removing it will allow invalid values to be set,
355 * possibly leading to bricked module and/or program crashing.
356 * Note: Enabled by default.
357 */
358#if !defined(RADIOLIB_CHECK_PARAMS)
359 #define RADIOLIB_CHECK_PARAMS
360#endif
361
362/*
363 * Uncomment to enable SX127x errata fix
364 * Warning: SX127x errata fix has been reported to cause issues with LoRa bandwidths lower than 62.5 kHz.
365 * It should only be enabled if you really are observing some errata-related issue.
366 * Note: Disabled by default.
367 */
368#if !defined(RADIOLIB_FIX_ERRATA_SX127X)
369//#define RADIOLIB_FIX_ERRATA_SX127X
370#endif
371
372/*
373 * Uncomment to enable god mode - all methods and member variables in all classes will be made public, thus making them accessible from Arduino code.
374 * Warning: Come on, it's called GOD mode - obviously only use this if you know what you're doing.
375 * Failure to heed the above warning may result in bricked module.
376 */
377#if !defined(RADIOLIB_GODMODE)
378//#define RADIOLIB_GODMODE
379#endif
380
381/*
382 * Uncomment to enable low-level hardware access
383 * This will make some hardware methods like SPI get/set accessible from the user sketch - think of it as "god mode lite"
384 * Warning: RadioLib won't stop you from writing invalid stuff into your device, so it's quite easy to brick your module with this.
385 */
386#if !defined(RADIOLIB_LOW_LEVEL)
387//#define RADIOLIB_LOW_LEVEL
388#endif
389
390/*
391 * Uncomment to enable pre-defined modules when using RadioShield.
392 */
393#if !defined(RADIOLIB_RADIOSHIELD)
394//#define RADIOLIB_RADIOSHIELD
395#endif
396
397/*
398 * Uncomment to enable interrupt-based timing control
399 * For details, see https://github.com/jgromes/RadioLib/wiki/Interrupt-Based-Timing
400 */
401#if !defined(RADIOLIB_INTERRUPT_TIMING)
402//#define RADIOLIB_INTERRUPT_TIMING
403#endif
404
405/*
406 * Uncomment to enable static-only memory management: no dynamic allocation will be performed.
407 * Warning: Large static arrays will be created in some methods. It is not advised to send large packets in this mode.
408 */
409#if !defined(RADIOLIB_STATIC_ONLY)
410//#define RADIOLIB_STATIC_ONLY
411#endif
412
413// set the size of static arrays to use
414#if !defined(RADIOLIB_STATIC_ARRAY_SIZE)
415 #define RADIOLIB_STATIC_ARRAY_SIZE (256)
416#endif
417
418// This only compiles on STM32 boards with SUBGHZ module, but also