362 * Every write to an SPI register using SPI set function will be verified by a subsequent read operation.
363 * This improves reliability, but slightly slows down communication.
364 * Note: Enabled by default.
365 */
366#if !defined(RADIOLIB_SPI_PARANOID)
367 #define RADIOLIB_SPI_PARANOID
368#endif
369
370/*
371 * Uncomment to enable parameter range checking
372 * RadioLib will check provided parameters (such as frequency) against limits determined by the device manufacturer.
373 * It is highly advised to keep this macro defined, removing it will allow invalid values to be set,
374 * possibly leading to bricked module and/or program crashing.
375 * Note: Enabled by default.
376 */
377#if !defined(RADIOLIB_CHECK_PARAMS)
378 #define RADIOLIB_CHECK_PARAMS
379#endif
380
381/*
382 * Uncomment to enable SX127x errata fix
383 * Warning: SX127x errata fix has been reported to cause issues with LoRa bandwidths lower than 62.5 kHz.
384 * It should only be enabled if you really are observing some errata-related issue.
385 * Note: Disabled by default.
386 */
387#if !defined(RADIOLIB_FIX_ERRATA_SX127X)
388//#define RADIOLIB_FIX_ERRATA_SX127X
389#endif
390
391/*
392 * Uncomment to enable god mode - all methods and member variables in all classes will be made public, thus making them accessible from Arduino code.
393 * Warning: Come on, it's called GOD mode - obviously only use this if you know what you're doing.
394 * Failure to heed the above warning may result in bricked module.
395 */
396#if !defined(RADIOLIB_GODMODE)
397//#define RADIOLIB_GODMODE
398#endif
399
400/*
401 * Uncomment to enable low-level hardware access
402 * This will make some hardware methods like SPI get/set accessible from the user sketch - think of it as "god mode lite"
403 * Warning: RadioLib won't stop you from writing invalid stuff into your device, so it's quite easy to brick your module with this.
404 */
405#if !defined(RADIOLIB_LOW_LEVEL)
406//#define RADIOLIB_LOW_LEVEL
407#endif
408
409/*
410 * Uncomment to enable pre-defined modules when using RadioShield.
411 */
412#if !defined(RADIOLIB_RADIOSHIELD)
413//#define RADIOLIB_RADIOSHIELD
414#endif
415
416/*
417 * Uncomment to enable interrupt-based timing control
418 * For details, see https://github.com/jgromes/RadioLib/wiki/Interrupt-Based-Timing
419 */
420#if !defined(RADIOLIB_INTERRUPT_TIMING)
421//#define RADIOLIB_INTERRUPT_TIMING
422#endif
423
424/*
425 * Uncomment to enable static-only memory management: no dynamic allocation will be performed.
426 * Warning: Large static arrays will be created in some methods. It is not advised to send large packets in this mode.
427 */
428#if !defined(RADIOLIB_STATIC_ONLY)
429//#define RADIOLIB_STATIC_ONLY
430#endif
431
432// set the size of static arrays to use
433#if !defined(RADIOLIB_STATIC_ARRAY_SIZE)
434 #define RADIOLIB_STATIC_ARRAY_SIZE (256)
435#endif
436
437// the base address for persistent storage
438// some protocols (e.g. LoRaWAN) require a method
439// to store some data persistently
440// on Arduino, this will use EEPROM, on non-Arduino platform,
441// it will use anything provided by the hardware abstraction layer
442// RadioLib will place these starting at this address