This merge request rewrites how the user of this library interacts with the Layer1 and LoRaLayer2 classes and adds preliminary support for dual LoRa modules. Now users must create their own Layer1Class and LL2Class, instead of being provided with a global class object. This is intended to make the library more modular.
A major change has also been made to the structure of the Layer1 headers and the dependencies of the cpp files. I have separated the headers so there is one header per cpp file, which more standard. The Layer1 and packetBuffer source code are no longer dependent on LoRaLayer2.h, while LoRaLayer2 is dependent on Layer1 (you can specific which you would like to use by adding the correct build flag). Both Layer1 and LoRaLayer2 depend on packetBuffer.h.
TODO:
Update router beacon example and API docs
Sync simulator code to confirm that Layer1_Sim still works properly
This merge request rewrites how the user of this library interacts with the Layer1 and LoRaLayer2 classes and adds preliminary support for dual LoRa modules. Now users must create their own Layer1Class and LL2Class, instead of being provided with a global class object. This is intended to make the library more modular.
A major change has also been made to the structure of the Layer1 headers and the dependencies of the cpp files. I have separated the headers so there is one header per cpp file, which more standard. The Layer1 and packetBuffer source code are no longer dependent on LoRaLayer2.h, while LoRaLayer2 is dependent on Layer1 (you can specific which you would like to use by adding the correct build flag). Both Layer1 and LoRaLayer2 depend on packetBuffer.h.
TODO: