Embedded Firmware Solutions: Development Best Practices for the Internet of Things