Global training solutions for engineers creating the world's electronics

Designing Embedded Systems with Yocto ONLINE

Standard Level - 5 Sessions (6 hours per session)


PLEASE NOTE: This is a LIVE INSTRUCTOR-LED training event delivered ONLINE.

It covers the same scope and content as a scheduled in-person class and delivers comparable learning outcomes.

The Yocto Project is ideal for rapid prototyping and provides the tools and processes required to develop an embedded Linux-based product. The collaboration has widespread support from leading hardware manufacturers, open-source operating systems vendors, and electronics companies looking to address the challenges of developing embedded technology.

This course from Doulos Embedded has been designed to help you understand how to use the Yocto Project tools to manage key components of a Linux distribution: Toolchains, bootloaders, kernels and package management systems. You will learn how to use a Yocto Project based toolchain and tools to develop, debug and test your software, as well as how to use Yocto to customize and maintain an Embedded Linux distribution for multiple boards.

  • Engineers who are migrating to a Yocto Project based distribution environment
  • Project managers and engineers who are evaluating the use of Linux for their projects
  • Project managers and engineers who are considering supporting their own Linux distribution and tools
  • Engineers responsible for build systems and software releases


Project managers: This course is designed for those looking to maximise their effectiveness in utilising Yocto to complete embedded systems projects on time and in budget. New Linux projects and projects which will require a long term maintenance cycle would benefit from investigating the components of the Yocto Project. The Yocto Project infrastructure is suitable for Linux projects of any size. Starting from a minimal Linux system, it can be scaled up by integrating additional software in a managed environment. 

Engineers: This course outlines how development teams can directly benefit from the tools and SDKs produced by the build system. It clearly separates development cycle tasks from the tasks required to integrate, maintain and distribute software.

The Live ONLINE training is delivered in 6 hour sessions each day. This includes live tuition and class interaction with the Doulos subject matter expert during the full scope of each session. 

Labs are incorporated within the 6 hour sessions with the Doulos lab platform providing individual (private) tutor support at all times for each delegate. On occasion, labs may require time outside of the 6 hour session to complete. Additional lab material is available in some subjects for individuals to reinforce their understanding of the course content.

Delegates must have attended Developing with Embedded Linux or an equivalent course, or have some experience of using Linux for Embedded Systems. Please contact Doulos to discuss and assess your specific experience against the pre-requisites.

Doulos course materials are renowned for being the most comprehensive and user friendly available. Their unique style, content and coverage has made them sought after resources in their own right. The materials include fully indexed class notes creating a complete reference manual. 

Yocto Kick-start

  • Understand components of the Yocto Project
  • Embedded Linux components
  • Host setup requirements
  • Building U-Boot, Linux and the root filesystem
  • Booting Linux on an emulated board (QEMU)


The Yocto Build System

  • An automated build system
  • Metadata file types:
    • Recipes, classes and configuration files
  • Layers
  • Configuration file types


Yocto Outputs

  • The deploy directory
  • The work directory
  • The cross toolchain
  • Package feeds
  • Generating an SDK


Layers and Recipes

  • Adding custom layers
  • Example recipe
  • Using recipetool
  • Application integration


Manage Custom Layers

  • Adding custom layers
  • Example recipe
  • Using recipetool
  • Application integration
  • Managing package users


Working With Sources and Recipes

  • Steps in the build process
  • More on recipetool
  • The devshell
  • The devtool


Development Workflow

  • More on the SDK
  • Extensible SDK
  • Development tools and features
  • Managing sources and layers
  • Target infrastructure


Systems Integration

  • Kernel configuration and build
  • Initial board support
  • Machine configuration file
  • In and out of tree kernel development
  • Kernels in Yocto
  • U-Boot configuration and build


Package Management

  • Package distribution through HTTP or FTP
  • Linux package management tools
  • Package groups
  • Package release versioning
  • Over the Air Updates



  • The global datastore
  • Conditional variable assignment
  • Functions and tasks
  • Bitbake commands
  • Log files and logging functions


Building Secure Systems

  • Yocto security features
    • Standard features
    • Meta-security and other layers
  • License management and open source compliance
    • Managing licenses
    • SPDX and SBOMs


Working With The Build System

  • QA system
  • Package testing
  • The BuildHistory
  • Toaster
  • Useful commands and tips

Course Dates

19 Aug 2024 ONLINE Americas Enquire
07 Oct 2024 ONLINE EurAsia Enquire
14 Oct 2024 ONLINE Americas Enquire
02 Dec 2024 ONLINE Americas Enquire
02 Dec 2024 ONLINE EurAsia Enquire

Looking for team-based training, or other locations?

Complete an enquiry form and a Doulos representative will get back to you.

Enquiry FormPrice on request

Next dates for this course