RadioLib
Universal wireless communication library for Arduino
Loading...
Searching...
No Matches
RadioLib.h
1#if !defined(_RADIOLIB_H)
2#define _RADIOLIB_H
3
45#include "TypeDef.h"
46#include "Module.h"
47
48#include "Hal.h"
49#if defined(RADIOLIB_BUILD_ARDUINO)
50#include "hal/Arduino/ArduinoHal.h"
51#elif defined(RADIOLIB_BUILD_GENERIC) && defined(ESP_PLATFORM)
52#include "hal/ESP-IDF/EspHal.h"
53#endif
54
55
56// warnings are printed in this file since BuildOpt.h is compiled in multiple places
57
58// check God mode
59#if RADIOLIB_GODMODE
60 #warning "God mode active, I hope it was intentional. Buckle up, lads."
61#endif
62
63// print debug info
64#if RADIOLIB_DEBUG
65 #pragma message(RADIOLIB_INFO)
66#endif
67
68#if CFG_TUD_CDC == 1 || ARDUINO_USB_CDC_ON_BOOT == 1 || defined(USBD_USE_CDC)
69 #warning "Use of USB CDC for debug output is not recommended (might stop on first sleep). Use hardware UART instead."
70#endif
71
72// check unknown/unsupported platform
73#if defined(RADIOLIB_UNKNOWN_PLATFORM)
74 #warning "RadioLib might not be compatible with this Arduino board - check supported platforms at https://github.com/jgromes/RadioLib!"
75#endif
76
77// print warning for low-end platforms
78#if defined(RADIOLIB_LOWEND_PLATFORM)
79 #warning "Low-end platform detected, stability issues are likely!"
80#endif
81
82#include "modules/CC1101/CC1101.h"
83#include "modules/LLCC68/LLCC68.h"
84#include "modules/LR11x0/LR1110.h"
85#include "modules/LR11x0/LR1120.h"
86#include "modules/LR11x0/LR1121.h"
87#include "modules/LR2021/LR2021.h"
88#include "modules/nRF24/nRF24.h"
89#include "modules/RF69/RF69.h"
90#include "modules/RFM2x/RFM22.h"
91#include "modules/RFM2x/RFM23.h"
92#include "modules/Si443x/Si4430.h"
93#include "modules/Si443x/Si4431.h"
94#include "modules/Si443x/Si4432.h"
95#include "modules/SX123x/SX1231.h"
96#include "modules/SX123x/SX1233.h"
97#include "modules/SX126x/SX1261.h"
98#include "modules/SX126x/SX1262.h"
99#include "modules/SX126x/SX1268.h"
100#include "modules/SX126x/STM32WLx.h"
101#include "modules/SX127x/SX1272.h"
102#include "modules/SX127x/SX1273.h"
103#include "modules/SX127x/SX1276.h"
104#include "modules/SX127x/SX1277.h"
105#include "modules/SX127x/SX1278.h"
106#include "modules/SX127x/SX1279.h"
107#include "modules/SX128x/SX1280.h"
108#include "modules/SX128x/SX1281.h"
109#include "modules/SX128x/SX1282.h"
110
111// physical layer protocols
112#include "protocols/PhysicalLayer/PhysicalLayer.h"
113#include "protocols/AFSK/AFSK.h"
114#include "protocols/AX25/AX25.h"
115#include "protocols/Hellschreiber/Hellschreiber.h"
116#include "protocols/Morse/Morse.h"
117#include "protocols/Pager/Pager.h"
118#include "protocols/RTTY/RTTY.h"
119#include "protocols/SSTV/SSTV.h"
120#include "protocols/FSK4/FSK4.h"
121#include "protocols/APRS/APRS.h"
122#include "protocols/ExternalRadio/ExternalRadio.h"
123#include "protocols/Print/Print.h"
124#include "protocols/BellModem/BellModem.h"
125#include "protocols/LoRaWAN/LoRaWAN.h"
126#include "protocols/LoRaWAN/LoRaWANPacMan.h"
127#include "protocols/ADSB/ADSB.h"
128
129// utilities
130#include "utils/CRC.h"
131#include "utils/Cryptography.h"
132
133#endif