For me it was straightforward and it was my first STM32Cube project. I think I’ve started with LoRaWAN-End-Node example and tweaked it until the firmware did what I wanted it to. I’ve also looked at the firmware provided by Seeed, but it is based on the older version of the firmware package, so I didn’t wanted to use it as a starting point.
I’ve got first example application working end-to-end, including TTN part - I could send packets from the device and I could see them coming into my TTN account. Then by taking small steps at a time I gradually came to the end result, which is really simple:
- Send LoRaWAN packet once the contact becomes open (GPIO interrupt)
- Every 1 hour send a packet with the current battery level, also to be sure that device is still functional
That’s it. Power consumption was the biggest concern, but actually I am more than satisfied with the result.
Firmware itself is well organized and easy to follow, so for me it was not a problem to figure out how to tweak it the way I wanted it to.