Skip to content

Commit 5734b57

Browse files
Hasnain Virktheotherjimmy
authored andcommitted
Adding MAC layer for LoRaWAN implementation
The actual mac algorithms are being used as it is in the reference implementation. We introduce an internal class that starts a thread and constructs an event queue to handle deffered calls from interrupt context for RTOS. The code base is compatible with Mbed-OS 2 as well. GetPhyEventHandlers() API provides mac callback funtions for PHY layer, which are in turn delegated to radio driver from the PHY layer. LoRaMacInitialization() is augmented with LoRaPHY parameter which let's the MAC layer know which particular PHY layer is in use. LoRaMacSetTxTimer() and LoRaMacStopTxTimer() are used when duty cycle is off for testing purpose or to support custom application timers. If the duty cycle is off, mac and phy layer work togather to figure out the next possible transmission time. LoRaMacCrypto APIs are provided which provide seemless integration of mbedTLS into mac layer for cryptography. User application is supposed to provide proper mbedTLS configuration file. All other APIs are retained as it is.
1 parent c861c32 commit 5734b57

File tree

5 files changed

+4486
-0
lines changed

5 files changed

+4486
-0
lines changed

0 commit comments

Comments
 (0)