I've created a companion Arduino sketch / library to go along with the MySensors library. The companion library is designed with flexibility and inheritance to allow easy configuration of attached sensors and actuators. I.e. just tell the library you want to add a gpio output, an analog input, a PWM output, ... and the library handles all the necessary code. This makes the base Arduino sketch much simpler and allows for easier configuration and programming of modules with different and varying features.
I'm midway through development and have some more features to add, but I wanted to solicit some feedback to see if there were general ideas or concepts that I am missing. Note: I'm not a professional programmer and am learning some of this as I go!
The software is specifically designed for (and only tested with) the Home Assistant controller - though I hope other controller software is compatible.
Github here: https://github.com/brahmafear/MySensors_Node. Best starting point is the Arduino sketch listed in the examples folder.