Yocto with BeaglePlay board and many penguins Photo: Michael Opdenacker Clipart: https://openclipart.org/download/189359/penguins-like-ocal.svg

Yocto Project and OpenEmbedded training course – Online

All you need to know to use Open Embedded and the Yocto Project to build your custom embedded Linux images.

Overview

Everything you need to know to build your custom Linux system images for your own hardware. Learn how to create your own layers to reuse and override hardware vendor and community provided layers, just providing what is specific to your project.

In case you wish to support images for different targets, the Yocto Project will enable you to cleanly separate your hardware customizations, your distribution policies and the sets of applications you want to use.

The Yocto project also offers binary reproducibility, vulnerability analysis and Software Bill of Materials, and will also help you to develop your own recipes and debug the system.

Using progressive but challenging practical labs and varied techniques to make the learning always stimulating and fun, and above all to make it stick. At least 75% of the time is dedicated to practical activities. Learn by doing!

You may also be interested in taking our 1-day Yocto Project Overview Seminar first.

Target audience
  • Engineers developing products based on embedded Linux.
  • Field Application Engineers working for silicon and board manufacturers, developing and supporting Yocto Board Support Packages (BSP) for their customers.
  • Team leaders and decision makers who want to understand the tools their teams are using and their possibilities.
  • Hobbyists and students interested in developing their embedded Linux skills.
Expected benefits
  • Reduced product development cost by leveraging features from the Yocto ecosystem: tooling, recipes for thousands or components, vulnerability assessments…
  • Enjoy all the possibilities of your hardware and of the Linux kernel.
  • Learn how to be independent from your BSP vendor.
  • Enjoy up to 4 years of bug fix and vulnerability updates.

Description

TypeOnline
Mix25% theory – 75% practical activities – Learn by doing!
LanguageEnglish
Max participants8
Duration24 hours (6 sessions of 4 hours)
HardwareBeaglePlay board with TI Sitara AM625 SoC (ARM64)
Yocto Project version5.0 (Scarthgap LTS) used in practical labs
PrerequisitesFamiliarity with the Linux command line – understanding low-level details about Embedded Linux will help but isn’t a strict requirement.

Upcoming sessions (in-person and online)

TrainerDatesCostRegister
Michael OpdenackerApr. 14-16, 22-24, Online
15:00 to 19:00 UTC+2
Seats left
1,990 EUR or 2,190 USD 1, 2Join now button
Michael OpdenackerSep. 9-12, 2025, Avignon, France
32 hours – 9:00 to 18:00
Seats left
2,490 EUR or 2,690 USD
+ 20% V.A.T. 3
Join now button

Also available on-line or through private sessions worldwide. Ask us for a quote.

1 Individuals (all countries, not paying through a company) are subject to + 20% V.A.T. However, we offer a discount on the base cost to cancel the impact of V.A.T. and keep the same total price.
2 Only for French companies: + 20% V.A.T.
3 + 20% V.A.T. is mandatory for everyone attending a public course in France. See 1 for individuals.

Available discounts

The below discounts can be combined, up to a limit of 400 EUR / 440 EUR per participant.

  • 200 EUR / 220 USD returning participant discount for any extra course taken by the same participant at most 12 months after another one.
  • 200 EUR / 220 USD early bird discount for any registration at least 2 months before the session dates.
  • 200 EUR / 220 USD extra participant discount for each participant from the same entity (same invoicing address) in addition to the first one.

If V.A.T. is applicable, it applies to the amounts before V.A.T.

Part 1: Introduction, Concepts, Standard Usage

Michael Opdenacker running a tutorial about devtool at Yocto Project Summit 2024.12.
  • Demo: Build an embedded Linux image for a different board and boot it.
  • General introduction to embedded Linux and build systems.
  • History of OpenEmbedded and the Yocto Project.
    Roles of the various components: OpenEmbedded, Poky, Yocto.
  • Project goals, release cycles, governance, features, example projects.
  • Terminology: recipes, layers, images, machines, distributions, packages, metadata.
  • Setting up the environment. Supported host distributions, required tools.
  • BitBake build orchestrator: usage and features.
  • Build and boot your first image based on the Poky reference distribution.
  • Exploring logs and build outputs.
  • Variables, syntax, scope and overrides. How to trace and debug variable values.

Part 2: Working with Recipes and Layers

Michael Opdenacker explaining how to use Yocto to boot the mainline Linux kernel on Raspberry Pi 5.
  • Structure of recipes. Tasks, dependencies. Source fetching and other important tasks. Extending and overriding existing recipes.
  • Classes: “recipe” and “global” classes.
  • Various types of Yocto layers. Using multiple layers and creating new ones.
  • BSP layers and machine definitions. Building the bootloader and kernel. Bootloader, kernel and device tree customization.
  • Distro layers. Toolchain definition.
  • Defining images. Package features.
  • Defining packages in recipes. Runtime and build time dependencies.

