With the hardware mostly squared away, it's time to finally see if the LoRaMac-node reference implementation from Semtech will run.
The overall approach will be to add in the LoRaWAN-Feather as a "board" in the reference implementation. This will require adding my own board support package. Since my board is based on the STM32L073 and SX1262 it's really just a matter of cobbling together existing pieces of the Semtech code.
First, I'll fork the repo. I'll pretty much be using the code from the B-L072Z-LRWAN1 board. The B-L072Z-LRWAN1 is based on the Murata CMWX1ZZABZ-091. This is an all in one LoRaWAN solution. By using this BSP, I won't have to deal with the concepts of shields and Nucleo boards. But since my boards are running STM32L073's, I'll borrow some parts from the NucleoL073 board support package. I'll also edit the CMakeLists.txt files to allow for my new platform. Once I get the new board support package to build and link, I'll move on to adding in the required app examples for my board support package. So far, all the apps with my board build (they are all copies of the B-L072Z-LRWAN1 apps with the references to extra LEDs removed), but only the classA app has been tested.
So, if you have the hardware you should be able to clone my fork of the official LoRaMac-node repo and flash it to the board and have it up and running to a gateway of your choice. If you have a gateway up and running with TTN, it should look a little something like this:
This shows my custom Raspberry Pi/RAK2245 gateway receiving uplink messages from both of the LoRaWAN-Feathers that are running.
Up next would be to create a somewhat useful example that maybe has the two LoRaWAN-Feathers uploading the battery data acquired by the on-board fuel gauge.