This project was created as a self-learning project
Initially the goal was to learn use LWMesh (an Atmel proprietary 802.15.4 stack). Shortly after starting the project I found out that LWMesh EOL, so decided to pivot to MiWi (a Microchip proprietary 802.15.4 stack)
The secondary learning goal was to improve my programming skills. In this project, I am playing with some object-oriented design patterns, but using embedded C. C is not natively an "object-oriented" language, but object-oriented principles can still be applied. You may see some code in here that just doesn't look to be the best way to do things. This may be because I'm playing with stuff that I don't quite yet understand! Or it may be that I just wanted to do it differently to learn something new, even if it isn't the best way to do it... There are trade-off's associated with every design pattern. While playing with these design patterns I hope to gain more insight into their practicality in an embedded system
I'm interested in your positive feedback on how to do things better!