Part 3: Advanced Yocto Usage and Deployment

Michael Opdenacker talking about Yocto binary distributions at the Embedded Linux Conference Europe in 2024.
  • Optimizing builds: shared state cache, hash equivalence, limiting disk and CPU usage.
  • Generating and executing a Yocto Software Development Kit (SDK).
  • Using devtool to create, modify and test recipes.
  • Package sanity and image testing.
  • Generating and publishing package feeds. Adding and updating software at run time.
  • License compliance and Software Bill or Materials.
  • Checking for vulnerabilities.
  • Binary reproducibility
  • Layer management software (KasRepo).
  • Best practices for maintaining a project using Yocto.
  • Further Yocto Project resources.

Part 4: Challenges

  • Fix a broken system with multiple types of bugs.
  • Build and boot a system with support for A/B updates.
  • Optimize the boot time of a Yocto built embedded system.

What’s special in our online courses

Real labs, not just demos: unlike in some other offerings, each participant has time to do the practical labs during the course hours, with support from the trainer. The number of participants is limited to 8 to make sure that the instructor has enough time to support everyone.

Daily slots are just 4 hours long, allowing to continue working on regular projects, and to finish the labs with support from the trainer. We provide a Matrix channel to get support outside official hours, and even after the course is over. The timing also allows for participants from North America.

Video recordings of the lectures from the trainer are provided. This can come in handy to review the details of a particular topic after the course. Note that these videos are for your own use only, and that participants won’t be recorded for privacy reasons.

Course never postponed: once you are registered to one of our public sessions (after we receive your payment), you are sure to participate at the expected dates. We don’t postpone sessions, even with a very small number of participants.

Majority of practical activities, representing at least 75% of learning time.

Short lectures only: sequences of theory never exceed 30 minutes, and are interleaved with quick or longer practice. Too long series of lectures are hard to digest, especially in an online setting.

Technical and teaching experience: courses taught by an industry veteran with more than 20 years of experience in embedded Linux and 30 years using and advocating for Free and Open Source Software.

See also: Why choose Root Commit courses?

Practical details

Registration

To register to one of our sessions (in-person or on-line), please send us an e-mail mentioning:

  • Which session(s) you are interested in
  • The name(s) of people to register
  • Your company name (unless paying by yourself)
  • An invoicing address
  • An EU VAT number (if working for a company in the European Union)

If you have more than 4 people to register, you may consider ordering an on-site, in-person training session. Just ask us.

Required hardware

PC running Linux

For this session, you will need a laptop computer running a native installation of Linux, with one of the distributions currently supported by the Yocto Project. This way, you can practice with your preferred distribution, as you would do in your real job. We suggest Ubuntu 24.04 if you don’t have any preference yet.

If you haven’t installed Linux on your laptop yet, most Linux distributions will allow you to install Linux alongside Windows, after making enough free space. Note that we don’t support the use of Virtual Machines (to run Linux from inside another operating system), as from our experience, connecting the Linux VM to the board and other devices is an endless source of distractions. Using VMs also causes a substantial loss of compiling performance.

This laptop should have at least 8 GB of RAM, a CPU with at least 4 physical cores and at least 50 GB of free disk space (100 GB for the Yocto course). It should also be equipped with a micro-SD card reader (internal or external).

The PC should also be equipped with a webcam a microphone. Another possibility would be to connect to the video-conference through another device, like another computer, a smartphone or tablet, while you are running your practical labs on the Linux PC. However, the Linux PC should work better for sharing your screen or screenshots with the instructor.

ELECTRONIC Board and accessories

You will need to get your hands on the BeaglePlay ARM64 board and a few accessories.

Note that those are provided by Root Commit for in-person sessions.

What is provided?

In-person public sessionsIn-person private sessionsOnline public sessions
Electronic board and all its required accessories, for the duration of the course
Lunch, morning and afternoon breaks
Electronic copies of the lecture and practical lab materials.
Solutions to practical labs
Video recordings of the lectures from the trainer.
Electronic training certificate, after successful completion of the course, which can be shared on your LinkedIn profile and on other social media.

FAQ

Q: Will I get solutions to the practical labs?
A: Yes, solutions for the files to create or modify are shared at the end of each lab.

Q: What happens if I can’t order all the required hardware in time?
A: This won’t prevent you from attending the course, as fallback instructions with QEMU emulated hardware will be provided. However, you should do your best to avoid such an issue, as some labs will be less exhaustive without real hardware. In addition, working with real hardware helps to grasp the difference between the build machine and the target hardware.

See also our FAQ for all types of courses and our sustainability efforts.