I made a fork of a generic library that was developed with support for RFM95 LoRa module that I found online. I Made a few changes and made it compatible with hardware limitations of the MAX32620FTHR and MAX32630FTHR module.
Dependents: MAX326xxFTHR_LoRa_RFM95 MAX326xxFTHR_LoRa_PingPong MAX326xxFTHR_RFM95_LoRa_PingPong MAX326xxFTHR_LoRa_RFM95_PingPong_Example ... more
Fork of SX1276GenericLib by
Diff: sx1276/sx1276.h
- Revision:
- 39:706c32eda7e7
- Parent:
- 38:d9189d958db8
- Child:
- 42:72deced1a4c4
diff -r d9189d958db8 -r 706c32eda7e7 sx1276/sx1276.h --- a/sx1276/sx1276.h Sun May 07 18:09:10 2017 +0200 +++ b/sx1276/sx1276.h Sun May 07 20:26:02 2017 +0200 @@ -26,9 +26,6 @@ #include "./registers/sx1276Regs-Fsk.h" #include "./registers/sx1276Regs-LoRa.h" -class SX1276; -class SX1276Generic; - /*! @@ -63,13 +60,6 @@ #define RF_MID_BAND_THRESH 525000000 -#if 0 -#ifdef TARGET_STM32L0 - #define MURATA_ANT_SWITCH 1 // STM B-L072Z-LRWAN1 device -#elif TARGET_STM32L4 - #define RFM95_MODULE 1 // RFM95 modules are SX1276MB1LAS compatible -#endif -#endif /*! @@ -82,7 +72,6 @@ }FskBandwidth_t; - /*! * Radio registers definition */ @@ -93,10 +82,25 @@ uint8_t Value; }RadioRegisters_t; + +typedef enum { + RXTimeout, + TXTimeout, + RXTimeoutSyncWorld +} Timeout_t; + /*! - * Hardware IO IRQ callback function definition + * Type of the supported board. [SX1276MB1MAS / SX1276MB1LAS] */ -typedef void ( SX1276::*DioIrqHandler )( void ); +typedef enum BoardType +{ + SX1276MB1MAS = 0, + SX1276MB1LAS, + RFM95_SX1276, + MURATA_SX1276, + UNKNOWN +}BoardType_t; + typedef enum { @@ -158,10 +162,16 @@ uint8_t *rxtxBuffer; /*! + * Hardware IO IRQ callback function definition + */ + typedef void ( SX1276::*DioIrqHandler )( void ); + + /*! * Hardware DIO IRQ functions */ DioIrqHandler *dioIrq; + /*! * Tx and Rx timers */ @@ -474,6 +484,7 @@ //------------------------------------------------------------------------- // Board relative functions //------------------------------------------------------------------------- + static const RadioRegisters_t RadioRegsInit[]; private: