SX1272Lib updated in order to be RTOS aware

Fork of SX1272Lib by Semtech

Since Semtech original SX1272 library used InterruptIn and Timout mbed-os classes, whose ISRs are not allowed to lock RTOS mutexes, any SPI-related operation was doomed to fail. Indeed, SPI transactions functions are always nested inside a spi-level mutex lock/unlock pair in order to provide for thread access safety. A typical case occurs for example when radio is set to sleep state after a RX timeout.

This fork solves such problems by mean of a EventQueue/Thread pair, where any InterruptIn and Timeout ISRs actually enqueue callback calls.

Take a look at usage example at https://github.com/maiorfi/mbedos_lablet_lora_1

History

Fix debug default tip

2018-03-03, by Lorenzo Maiorfi [Sat, 03 Mar 2018 18:07:30 +0100] rev 11

Fix debug


Radio Events event queue and related thread should now be passed externally (e.g. by main()) as pointers. This frees user code from locking/unlocking through mutex in order to implement an async state machine interlaced with radio events

2018-02-24, by Lorenzo Maiorfi [Sat, 24 Feb 2018 08:47:30 +0100] rev 10

Radio Events event queue and related thread should now be passed externally (e.g. by main()) as pointers. This frees user code from locking/unlocking through mutex in order to implement an async state machine interlaced with radio events


Removed old, unused debug.h

2018-02-10, by Lorenzo Maiorfi [Sat, 10 Feb 2018 08:59:58 +0100] rev 9

Removed old, unused debug.h


RTOS support

2018-02-10, by Lorenzo Maiorfi [Sat, 10 Feb 2018 08:58:42 +0100] rev 8

RTOS support


WARNING: Radio API timings changed from micro-seconds to milliseconds; ; Synchronized with https://github.com/Lora-net/LoRaMac-node git revision e506c246652fa44c3f24cecb89d0707b49ece739

2017-04-24, by mluis [Mon, 24 Apr 2017 09:26:08 +0000] rev 7

WARNING: Radio API timings changed from micro-seconds to milliseconds; ; Synchronized with https://github.com/Lora-net/LoRaMac-node git revision e506c246652fa44c3f24cecb89d0707b49ece739


Added NUCLEO-L476RG board support

2016-09-13, by mluis [Tue, 13 Sep 2016 12:15:43 +0000] rev 6

Added NUCLEO-L476RG board support


Update currentOpMode in SetOpMode() to fix Tx Power issue

2016-05-19, by ubhat [Thu, 19 May 2016 18:30:44 +0000] rev 5

Update currentOpMode in SetOpMode() to fix Tx Power issue


Synchronized with https://github.com/Lora-net/LoRaMac-node radio drivers git revision 55d16ca8949c09ee241c87b7600e2a8bc90d3743

2016-05-13, by mluis [Fri, 13 May 2016 14:49:34 +0000] rev 4

Synchronized with https://github.com/Lora-net/LoRaMac-node radio drivers git revision 55d16ca8949c09ee241c87b7600e2a8bc90d3743


Change FSK driver for long payload support

2016-03-10, by GregCr [Thu, 10 Mar 2016 10:20:44 +0000] rev 3

Change FSK driver for long payload support


update for SX1272MB2xAS

2016-02-17, by GregCr [Wed, 17 Feb 2016 09:17:18 +0000] rev 2

update for SX1272MB2xAS