Learn new techniques for designing embedded software

From June 20 to June 24, Design News will present the free course, Embedded software design techniques. Each class lasts one hour, starting at 2:00 a.m. Eastern Time. You can also win IEEE Professional Development Hours to participate. If you are unable to attend the class schedule, the class will be available upon request.

Techniques for designing effective embedded software have evolved in recent years. Embedded systems are no longer simply disconnected systems. They are now powerful microcontroller-driven devices that balance connectivity, machine learning, and real-time control. In this course, instructor Jacob Beningo will explore how to design and build modern embedded systems that use microcontrollers.

Day 1: Software Architectures 101

Embedded system designers today have a wide range of development environments and architectures at their disposal. In this session, we will explore software architecture patterns that are available to designers today. Participants will walk away understanding the differences between technical layers, domains, and microservices.

Day 2: Designing RTOS-Based Applications

Many real-time systems rely on an RTOS to handle timing and low-level functionality in the microcontroller system. In this session, we will explore how to design an embedded application using an RTOS. Participants will learn how to develop and verify their architecture.

Day 3: Architecture Verification Techniques

It’s amazing how quickly a well-designed system can descend into chaos! In this session, we will explore how to analyze our embedded software as we develop it to ensure that we maintain high consistency and minimize coupling. Participants will leave with new ideas on how to keep their architecture clean.

Day 4: Designing quality in embedded systems

Quality cannot be added to a system at the end of the development cycle, it must be maintained at every stage. In this session, we’ll explore what it takes to build a quality embedded system. We will discuss how to analyze the quality of embedded systems using complexity, cycle analysis, CI/CD, etc. Participants will walk away with knowledge of the processes that can enable them to improve the quality of their system and reduce time to market.

Day 5: Software Configuration Management Techniques

The bane of many projects is how to successfully manage software configurations. Many codebases are used across multiple product lines and SKUs. Managing included and excluded features can result in complex spaghetti code. In this session, we’ll explore several product configuration management techniques that will simplify feature selection and minimize the risk of errors.

Instructor Jacob Beningo

Image courtesy of Jacob Beningojacobbeningo.jpg

Leading the course will be Jacob Beningo. Jacob is a frequent contributor to Design News, mostly on embedded software issues. He is an embedded software consultant currently working with customers in over a dozen countries to radically transform their businesses by improving product quality, cost and time to market. He has published over 300 articles on embedded software development techniques, published several books, is a sought-after speaker and technical trainer, and holds three degrees, including a master’s degree in engineering from the University of Michigan.

Digi-Key Continuing Education Center

Digi-Key Continuing Education Center, presented by Design News, will allow you to quickly become familiar with a host of technologies that you wanted to study, but did not have time for, all without leaving the comfort of your laboratory or your office. Our faculty of expert tutors have divided the interdisciplinary world of design engineering into five dimensions: microcontrollers (basic and advanced), sensors, wireless, power, and lighting.

You can register for the free course here.

Abdul J. Gaspar