Embedded firmware solutions : development best practices for the internet of things (2015)