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