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 
256 #define RADIOLIB_ERR_INVALID_IRQ (-29)
257 
258 // RF69-specific status codes
259 
263 #define RADIOLIB_ERR_INVALID_BIT_RATE (-101)
264 
268 #define RADIOLIB_ERR_INVALID_FREQUENCY_DEVIATION (-102)
269 
273 #define RADIOLIB_ERR_INVALID_BIT_RATE_BW_RATIO (-103)
274 
278 #define RADIOLIB_ERR_INVALID_RX_BANDWIDTH (-104)
279 
283 #define RADIOLIB_ERR_INVALID_SYNC_WORD (-105)
284 
288 #define RADIOLIB_ERR_INVALID_DATA_SHAPING (-106)
289 
293 #define RADIOLIB_ERR_INVALID_MODULATION (-107)
294 
298 #define RADIOLIB_ERR_INVALID_OOK_RSSI_PEAK_TYPE (-108)
299 
303 #define RADIOLIB_ERR_INVALID_BIT_RATE_TOLERANCE_VALUE (-109)
304 
305 // APRS status codes
306 
310 #define RADIOLIB_ERR_INVALID_SYMBOL (-201)
311 
315 #define RADIOLIB_ERR_INVALID_MIC_E_TELEMETRY (-202)
316 
320 #define RADIOLIB_ERR_INVALID_MIC_E_TELEMETRY_LENGTH (-203)
321 
325 #define RADIOLIB_ERR_MIC_E_TELEMETRY_STATUS (-204)
326 
327 // SSDV status codes
328 
332 #define RADIOLIB_ERR_INVALID_SSDV_MODE (-301)
333 
337 #define RADIOLIB_ERR_INVALID_IMAGE_SIZE (-302)
338 
342 #define RADIOLIB_ERR_INVALID_IMAGE_QUALITY (-303)
343 
347 #define RADIOLIB_ERR_INVALID_SUBSAMPLING (-304)
348 
349 // RTTY status codes
350 
354 #define RADIOLIB_ERR_INVALID_RTTY_SHIFT (-401)
355 
359 #define RADIOLIB_ERR_UNSUPPORTED_ENCODING (-402)
360 
361 // nRF24-specific status codes
362 
366 #define RADIOLIB_ERR_INVALID_DATA_RATE (-501)
367 
371 #define RADIOLIB_ERR_INVALID_ADDRESS_WIDTH (-502)
372 
376 #define RADIOLIB_ERR_INVALID_PIPE_NUMBER (-503)
377 
381 #define RADIOLIB_ERR_ACK_NOT_RECEIVED (-504)
382 
383 // CC1101-specific status codes
384 
388 #define RADIOLIB_ERR_INVALID_NUM_BROAD_ADDRS (-601)
389 
390 // SX126x-specific status codes
391 
395 #define RADIOLIB_ERR_INVALID_CRC_CONFIGURATION (-701)
396 
400 #define RADIOLIB_LORA_DETECTED (-702)
401 
405 #define RADIOLIB_ERR_INVALID_TCXO_VOLTAGE (-703)
406 
410 #define RADIOLIB_ERR_INVALID_MODULATION_PARAMETERS (-704)
411 
415 #define RADIOLIB_ERR_SPI_CMD_TIMEOUT (-705)
416 
420 #define RADIOLIB_ERR_SPI_CMD_INVALID (-706)
421 
430 #define RADIOLIB_ERR_SPI_CMD_FAILED (-707)
431 
438 #define RADIOLIB_ERR_INVALID_SLEEP_PERIOD (-708)
439 
445 #define RADIOLIB_ERR_INVALID_RX_PERIOD (-709)
446 
447 // AX.25-specific status codes
448 
454 #define RADIOLIB_ERR_INVALID_CALLSIGN (-801)
455 
461 #define RADIOLIB_ERR_INVALID_NUM_REPEATERS (-802)
462 
468 #define RADIOLIB_ERR_INVALID_REPEATER_CALLSIGN (-803)
469 
470 // SX128x-specific status codes
471 
475 #define RADIOLIB_ERR_RANGING_TIMEOUT (-901)
476 
477 // Pager-specific status codes
478 
482 #define RADIOLIB_ERR_INVALID_PAYLOAD (-1001)
483 
487 #define RADIOLIB_ERR_ADDRESS_NOT_FOUND (-1002)
488 
492 #define RADIOLIB_ERR_INVALID_FUNCTION (-1003)
493 
494 // LoRaWAN-specific status codes
495 
499 #define RADIOLIB_ERR_NETWORK_NOT_JOINED (-1101)
500 
504 #define RADIOLIB_ERR_DOWNLINK_MALFORMED (-1102)
505 
509 #define RADIOLIB_ERR_INVALID_REVISION (-1103)
510 
514 #define RADIOLIB_ERR_INVALID_PORT (-1104)
515 
519 #define RADIOLIB_ERR_NO_RX_WINDOW (-1105)
520 
524 #define RADIOLIB_ERR_NO_CHANNEL_AVAILABLE (-1106)
525 
529 #define RADIOLIB_ERR_INVALID_CID (-1107)
530 
534 #define RADIOLIB_ERR_UPLINK_UNAVAILABLE (-1108)
535 
539 #define RADIOLIB_ERR_COMMAND_QUEUE_FULL (-1109)
540 
544 #define RADIOLIB_ERR_COMMAND_QUEUE_ITEM_NOT_FOUND (-1110)
545 
549 #define RADIOLIB_ERR_JOIN_NONCE_INVALID (-1111)
550 
554 #define RADIOLIB_ERR_N_FCNT_DOWN_INVALID (-1112)
555 
559 #define RADIOLIB_ERR_A_FCNT_DOWN_INVALID (-1113)
560 
564 #define RADIOLIB_ERR_DWELL_TIME_EXCEEDED (-1114)
565 
569 #define RADIOLIB_ERR_CHECKSUM_MISMATCH (-1115)
570 
574 #define RADIOLIB_ERR_NO_JOIN_ACCEPT (-1116)
575 
579 #define RADIOLIB_LORAWAN_SESSION_RESTORED (-1117)
580 
584 #define RADIOLIB_LORAWAN_NEW_SESSION (-1118)
585 
589 #define RADIOLIB_ERR_NONCES_DISCARDED (-1119)
590 
594 #define RADIOLIB_ERR_SESSION_DISCARDED (-1120)
595 
599 #define RADIOLIB_ERR_INVALID_MODE (-1121)
600 
601 // LR11x0-specific status codes
602 
606 #define RADIOLIB_ERR_INVALID_WIFI_TYPE (-1200)
607 
621 typedef unsigned long RadioLibTime_t;
622 
627 typedef uint32_t RadioLibIrqFlags_t;
628 
633 #endif
unsigned long RadioLibTime_t
Type used for durations in RadioLib.
Definition: TypeDef.h:621
uint32_t RadioLibIrqFlags_t
Type used for radio-agnostic IRQ flags. IRQ to enable corresponds to the bit index (RadioLibIrq_t)....
Definition: TypeDef.h:627