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