LoRaWAN MAC layer implementation

Dependents:   LoRaWAN-demo-72_tjm LoRaWAN-demo-72_jlc LoRaWAN-demo-elmo frdm_LoRa_Connect_Woodstream_Demo_tjm ... more

LoRAWAN-lib is a port of the GitHub LoRaMac-node LoRaWAN MAC layer implementation.

This library depends on the SX1276Lib or SX1272Lib radio drivers depending on the used mbed component shield.

This library depends also on some cryptographic helper functions as well as helper functions for the timers management. These can be found on the example projects under the system directory.

The example projects are:

  1. LoRaWAN-demo-72
  2. LoRaWAN-demo-76
  3. LoRaWAN-demo-NAMote72

The LoRaWAN specification specifies different ISM bands operating parameters. These are all implemented under the LoRaMac-board.h file.

In order to select which band to use, please change line 24 of board.h file provided on the examples projects as follows:


EU868

board.h

#define USE_BAND_868


US915

board.h

#define USE_BAND_915


US915 - Hybrid

board.h

#define USE_BAND_915_HYBRID


CN780

board.h

#define USE_BAND_780


EU433

board.h

#define USE_BAND_433

History

Fix bug where FCnt get incremented twice in the case of ADRACKReq with D/L ACK default tip

2018-07-17, by ubhat [Tue, 17 Jul 2018 22:48:35 +0000] rev 11

Fix bug where FCnt get incremented twice in the case of ADRACKReq with D/L ACK


Revert back to 8:2600260

2017-07-26, by terence304 [Wed, 26 Jul 2017 01:08:23 +0000] rev 10

Revert back to 8:2600260


Fix length error bug

2017-07-26, by terence304 [Wed, 26 Jul 2017 00:56:14 +0000] rev 9

Fix length error bug


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:42:37 +0000] rev 8

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


Synchronized with https://github.com/Lora-net/LoRaMac-node git revision 7a4aec588de628d864c364e9469ae45105fdbe26

2016-07-05, by mluis [Tue, 05 Jul 2016 13:24:54 +0000] rev 7

Synchronized with https://github.com/Lora-net/LoRaMac-node git revision 7a4aec588de628d864c364e9469ae45105fdbe26


Fix GitHub Issue #81

2016-05-18, by mluis [Wed, 18 May 2016 11:19:24 +0000] rev 6

Fix GitHub Issue #81


Removed the TxPower limitation for US band on LoRaMacMibSetRequestConfirm function.; The power will be limited anyway when the SendFrameOnChannel functions is called.

2016-05-18, by mluis [Wed, 18 May 2016 11:17:33 +0000] rev 5

Removed the TxPower limitation for US band on LoRaMacMibSetRequestConfirm function.; The power will be limited anyway when the SendFrameOnChannel functions is called.


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

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

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


Synchronized with https://github.com/Lora-net/LoRaMac-node git revision 5a25e2f1593bc382200e848e6db967d1c4550021

2016-03-14, by mluis [Mon, 14 Mar 2016 09:09:54 +0000] rev 3

Synchronized with https://github.com/Lora-net/LoRaMac-node git revision 5a25e2f1593bc382200e848e6db967d1c4550021


Synchronized with https://github.com/Lora-net/LoRaMac-node git revision a2226468d470eceb251338e1acfb24cfd121effa

2016-01-05, by mluis [Tue, 05 Jan 2016 16:41:54 +0000] rev 2

Synchronized with https://github.com/Lora-net/LoRaMac-node git revision a2226468d470eceb251338e1acfb24cfd121effa