diff --git a/_build_opt_8h_source.html b/_build_opt_8h_source.html index ef4fc97d..a60656c6 100644 --- a/_build_opt_8h_source.html +++ b/_build_opt_8h_source.html @@ -451,217 +451,224 @@ $(document).ready(function(){initNavTree('_build_opt_8h_source.html',''); initRe
363  #define RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST (PinStatus)
364  #define RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST (PinStatus)
365 
-
366 #else
-
367  // other Arduino platforms not covered by the above list - this may or may not work
-
368  #define RADIOLIB_PLATFORM "Unknown Arduino"
-
369  #define RADIOLIB_UNKNOWN_PLATFORM
-
370 
-
371 #endif
+
366 #elif defined(ARDUINO_ARCH_SILABS)
+
367  // Silicon Labs Arduino
+
368  #define RADIOLIB_PLATFORM "Arduino Silicon Labs"
+
369  #define RADIOLIB_ARDUINOHAL_PIN_MODE_CAST (PinMode)
+
370  #define RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST (PinStatus)
+
371  #define RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST (PinStatus)
372 
-
373  // set the default values for all macros
-
374  // these will be applied if they were not defined above
-
375  #if !defined(RADIOLIB_NC)
-
376  #define RADIOLIB_NC (0xFFFFFFFF)
-
377  #endif
-
378 
-
379  #if !defined(RADIOLIB_DEFAULT_SPI)
-
380  #define RADIOLIB_DEFAULT_SPI SPI
-
381  #endif
-
382 
-
383  #if !defined(RADIOLIB_DEFAULT_SPI_SETTINGS)
-
384  #define RADIOLIB_DEFAULT_SPI_SETTINGS SPISettings(2000000, MSBFIRST, SPI_MODE0)
-
385  #endif
-
386 
-
387  #if !defined(RADIOLIB_NONVOLATILE)
-
388  #define RADIOLIB_NONVOLATILE PROGMEM
-
389  #endif
-
390 
-
391  #if !defined(RADIOLIB_NONVOLATILE_PTR)
-
392  #define RADIOLIB_NONVOLATILE_PTR PGM_P
-
393  #endif
-
394 
-
395  #if !defined(RADIOLIB_NONVOLATILE_READ_BYTE)
-
396  #define RADIOLIB_NONVOLATILE_READ_BYTE(addr) pgm_read_byte(addr)
-
397  #endif
-
398 
-
399  #if !defined(RADIOLIB_NONVOLATILE_READ_DWORD)
-
400  #define RADIOLIB_NONVOLATILE_READ_DWORD(addr) pgm_read_dword(addr)
-
401  #endif
-
402 
-
403  #if !defined(RADIOLIB_TYPE_ALIAS)
-
404  #define RADIOLIB_TYPE_ALIAS(type, alias) using alias = type;
-
405  #endif
-
406 
-
407  #if !defined(RADIOLIB_ARDUINOHAL_PIN_MODE_CAST)
-
408  #define RADIOLIB_ARDUINOHAL_PIN_MODE_CAST
-
409  #endif
-
410 
-
411  #if !defined(RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST)
-
412  #define RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST
-
413  #endif
-
414 
-
415  #if !defined(RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST)
-
416  #define RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST
-
417  #endif
-
418 
-
419 #else
-
420  // generic non-Arduino platform
-
421  #define RADIOLIB_PLATFORM "Generic"
-
422 
-
423  #define RADIOLIB_NC (0xFFFFFFFF)
-
424  #define RADIOLIB_NONVOLATILE
-
425  #define RADIOLIB_NONVOLATILE_READ_BYTE(addr) (*((uint8_t *)(void *)(addr)))
-
426  #define RADIOLIB_NONVOLATILE_READ_DWORD(addr) (*((uint32_t *)(void *)(addr)))
-
427  #define RADIOLIB_TYPE_ALIAS(type, alias) using alias = type;
-
428 
-
429  #if !defined(RADIOLIB_DEBUG_PORT)
-
430  #define RADIOLIB_DEBUG_PORT stdout
-
431  #endif
-
432 
-
433  #define DEC 10
-
434  #define HEX 16
-
435  #define OCT 8
-
436  #define BIN 2
-
437 
-
438  #include <stdint.h>
+
373 #else
+
374  // other Arduino platforms not covered by the above list - this may or may not work
+
375  #define RADIOLIB_PLATFORM "Unknown Arduino"
+
376  #define RADIOLIB_UNKNOWN_PLATFORM
+
377 
+
378 #endif
+
379 
+
380  // set the default values for all macros
+
381  // these will be applied if they were not defined above
+
382  #if !defined(RADIOLIB_NC)
+
383  #define RADIOLIB_NC (0xFFFFFFFF)
+
384  #endif
+
385 
+
386  #if !defined(RADIOLIB_DEFAULT_SPI)
+
387  #define RADIOLIB_DEFAULT_SPI SPI
+
388  #endif
+
389 
+
390  #if !defined(RADIOLIB_DEFAULT_SPI_SETTINGS)
+
391  #define RADIOLIB_DEFAULT_SPI_SETTINGS SPISettings(2000000, MSBFIRST, SPI_MODE0)
+
392  #endif
+
393 
+
394  #if !defined(RADIOLIB_NONVOLATILE)
+
395  #define RADIOLIB_NONVOLATILE PROGMEM
+
396  #endif
+
397 
+
398  #if !defined(RADIOLIB_NONVOLATILE_PTR)
+
399  #define RADIOLIB_NONVOLATILE_PTR PGM_P
+
400  #endif
+
401 
+
402  #if !defined(RADIOLIB_NONVOLATILE_READ_BYTE)
+
403  #define RADIOLIB_NONVOLATILE_READ_BYTE(addr) pgm_read_byte(addr)
+
404  #endif
+
405 
+
406  #if !defined(RADIOLIB_NONVOLATILE_READ_DWORD)
+
407  #define RADIOLIB_NONVOLATILE_READ_DWORD(addr) pgm_read_dword(addr)
+
408  #endif
+
409 
+
410  #if !defined(RADIOLIB_TYPE_ALIAS)
+
411  #define RADIOLIB_TYPE_ALIAS(type, alias) using alias = type;
+
412  #endif
+
413 
+
414  #if !defined(RADIOLIB_ARDUINOHAL_PIN_MODE_CAST)
+
415  #define RADIOLIB_ARDUINOHAL_PIN_MODE_CAST
+
416  #endif
+
417 
+
418  #if !defined(RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST)
+
419  #define RADIOLIB_ARDUINOHAL_PIN_STATUS_CAST
+
420  #endif
+
421 
+
422  #if !defined(RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST)
+
423  #define RADIOLIB_ARDUINOHAL_INTERRUPT_MODE_CAST
+
424  #endif
+
425 
+
426 #else
+
427  // generic non-Arduino platform
+
428  #define RADIOLIB_PLATFORM "Generic"
+
429 
+
430  #define RADIOLIB_NC (0xFFFFFFFF)
+
431  #define RADIOLIB_NONVOLATILE
+
432  #define RADIOLIB_NONVOLATILE_READ_BYTE(addr) (*((uint8_t *)(void *)(addr)))
+
433  #define RADIOLIB_NONVOLATILE_READ_DWORD(addr) (*((uint32_t *)(void *)(addr)))
+
434  #define RADIOLIB_TYPE_ALIAS(type, alias) using alias = type;
+
435 
+
436  #if !defined(RADIOLIB_DEBUG_PORT)
+
437  #define RADIOLIB_DEBUG_PORT stdout
+
438  #endif
439 
-
440 #endif
-
441 
-
442 // This only compiles on STM32 boards with SUBGHZ module, but also
-
443 // include when generating docs
-
444 #if (!defined(ARDUINO_ARCH_STM32) || !defined(SUBGHZSPI_BASE)) && !defined(DOXYGEN)
-
445  #define RADIOLIB_EXCLUDE_STM32WLX (1)
-
446 #endif
-
447 
-
448 // if verbose assert is enabled, enable basic debug too
-
449 #if RADIOLIB_VERBOSE_ASSERT
-
450  #define RADIOLIB_DEBUG (1)
-
451 #endif
-
452 
-
453 // set the global debug mode flag
-
454 #if RADIOLIB_DEBUG_BASIC || RADIOLIB_DEBUG_PROTOCOL || RADIOLIB_DEBUG_SPI
-
455  #define RADIOLIB_DEBUG (1)
-
456 #else
-
457  #define RADIOLIB_DEBUG (0)
+
440  #define DEC 10
+
441  #define HEX 16
+
442  #define OCT 8
+
443  #define BIN 2
+
444 
+
445  #include <stdint.h>
+
446 
+
447 #endif
+
448 
+
449 // This only compiles on STM32 boards with SUBGHZ module, but also
+
450 // include when generating docs
+
451 #if (!defined(ARDUINO_ARCH_STM32) || !defined(SUBGHZSPI_BASE)) && !defined(DOXYGEN)
+
452  #define RADIOLIB_EXCLUDE_STM32WLX (1)
+
453 #endif
+
454 
+
455 // if verbose assert is enabled, enable basic debug too
+
456 #if RADIOLIB_VERBOSE_ASSERT
+
457  #define RADIOLIB_DEBUG (1)
458 #endif
459 
-
460 #if RADIOLIB_DEBUG
-
461  #if defined(RADIOLIB_BUILD_ARDUINO)
-
462  #define RADIOLIB_DEBUG_PRINT(...) rlb_printf(__VA_ARGS__)
-
463  #define RADIOLIB_DEBUG_PRINTLN(M, ...) rlb_printf(M "\n", ##__VA_ARGS__)
-
464  #define RADIOLIB_DEBUG_PRINT_LVL(LEVEL, M, ...) rlb_printf(LEVEL "" M, ##__VA_ARGS__)
-
465  #define RADIOLIB_DEBUG_PRINTLN_LVL(LEVEL, M, ...) rlb_printf(LEVEL "" M "\n", ##__VA_ARGS__)
+
460 // set the global debug mode flag
+
461 #if RADIOLIB_DEBUG_BASIC || RADIOLIB_DEBUG_PROTOCOL || RADIOLIB_DEBUG_SPI
+
462  #define RADIOLIB_DEBUG (1)
+
463 #else
+
464  #define RADIOLIB_DEBUG (0)
+
465 #endif
466 
-
467  // some platforms do not support printf("%f"), so it has to be done this way
-
468  #define RADIOLIB_DEBUG_PRINT_FLOAT(LEVEL, VAL, DECIMALS) RADIOLIB_DEBUG_PRINT(LEVEL); RADIOLIB_DEBUG_PORT.print(VAL, DECIMALS)
-
469  #else
-
470  #if !defined(RADIOLIB_DEBUG_PRINT)
-
471  #define RADIOLIB_DEBUG_PRINT(...) fprintf(RADIOLIB_DEBUG_PORT, __VA_ARGS__)
-
472  #define RADIOLIB_DEBUG_PRINT_LVL(LEVEL, M, ...) fprintf(RADIOLIB_DEBUG_PORT, LEVEL "" M, ##__VA_ARGS__)
-
473  #endif
-
474  #if !defined(RADIOLIB_DEBUG_PRINTLN)
-
475  #define RADIOLIB_DEBUG_PRINTLN(M, ...) fprintf(RADIOLIB_DEBUG_PORT, M "\n", ##__VA_ARGS__)
-
476  #define RADIOLIB_DEBUG_PRINTLN_LVL(LEVEL, M, ...) fprintf(RADIOLIB_DEBUG_PORT, LEVEL "" M "\n", ##__VA_ARGS__)
-
477  #endif
-
478  #define RADIOLIB_DEBUG_PRINT_FLOAT(LEVEL, VAL, DECIMALS) RADIOLIB_DEBUG_PRINT(LEVEL "%.3f", VAL)
-
479  #endif
-
480 
-
481  #define RADIOLIB_DEBUG_HEXDUMP(LEVEL, ...) rlb_hexdump(LEVEL, __VA_ARGS__)
-
482 #else
-
483  #define RADIOLIB_DEBUG_PRINT(...) {}
-
484  #define RADIOLIB_DEBUG_PRINTLN(...) {}
-
485  #define RADIOLIB_DEBUG_PRINT_FLOAT(VAL, DECIMALS) {}
-
486  #define RADIOLIB_DEBUG_HEXDUMP(...) {}
-
487 #endif
-
488 
-
489 #if RADIOLIB_DEBUG_BASIC
-
490  #define RADIOLIB_DEBUG_BASIC_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_DBG: ", __VA_ARGS__)
-
491  #define RADIOLIB_DEBUG_BASIC_PRINT_NOTAG(...) RADIOLIB_DEBUG_PRINT_LVL("", __VA_ARGS__)
-
492  #define RADIOLIB_DEBUG_BASIC_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_DBG: ", __VA_ARGS__)
-
493  #define RADIOLIB_DEBUG_BASIC_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_DBG: ", __VA_ARGS__);
-
494  #define RADIOLIB_DEBUG_BASIC_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_DBG: ", __VA_ARGS__);
-
495 #else
-
496  #define RADIOLIB_DEBUG_BASIC_PRINT(...) {}
-
497  #define RADIOLIB_DEBUG_BASIC_PRINT_NOTAG(...) {}
-
498  #define RADIOLIB_DEBUG_BASIC_PRINTLN(...) {}
-
499  #define RADIOLIB_DEBUG_BASIC_PRINT_FLOAT(...) {}
-
500  #define RADIOLIB_DEBUG_BASIC_HEXDUMP(...) {}
-
501 #endif
-
502 
-
503 #if RADIOLIB_DEBUG_PROTOCOL
-
504  #define RADIOLIB_DEBUG_PROTOCOL_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_PRO: ", __VA_ARGS__)
-
505  #define RADIOLIB_DEBUG_PROTOCOL_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_PRO: ", __VA_ARGS__)
-
506  #define RADIOLIB_DEBUG_PROTOCOL_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_PRO: ", __VA_ARGS__);
-
507  #define RADIOLIB_DEBUG_PROTOCOL_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_PRO: ", __VA_ARGS__);
-
508 #else
-
509  #define RADIOLIB_DEBUG_PROTOCOL_PRINT(...) {}
-
510  #define RADIOLIB_DEBUG_PROTOCOL_PRINTLN(...) {}
-
511  #define RADIOLIB_DEBUG_PROTOCOL_PRINT_FLOAT(...) {}
-
512  #define RADIOLIB_DEBUG_PROTOCOL_HEXDUMP(...) {}
-
513 #endif
-
514 
-
515 #if RADIOLIB_DEBUG_SPI
-
516  #define RADIOLIB_DEBUG_SPI_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_SPI: ", __VA_ARGS__)
-
517  #define RADIOLIB_DEBUG_SPI_PRINT_NOTAG(...) RADIOLIB_DEBUG_PRINT_LVL("", __VA_ARGS__)
-
518  #define RADIOLIB_DEBUG_SPI_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_SPI: ", __VA_ARGS__)
-
519  #define RADIOLIB_DEBUG_SPI_PRINTLN_NOTAG(...) RADIOLIB_DEBUG_PRINTLN_LVL("", __VA_ARGS__)
-
520  #define RADIOLIB_DEBUG_SPI_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_SPI: ", __VA_ARGS__);
-
521  #define RADIOLIB_DEBUG_SPI_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_SPI: ", __VA_ARGS__);
-
522 #else
-
523  #define RADIOLIB_DEBUG_SPI_PRINT(...) {}
-
524  #define RADIOLIB_DEBUG_SPI_PRINT_NOTAG(...) {}
-
525  #define RADIOLIB_DEBUG_SPI_PRINTLN(...) {}
-
526  #define RADIOLIB_DEBUG_SPI_PRINTLN_NOTAG(...) {}
-
527  #define RADIOLIB_DEBUG_SPI_PRINT_FLOAT(...) {}
-
528  #define RADIOLIB_DEBUG_SPI_HEXDUMP(...) {}
-
529 #endif
-
530 
-
531 // debug info strings
-
532 #define RADIOLIB_VALUE_TO_STRING(x) #x
-
533 #define RADIOLIB_VALUE(x) RADIOLIB_VALUE_TO_STRING(x)
-
534 
-
535 #define RADIOLIB_INFO "\nRadioLib Info\nVersion: \"" \
-
536  RADIOLIB_VALUE(RADIOLIB_VERSION_MAJOR) "." \
-
537  RADIOLIB_VALUE(RADIOLIB_VERSION_MINOR) "." \
-
538  RADIOLIB_VALUE(RADIOLIB_VERSION_PATCH) "." \
-
539  RADIOLIB_VALUE(RADIOLIB_VERSION_EXTRA) "\"\n" \
-
540  "Platform: " RADIOLIB_VALUE(RADIOLIB_PLATFORM) "\n" \
-
541  "Compiled: " RADIOLIB_VALUE(__DATE__) " " RADIOLIB_VALUE(__TIME__)
-
542 
-
548 #if RADIOLIB_VERBOSE_ASSERT
-
549 #define RADIOLIB_ASSERT(STATEVAR) { if((STATEVAR) != RADIOLIB_ERR_NONE) { RADIOLIB_DEBUG_BASIC_PRINTLN("%d at %s:%d", STATEVAR, __FILE__, __LINE__); return(STATEVAR); } }
-
550 #define RADIOLIB_ASSERT_PTR(PTR) { if((PTR) == NULL) { RADIOLIB_DEBUG_BASIC_PRINTLN("NULL at %s:%d", __FILE__, __LINE__); return(RADIOLIB_ERR_MEMORY_ALLOCATION_FAILED); } }
-
551 #else
-
552 #define RADIOLIB_ASSERT(STATEVAR) { if((STATEVAR) != RADIOLIB_ERR_NONE) { return(STATEVAR); } }
-
553 #define RADIOLIB_ASSERT_PTR(PTR) { if((PTR) == NULL) { return(RADIOLIB_ERR_MEMORY_ALLOCATION_FAILED); } }
-
554 #endif
-
555 
-
559 #if RADIOLIB_CHECK_PARAMS
-
560  #define RADIOLIB_CHECK_RANGE(VAR, MIN, MAX, ERR) { if(!(((VAR) >= (MIN)) && ((VAR) <= (MAX)))) { return(ERR); } }
-
561 #else
-
562  #define RADIOLIB_CHECK_RANGE(VAR, MIN, MAX, ERR) {}
-
563 #endif
-
564 
-
565 #if RADIOLIB_FIX_ERRATA_SX127X
-
566  #define RADIOLIB_ERRATA_SX127X(...) { errataFix(__VA_ARGS__); }
-
567 #else
-
568  #define RADIOLIB_ERRATA_SX127X(...) {}
-
569 #endif
-
570 
-
571 // these macros are usually defined by Arduino, but some platforms undef them, so its safer to use our own
-
572 #define RADIOLIB_MIN(a,b) ((a)<(b)?(a):(b))
-
573 #define RADIOLIB_MAX(a,b) ((a)>(b)?(a):(b))
-
574 #define RADIOLIB_ABS(x) ((x)>0?(x):-(x))
-
575 
-
576 // version definitions
-
577 #define RADIOLIB_VERSION_MAJOR 7
-
578 #define RADIOLIB_VERSION_MINOR 1
-
579 #define RADIOLIB_VERSION_PATCH 0
-
580 #define RADIOLIB_VERSION_EXTRA 0
-
581 
-
582 #define RADIOLIB_VERSION (((RADIOLIB_VERSION_MAJOR) << 24) | ((RADIOLIB_VERSION_MINOR) << 16) | ((RADIOLIB_VERSION_PATCH) << 8) | (RADIOLIB_VERSION_EXTRA))
-
583 
-
584 #endif
+
467 #if RADIOLIB_DEBUG
+
468  #if defined(RADIOLIB_BUILD_ARDUINO)
+
469  #define RADIOLIB_DEBUG_PRINT(...) rlb_printf(__VA_ARGS__)
+
470  #define RADIOLIB_DEBUG_PRINTLN(M, ...) rlb_printf(M "\n", ##__VA_ARGS__)
+
471  #define RADIOLIB_DEBUG_PRINT_LVL(LEVEL, M, ...) rlb_printf(LEVEL "" M, ##__VA_ARGS__)
+
472  #define RADIOLIB_DEBUG_PRINTLN_LVL(LEVEL, M, ...) rlb_printf(LEVEL "" M "\n", ##__VA_ARGS__)
+
473 
+
474  // some platforms do not support printf("%f"), so it has to be done this way
+
475  #define RADIOLIB_DEBUG_PRINT_FLOAT(LEVEL, VAL, DECIMALS) RADIOLIB_DEBUG_PRINT(LEVEL); RADIOLIB_DEBUG_PORT.print(VAL, DECIMALS)
+
476  #else
+
477  #if !defined(RADIOLIB_DEBUG_PRINT)
+
478  #define RADIOLIB_DEBUG_PRINT(...) fprintf(RADIOLIB_DEBUG_PORT, __VA_ARGS__)
+
479  #define RADIOLIB_DEBUG_PRINT_LVL(LEVEL, M, ...) fprintf(RADIOLIB_DEBUG_PORT, LEVEL "" M, ##__VA_ARGS__)
+
480  #endif
+
481  #if !defined(RADIOLIB_DEBUG_PRINTLN)
+
482  #define RADIOLIB_DEBUG_PRINTLN(M, ...) fprintf(RADIOLIB_DEBUG_PORT, M "\n", ##__VA_ARGS__)
+
483  #define RADIOLIB_DEBUG_PRINTLN_LVL(LEVEL, M, ...) fprintf(RADIOLIB_DEBUG_PORT, LEVEL "" M "\n", ##__VA_ARGS__)
+
484  #endif
+
485  #define RADIOLIB_DEBUG_PRINT_FLOAT(LEVEL, VAL, DECIMALS) RADIOLIB_DEBUG_PRINT(LEVEL "%.3f", VAL)
+
486  #endif
+
487 
+
488  #define RADIOLIB_DEBUG_HEXDUMP(LEVEL, ...) rlb_hexdump(LEVEL, __VA_ARGS__)
+
489 #else
+
490  #define RADIOLIB_DEBUG_PRINT(...) {}
+
491  #define RADIOLIB_DEBUG_PRINTLN(...) {}
+
492  #define RADIOLIB_DEBUG_PRINT_FLOAT(VAL, DECIMALS) {}
+
493  #define RADIOLIB_DEBUG_HEXDUMP(...) {}
+
494 #endif
+
495 
+
496 #if RADIOLIB_DEBUG_BASIC
+
497  #define RADIOLIB_DEBUG_BASIC_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_DBG: ", __VA_ARGS__)
+
498  #define RADIOLIB_DEBUG_BASIC_PRINT_NOTAG(...) RADIOLIB_DEBUG_PRINT_LVL("", __VA_ARGS__)
+
499  #define RADIOLIB_DEBUG_BASIC_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_DBG: ", __VA_ARGS__)
+
500  #define RADIOLIB_DEBUG_BASIC_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_DBG: ", __VA_ARGS__);
+
501  #define RADIOLIB_DEBUG_BASIC_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_DBG: ", __VA_ARGS__);
+
502 #else
+
503  #define RADIOLIB_DEBUG_BASIC_PRINT(...) {}
+
504  #define RADIOLIB_DEBUG_BASIC_PRINT_NOTAG(...) {}
+
505  #define RADIOLIB_DEBUG_BASIC_PRINTLN(...) {}
+
506  #define RADIOLIB_DEBUG_BASIC_PRINT_FLOAT(...) {}
+
507  #define RADIOLIB_DEBUG_BASIC_HEXDUMP(...) {}
+
508 #endif
+
509 
+
510 #if RADIOLIB_DEBUG_PROTOCOL
+
511  #define RADIOLIB_DEBUG_PROTOCOL_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_PRO: ", __VA_ARGS__)
+
512  #define RADIOLIB_DEBUG_PROTOCOL_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_PRO: ", __VA_ARGS__)
+
513  #define RADIOLIB_DEBUG_PROTOCOL_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_PRO: ", __VA_ARGS__);
+
514  #define RADIOLIB_DEBUG_PROTOCOL_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_PRO: ", __VA_ARGS__);
+
515 #else
+
516  #define RADIOLIB_DEBUG_PROTOCOL_PRINT(...) {}
+
517  #define RADIOLIB_DEBUG_PROTOCOL_PRINTLN(...) {}
+
518  #define RADIOLIB_DEBUG_PROTOCOL_PRINT_FLOAT(...) {}
+
519  #define RADIOLIB_DEBUG_PROTOCOL_HEXDUMP(...) {}
+
520 #endif
+
521 
+
522 #if RADIOLIB_DEBUG_SPI
+
523  #define RADIOLIB_DEBUG_SPI_PRINT(...) RADIOLIB_DEBUG_PRINT_LVL("RLB_SPI: ", __VA_ARGS__)
+
524  #define RADIOLIB_DEBUG_SPI_PRINT_NOTAG(...) RADIOLIB_DEBUG_PRINT_LVL("", __VA_ARGS__)
+
525  #define RADIOLIB_DEBUG_SPI_PRINTLN(...) RADIOLIB_DEBUG_PRINTLN_LVL("RLB_SPI: ", __VA_ARGS__)
+
526  #define RADIOLIB_DEBUG_SPI_PRINTLN_NOTAG(...) RADIOLIB_DEBUG_PRINTLN_LVL("", __VA_ARGS__)
+
527  #define RADIOLIB_DEBUG_SPI_PRINT_FLOAT(...) RADIOLIB_DEBUG_PRINT_FLOAT("RLB_SPI: ", __VA_ARGS__);
+
528  #define RADIOLIB_DEBUG_SPI_HEXDUMP(...) RADIOLIB_DEBUG_HEXDUMP("RLB_SPI: ", __VA_ARGS__);
+
529 #else
+
530  #define RADIOLIB_DEBUG_SPI_PRINT(...) {}
+
531  #define RADIOLIB_DEBUG_SPI_PRINT_NOTAG(...) {}
+
532  #define RADIOLIB_DEBUG_SPI_PRINTLN(...) {}
+
533  #define RADIOLIB_DEBUG_SPI_PRINTLN_NOTAG(...) {}
+
534  #define RADIOLIB_DEBUG_SPI_PRINT_FLOAT(...) {}
+
535  #define RADIOLIB_DEBUG_SPI_HEXDUMP(...) {}
+
536 #endif
+
537 
+
538 // debug info strings
+
539 #define RADIOLIB_VALUE_TO_STRING(x) #x
+
540 #define RADIOLIB_VALUE(x) RADIOLIB_VALUE_TO_STRING(x)
+
541 
+
542 #define RADIOLIB_INFO "\nRadioLib Info\nVersion: \"" \
+
543  RADIOLIB_VALUE(RADIOLIB_VERSION_MAJOR) "." \
+
544  RADIOLIB_VALUE(RADIOLIB_VERSION_MINOR) "." \
+
545  RADIOLIB_VALUE(RADIOLIB_VERSION_PATCH) "." \
+
546  RADIOLIB_VALUE(RADIOLIB_VERSION_EXTRA) "\"\n" \
+
547  "Platform: " RADIOLIB_VALUE(RADIOLIB_PLATFORM) "\n" \
+
548  "Compiled: " RADIOLIB_VALUE(__DATE__) " " RADIOLIB_VALUE(__TIME__)
+
549 
+
555 #if RADIOLIB_VERBOSE_ASSERT
+
556 #define RADIOLIB_ASSERT(STATEVAR) { if((STATEVAR) != RADIOLIB_ERR_NONE) { RADIOLIB_DEBUG_BASIC_PRINTLN("%d at %s:%d", STATEVAR, __FILE__, __LINE__); return(STATEVAR); } }
+
557 #define RADIOLIB_ASSERT_PTR(PTR) { if((PTR) == NULL) { RADIOLIB_DEBUG_BASIC_PRINTLN("NULL at %s:%d", __FILE__, __LINE__); return(RADIOLIB_ERR_MEMORY_ALLOCATION_FAILED); } }
+
558 #else
+
559 #define RADIOLIB_ASSERT(STATEVAR) { if((STATEVAR) != RADIOLIB_ERR_NONE) { return(STATEVAR); } }
+
560 #define RADIOLIB_ASSERT_PTR(PTR) { if((PTR) == NULL) { return(RADIOLIB_ERR_MEMORY_ALLOCATION_FAILED); } }
+
561 #endif
+
562 
+
566 #if RADIOLIB_CHECK_PARAMS
+
567  #define RADIOLIB_CHECK_RANGE(VAR, MIN, MAX, ERR) { if(!(((VAR) >= (MIN)) && ((VAR) <= (MAX)))) { return(ERR); } }
+
568 #else
+
569  #define RADIOLIB_CHECK_RANGE(VAR, MIN, MAX, ERR) {}
+
570 #endif
+
571 
+
572 #if RADIOLIB_FIX_ERRATA_SX127X
+
573  #define RADIOLIB_ERRATA_SX127X(...) { errataFix(__VA_ARGS__); }
+
574 #else
+
575  #define RADIOLIB_ERRATA_SX127X(...) {}
+
576 #endif
+
577 
+
578 // these macros are usually defined by Arduino, but some platforms undef them, so its safer to use our own
+
579 #define RADIOLIB_MIN(a,b) ((a)<(b)?(a):(b))
+
580 #define RADIOLIB_MAX(a,b) ((a)>(b)?(a):(b))
+
581 #define RADIOLIB_ABS(x) ((x)>0?(x):-(x))
+
582 
+
583 // version definitions
+
584 #define RADIOLIB_VERSION_MAJOR 7
+
585 #define RADIOLIB_VERSION_MINOR 1
+
586 #define RADIOLIB_VERSION_PATCH 0
+
587 #define RADIOLIB_VERSION_EXTRA 0
+
588 
+
589 #define RADIOLIB_VERSION (((RADIOLIB_VERSION_MAJOR) << 24) | ((RADIOLIB_VERSION_MINOR) << 16) | ((RADIOLIB_VERSION_PATCH) << 8) | (RADIOLIB_VERSION_EXTRA))
+
590 
+
591 #endif
RadioLibTime_t
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition: TypeDef.h:642