RadioLib
Universal wireless communication library for Arduino
TypeDef.h
1 #if !defined(_RADIOLIB_TYPES_H)
2 #define _RADIOLIB_TYPES_H
3 
4 // user build options may override the default
5 #include "BuildOptUser.h"
6 #include "BuildOpt.h"
7 
17 #define RADIOLIB_SHAPING_NONE (0x00)
18 
22 #define RADIOLIB_SHAPING_0_3 (0x01)
23 
27 #define RADIOLIB_SHAPING_0_5 (0x02)
28 
32 #define RADIOLIB_SHAPING_0_7 (0x03)
33 
37 #define RADIOLIB_SHAPING_1_0 (0x04)
38 
52 #define RADIOLIB_ENCODING_NRZ (0x00)
53 
57 #define RADIOLIB_ENCODING_MANCHESTER (0x01)
58 
62 #define RADIOLIB_ENCODING_WHITENING (0x02)
63 
77 #define RADIOLIB_STANDBY_DEFAULT (0x00)
78 
82 #define RADIOLIB_STANDBY_WARM (0x01)
83 
87 #define RADIOLIB_STANDBY_COLD (0x02)
88 
99 // common status codes
100 
104 #define RADIOLIB_ERR_NONE (0)
105 
110 #define RADIOLIB_ERR_UNKNOWN (-1)
111 
112 // SX127x/RFM9x status codes
113 
118 #define RADIOLIB_ERR_CHIP_NOT_FOUND (-2)
119 
123 #define RADIOLIB_ERR_MEMORY_ALLOCATION_FAILED (-3)
124 
128 #define RADIOLIB_ERR_PACKET_TOO_LONG (-4)
129 
133 #define RADIOLIB_ERR_TX_TIMEOUT (-5)
134 
138 #define RADIOLIB_ERR_RX_TIMEOUT (-6)
139 
144 #define RADIOLIB_ERR_CRC_MISMATCH (-7)
145 
149 #define RADIOLIB_ERR_INVALID_BANDWIDTH (-8)
150 
154 #define RADIOLIB_ERR_INVALID_SPREADING_FACTOR (-9)
155 
159 #define RADIOLIB_ERR_INVALID_CODING_RATE (-10)
160 
164 #define RADIOLIB_ERR_INVALID_BIT_RANGE (-11)
165 
169 #define RADIOLIB_ERR_INVALID_FREQUENCY (-12)
170 
174 #define RADIOLIB_ERR_INVALID_OUTPUT_POWER (-13)
175 
180 #define RADIOLIB_PREAMBLE_DETECTED (-14)
181 
185 #define RADIOLIB_CHANNEL_FREE (-15)
186 
190 #define RADIOLIB_ERR_SPI_WRITE_FAILED (-16)
191 
195 #define RADIOLIB_ERR_INVALID_CURRENT_LIMIT (-17)
196 
200 #define RADIOLIB_ERR_INVALID_PREAMBLE_LENGTH (-18)
201 
205 #define RADIOLIB_ERR_INVALID_GAIN (-19)
206 
211 #define RADIOLIB_ERR_WRONG_MODEM (-20)
212 
216 #define RADIOLIB_ERR_INVALID_NUM_SAMPLES (-21)
217 
221 #define RADIOLIB_ERR_INVALID_RSSI_OFFSET (-22)
222 
226 #define RADIOLIB_ERR_INVALID_ENCODING (-23)
227 
231 #define RADIOLIB_ERR_LORA_HEADER_DAMAGED (-24)
232 
236 #define RADIOLIB_ERR_UNSUPPORTED (-25)
237 
241 #define RADIOLIB_ERR_INVALID_DIO_PIN (-26)
242 
246 #define RADIOLIB_ERR_INVALID_RSSI_THRESHOLD (-27)
247 
251 #define RADIOLIB_ERR_NULL_POINTER (-28)
252 
253 // RF69-specific status codes
254 
258 #define RADIOLIB_ERR_INVALID_BIT_RATE (-101)
259 
263 #define RADIOLIB_ERR_INVALID_FREQUENCY_DEVIATION (-102)
264 
268 #define RADIOLIB_ERR_INVALID_BIT_RATE_BW_RATIO (-103)
269 
273 #define RADIOLIB_ERR_INVALID_RX_BANDWIDTH (-104)
274 
278 #define RADIOLIB_ERR_INVALID_SYNC_WORD (-105)
279 
283 #define RADIOLIB_ERR_INVALID_DATA_SHAPING (-106)
284 
288 #define RADIOLIB_ERR_INVALID_MODULATION (-107)
289 
293 #define RADIOLIB_ERR_INVALID_OOK_RSSI_PEAK_TYPE (-108)
294 
298 #define RADIOLIB_ERR_INVALID_BIT_RATE_TOLERANCE_VALUE (-109)
299 
300 // APRS status codes
301 
305 #define RADIOLIB_ERR_INVALID_SYMBOL (-201)
306 
310 #define RADIOLIB_ERR_INVALID_MIC_E_TELEMETRY (-202)
311 
315 #define RADIOLIB_ERR_INVALID_MIC_E_TELEMETRY_LENGTH (-203)
316 
320 #define RADIOLIB_ERR_MIC_E_TELEMETRY_STATUS (-204)
321 
322 // SSDV status codes
323 
327 #define RADIOLIB_ERR_INVALID_SSDV_MODE (-301)
328 
332 #define RADIOLIB_ERR_INVALID_IMAGE_SIZE (-302)
333 
337 #define RADIOLIB_ERR_INVALID_IMAGE_QUALITY (-303)
338 
342 #define RADIOLIB_ERR_INVALID_SUBSAMPLING (-304)
343 
344 // RTTY status codes
345 
349 #define RADIOLIB_ERR_INVALID_RTTY_SHIFT (-401)
350 
354 #define RADIOLIB_ERR_UNSUPPORTED_ENCODING (-402)
355 
356 // nRF24-specific status codes
357 
361 #define RADIOLIB_ERR_INVALID_DATA_RATE (-501)
362 
366 #define RADIOLIB_ERR_INVALID_ADDRESS_WIDTH (-502)
367 
371 #define RADIOLIB_ERR_INVALID_PIPE_NUMBER (-503)
372 
376 #define RADIOLIB_ERR_ACK_NOT_RECEIVED (-504)
377 
378 // CC1101-specific status codes
379 
383 #define RADIOLIB_ERR_INVALID_NUM_BROAD_ADDRS (-601)
384 
385 // SX126x-specific status codes
386 
390 #define RADIOLIB_ERR_INVALID_CRC_CONFIGURATION (-701)
391 
395 #define RADIOLIB_LORA_DETECTED (-702)
396 
400 #define RADIOLIB_ERR_INVALID_TCXO_VOLTAGE (-703)
401 
405 #define RADIOLIB_ERR_INVALID_MODULATION_PARAMETERS (-704)
406 
410 #define RADIOLIB_ERR_SPI_CMD_TIMEOUT (-705)
411 
415 #define RADIOLIB_ERR_SPI_CMD_INVALID (-706)
416 
425 #define RADIOLIB_ERR_SPI_CMD_FAILED (-707)
426 
433 #define RADIOLIB_ERR_INVALID_SLEEP_PERIOD (-708)
434 
440 #define RADIOLIB_ERR_INVALID_RX_PERIOD (-709)
441 
442 // AX.25-specific status codes
443 
449 #define RADIOLIB_ERR_INVALID_CALLSIGN (-801)
450 
456 #define RADIOLIB_ERR_INVALID_NUM_REPEATERS (-802)
457 
463 #define RADIOLIB_ERR_INVALID_REPEATER_CALLSIGN (-803)
464 
465 // SX128x-specific status codes
466 
470 #define RADIOLIB_ERR_RANGING_TIMEOUT (-901)
471 
472 // Pager-specific status codes
473 
477 #define RADIOLIB_ERR_INVALID_PAYLOAD (-1001)
478 
482 #define RADIOLIB_ERR_ADDRESS_NOT_FOUND (-1002)
483 
487 #define RADIOLIB_ERR_INVALID_FUNCTION (-1003)
488 
489 // LoRaWAN-specific status codes
490 
494 #define RADIOLIB_ERR_NETWORK_NOT_JOINED (-1101)
495 
499 #define RADIOLIB_ERR_DOWNLINK_MALFORMED (-1102)
500 
504 #define RADIOLIB_ERR_INVALID_REVISION (-1103)
505 
509 #define RADIOLIB_ERR_INVALID_PORT (-1104)
510 
514 #define RADIOLIB_ERR_NO_RX_WINDOW (-1105)
515 
519 #define RADIOLIB_ERR_NO_CHANNEL_AVAILABLE (-1106)
520 
524 #define RADIOLIB_ERR_INVALID_CID (-1107)
525 
529 #define RADIOLIB_ERR_UPLINK_UNAVAILABLE (-1108)
530 
534 #define RADIOLIB_ERR_COMMAND_QUEUE_FULL (-1109)
535 
539 #define RADIOLIB_ERR_COMMAND_QUEUE_ITEM_NOT_FOUND (-1110)
540 
544 #define RADIOLIB_ERR_JOIN_NONCE_INVALID (-1111)
545 
549 #define RADIOLIB_ERR_N_FCNT_DOWN_INVALID (-1112)
550 
554 #define RADIOLIB_ERR_A_FCNT_DOWN_INVALID (-1113)
555 
559 #define RADIOLIB_ERR_DWELL_TIME_EXCEEDED (-1114)
560 
564 #define RADIOLIB_ERR_CHECKSUM_MISMATCH (-1115)
565 
569 #define RADIOLIB_LORAWAN_NO_DOWNLINK (-1116)
570 
574 #define RADIOLIB_LORAWAN_SESSION_RESTORED (-1117)
575 
579 #define RADIOLIB_LORAWAN_NEW_SESSION (-1118)
580 
584 #define RADIOLIB_LORAWAN_NONCES_DISCARDED (-1119)
585 
589 #define RADIOLIB_LORAWAN_SESSION_DISCARDED (-1120)
590 
594 #define RADIOLIB_LORAWAN_INVALID_MODE (-1121)
595 
596 // LR11x0-specific status codes
597 
601 #define RADIOLIB_ERR_INVALID_WIFI_TYPE (-1200)
602 
616 typedef unsigned long RadioLibTime_t;
617 
622 typedef uint32_t RadioLibIrqFlags_t;
623 
628 #endif
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition: TypeDef.h:616
uint32_t RadioLibIrqFlags_t
Type used for radio-agnostic IRQ flags. IRQ to enable corresponds to the bit index (RadioLibIrq_t)....
Definition: TypeDef.h:622