Enroll now in an upcoming course

2 Days - $1400

No open enrollment classes scheduled at this time.

Contact Us


Register for our monthly training newsletter to stay informed about upcoming courses and new free content and you'll get a 5% discount off your first course.

We needed someone who could fully engage with Ph.D.-level developers...we had no doubt that we’d found the right instructor.

Dana Krokosky, Compunetix

A text icon linking to the trainign quote page

Watch the Free Linux Tutorial: Introduction to Embedded Linux

Read the Free Linux Training Publication: Yocto Project - Big in Embedded Linux

Gain a solid understanding of embedded development using the Yocto Project, including the Poky build process and Bitbake, the use of emulators, building images for multiple architectures and the creation of board support packages (BSP).

Course Description

Experience the Course

This two-day course is a condensed version of our full five-day class, LF405: Building Embedded Linux with Yocto. In order to save time, some sections of the full five-day course are abbreviated or skipped, depending on the needs and interests of the audience.

The Yocto Project is an open source collaboration project that provides templates, tools and methods to help you create custom Linux-based systems for embedded products regardless of the hardware architecture. The Yocto Project includes the Poky Build System as one of its components, which is a derivative of and is compatible with the OpenEmbedded Build System.

This course is designed to jump-start embedded development projects using the Yocto Project and to give software engineers a solid understanding of the build process from compilation over packaging to creating a bootable image. Upon mastering you will have a solid understanding of:

  • The Poky and Bitbake build process with its recipes and layers to customize Linux kernel and packages for a custom embedded application
  • Building Linux images for different profiles and across multiple architectures
  • The use of emulators for verification
  • The creation of board support packages (BSP) for their target hardware

You will step through all phases of embedded Linux development using the Yocto Project with laboratory exercises on an embedded target device to provide hands-on practice you can take directly to your projects. The embedded target device kit will be provided by The Linux Foundation and students will get to take their own kit home for further practice.

Students are expected to provide their own computers for the class.

Course Materials

As part of your registration, a printed copy of the course manual will be mailed to you. Expect 3-5 days for US delivery and 7-10 days for international deliveries.

For more details view the Course Outline.


This course is primarily intended for experienced software engineers who are interested in learning the fundamentals of a build system for embedded Linux. The purpose of the class is to shorten the learning curve by providing a guided tour combining lecture and practical exercises of building and customizing embedded Linux systems.


You should:
  • Be proficient in the C programming language.
  • Be familiar with basic Linux (Unix) utilities, such as ls, rm, grep, tar, and have a familiarity with command shells and scripts.
  • Be comfortable using any of the available text editors (e.g. vi, emacs).
  • Know the basics of compiling and linking programs, constructing Makefiles, etc.; i.e. be comfortable doing application developing in a Linux or Unix environment.
  • Have a good understanding of systems programming in a Unix or Linux environment, at least from the standpoint of writing applications.
  • Knowledge of the Python scripting language is beneficial but not strictly required.

If you have a basic understanding of the top-level principles of cross development, where a host system is used to develop and compile software that runs on a different target system, it would be helpful.

The course will survey the wide range of CPUs supported by the Linux community that are used in embedded systems, as well as some other hardware components that have good support. The purpose is to introduce resources that can be used to guide component selection when designing embedded systems.

Ways To Train

Event Type: Training Course

Classroom Linux Training [?]

  • Delivered in conveniently located training centers
  • Please check schedule for exact location and duration

Custom Corporate Linux Training [?]

  • All courses can be customized for private, on-site training
  • Contact us for more information