Embedded Linux Platform Development with Yocto Project (LFD460)

In this course, you’ll obtain a solid understanding of how to build a repeatable embedded Linux target using the Yocto Project. In addition to learning the build system, you will learn about more advanced tools like toaster, devtool, wic, eSDK, and eclipse IDE integration. This course builds on the Embedded Linux topics learned in the LFD450 class.

$3250 Enroll Get A Quote

Course Overview

This course will teach you how to take advantage of the Yocto Project – the open source collaboration effort that provides templates, tools and methods to help you create and maintain custom Linux-based systems for embedded products regardless of the specific hardware architecture.

Show More

You’ll learn:

  • How to use the Poky and Bitbake build process, with its recipes and layers to customize Linux kernel and packages for a custom embedded application
  • How to build Linux on an embedded board
  • How to use emulators for verification
  • How to create board support packages (BSP) for target hardware
  • And more.

The information in this course will work with any major Linux distribution.


3/16/2020 - 3/18/2020
GuaranteedThis course has reached its minimum class size and is guaranteed to run on the scheduled date.
$3250 Add to cart Generate A Quote
4/20/2020 - 4/22/2020
GuaranteedWith Next EnrollmentThis class will be guaranteed to run with next enrollment.
$3250 Add to cart Generate A Quote
6/8/2020 - 6/10/2020
$3250 Add to cart Generate A Quote
If none of these fits your schedule, check out our Partner offerings >

Course Outline

  1. Introduction
    • Objectives
    • Goals
    • Audience
    • Who You Are
    • The Linux Foundation
    • Linux Foundation Training
    • Certification Programs and Digital Badging
    • Linux Distributions
    • Platforms
    • Preparing Your System
    • Things change in Linux
    • Documentation and Links
    • Course Registration
  2. Preliminaries
    • Linux Distributions
    • Procedures
    • Labs
  3. How to Work in OSS Projects **
    • Overview on How to Contribute Properly
    • Stay Close to Mainline for Security and Quality
    • Study and Understand the Project DNA
    • Figure Out What Itch You Want to Scratch
    • Identify Maintainers and Their Work Flows and Methods
    • Get Early Input and Work in the Open
    • Contribute Incremental Bits, Not Large Code Dumps
    • Leave Your Ego at the Door: Don’t Be Thin-Skinned
    • Be Patient, Develop Long Term Relationships, Be Helpful
  4. The Yocto Project and OpenEmbedded
    • What is the Yocto Project?
    • What is OpenEmbedded?
    • The Yocto Project Family
    • Yocto Project Terms
    • Resources
  5. Poky and bitbake
    • Poky and BitBake Concepts
    • Yocto/OE Architecture
    • The BitBake Build Engine
    • Labs
  6. Setting up the Yocto Project Build System
    • Labs
    • The Yocto Project Reference System Structure
  7. Building an x86 Emulation Image
    • Labs
    • Build Environment Structure
  8. Troubleshooting Build Failures
    • Debugging Build Failures
  9. Customizing Images
    • Extending a Pre-defined Image
    • Inheriting from Core-Image
    • Package Groups
    • Using Image Features
    • Labs
  10. Adding Packages
    • Recipe Conventions and Best Practices
    • Single C-File Package
    • Makefile-based Package
    • Autotooled Package
    • Labs
  11. Layers
    • Why Layers?
    • Working with Layers
    • Labs
  12. Kernel Recipes
    • Yocto Kernel Recipes
    • Configuring the Yocto Project Kernel
    • Building a Custom Kernel
    • Extending the Yocto Project Kernel
    • Labs
  13. Introduction to selected BBCLASSes
    • rm_work.bbclass
    • allarch.bbclass
    • buildhistory and buildstats
    • cve-check.bbclass
    • archiver.bbclass
    • Labs
  14. Development Tools
    • devtool
    • wic
  15. Licensing and Compliance
    • License Management with Yocto
    • License Tracking
    • Enabling Commercially Licensed Recipes
    • Labs
  16. Supplementary Material
    • Yocto Development System Setup
    • Yocto Build System Setup
    • Building an Initial System
    • Deploying and using pre-built sstate-cache and download folders *
  17. Closing and Evaluation Survey
    • Evaluation Survey


This course is primarily intended for experienced embedded Linux engineers who are interested in learning how to repeatably build an embedded Linux system. This course assumes you have basic knowledge of Embedded Linux systems such as building and install boot loaders, kernels and user space software (the kinds of things you learn in LFD450: Embedded Linux Development). You should also be familiar with building code from the command line, basic Linux utilities and text editors. Some experience with Python is helpful but not required.


The teacher was very helpful and helped each person with their individual problems.”  Dec 2019


I got a quick overview of all the features yocto offers to me. Even if I am not able to use it fully I can at least understand the concepts I am supposed to use for my job.”  Dec 2019


I liked the practical labs, it made it far better to understand how the functionality of the yocto toolchain and configuration works.”  Dec 2019


“Instructor was superb. Great personality, knowledgeable, and very helpful. Training material was some of the best I have seen!”  Nov 2019


“The course was well designed and presented very well. There was a lot of information that was covered and I was able to learn a few good tricks and best practices for using Yocto.”  Oct 2019


“The Professor’s knowledge on background and the WHY of how things got to be the way they are today.”  Oct 2019


“The instructor was well spoken and concise. I really enjoyed his explanations o some of the more esoteric details of the course materials.”  Oct 2019


“I like how thorough John can be when explaining concepts. The course material is very thorough as well which is extremely appreciated. I really enjoy the labs.”  Aug 2019


“Very hands-on! The labs were awesome, and it was great to have the fully-equipped Beaglebone Black and all associated cables/hardware/adapters provided. I am the type of person who won’t learn something well until I do it. I think that I got a tremendous amount out of this course largely based on the lab experiences.” Aug 2019

At a Glance

Delivery Method

Live Online (Virtual)


  • 3 days of Instructor-led class time
  • Hands-on Labs & Assignments
  • Resources & Course Manual
  • Certificate of Completion
  • Free Chromebook

Experience Level


Course Rating



Training 5 or more individuals?
Get a Corporate Quote >


Get training and a free Chromebook.

When you train with The Linux Foundation you’re already getting the best open source training straight from the source. And now, we are including a free Chromebook with the purchase of select Linux Foundation instructor-led training courses to help you get the most out of your training experience.

Learn More