In “An API Standard for MCUs”, engineers will learn the fundamentals of APIs and HALs along with techniques for designing portable and reusable code. The book walks the reader through the creation of an API standard for controlling microcontroller peripherals that can be implemented on any microcontroller. Readers are treated to an API not just within the microcontroller but also a library of APIs for communicating with external devices.

In “Developing Reusable Firmware – A Practical Approach to APIs, HALs and Drivers”, Jacob Beningo provides readers with the knowledge and skills necessary to improve their own embedded software based on more than 15 years developing reusable and portable software for resource constrained microcontroller based systems. Jacob explores API’s, HAL’s and driver development among other topics to provide readers with a solid foundation for improving their own software.

Defining a consistent and reusable HAL/API standard can be a time consuming and difficult endeavor. The Beningo Engineering API/HAL Standard templates are Doxygen templates that provide developers with a well defined and consistent standard that can be used from one application to the next.

The primary purpose of this course is to explore real-time embedded software concepts as they relate to Micro Python! The course utilizes the PyBoard (purchased separately from http://micropython.org) which comes with the latest Micro Python distribution already installed.

This course is designed for both newbies and experienced engineers looking to get a new understanding or a refresh on the fundamentals of bootloaders for microcontrollers. This course takes a hands on approach of tying key concepts with real world practice in the class room with a cutting edge Arm M0+ processor. A review of requirements definitions, memory maps, linkers files and much more are explored.

The proliferation of mobile devices has led to the need of squeezing every last micro-amp-hour out of batteries. In this session, strategies for optimizing micro-controller energy profiles will be examined which will extend battery life while maintaining the integrity of the system.

"Designing a robust and functional system starts with a good architecture design. Jacob worked with us to improve our embedded software architecture designs and helped us to implement a layered software architecture with clear and defined API's. His method for documenting software and adhering to software standards was phenomenal. We recommend and look forward to working with Jacob on future embedded software projects."