Working with Yocto

Instructor-led online, hands-on program on building Embedded Linux platform using Yocto

Who is it for

This course is for Linux developers who are looking to work on building embedded Linux using the Yocto framework

What you will learn

Understand how to engage Yocto and its tools to create and maintain custom Linux-based systems for embedded products 

Who will be your Mentor

Learn from Raghu Bharadwaj, India’s leading Linux mentor, consultant and author

Program Contents

Embedded Linux System
  • Introduction to embedded Linux
  • Key components
  • Bootrom
  • Bootloader
  • Application binaries & rootfs
  • Init package
  • Build steps
Introduction to Build Systems
  • Build practices
  • Need for a build system
  • How build systems are structured
  • Popular build systems
  • Introduction to Buildroot project
  • Structure of Buildroot and build trees
  • Toolchain configuration
  • Kernel configuration
  • Rootfs configuration
Deployment & Test
  • Boot from SD card
  • TFTP and NFS
  • Initramfs
  • Deploying applications


Introduction to Yocto
  • Yocto project
  • Openembedded core
  • Poky
  • Bitbake
  • Setting up the host system
  • Introduction
  • Poky repository
  • Preparing the build machine
  • bblayers.conf and local.conf
  • Image recipe
  • Generating image for the emulator (QEMU)
  • Build system
  • BitBake and Metadata
  • Recipes
  • Classes
  • Configuration files
  • Types of layers (BSP, distro, software)
  • BitBake internals
  • Tasks
  • Introduction to layers
  • Creating a layer
  • File structure & directories
  • layer.conf variables
  • Bitbake-layers and yocto-check-layer tools
  • Introduction to recipes
  • Recipes vs packages
  • Recipe structure
  • Key variables
  • Inheriting classes and implementing tasks
  • Recipe processing walk-through
Recipes Advanced
  • Advanced concepts
  • BitBake variable assignment syntax
  • Overrides and variable flags
  • Append files
  • Include and require directives
  • Versioning and priority
  • Debugging recipes
  • Devshell, oe-pkgdata-util and other tools
  • Customizing images
  • Creating image recipes
  • Package groups
  • Image features
  • Adding users and groups
  • Configuring file and directory permissions
  • Post-install scripts
  • Changing the image format
  • Creating distro configuration files
  • Distribution variables
  • Distro features
  • Enabling package management,
  • Tips for customization and layer management.
  • BSP layers development
  • Creating a BSP layer
  • Machine configuration files
  • Machine common variables
  • U-Boot and kernel related variables
  • Machine features
  • Creating bootloader recipes
  • Creating kernel and kernel module recipes
  • Applying patches and changing kernel configuration
  • Kernel advanced metadata
  • Working with SDKs
  • Core components of (toolchain, sysroot, scripts and additional tools)
  • Toolchain types
  • Generating SDKs
  • Meta-toolchain
  • populate_sdk and populate_sdk_ext
  • Installing and using SDKs
  • Extensible SDK (eSDK) and devtool

Who Should Enroll

  • Linux programmers looking to upskill on embedded Linux development
  • Developers looking to build & maintain Embedded Linux systems using the Yocto project
  • Kernel programmers looking to work on the Yocto project or Embedded Linux building process

Program Schedules & Fee

  • Program Starts: TBA
  • Session Timings: 10am – 1:30pm (Sat. & Sun.)
  • Training Mode: Online, live, interactive (zoom)
  • Program Duration: 20+ hours
  • Program Fee: ₹15,222/- (Inclusive of GST)

Support Services

  • Missed sessions: Backup recording will be provided for missed sessions
  • Offline support: Delivered via Whatsapp
  • Batch transfers: Available within 1 year
  • Placement support: Offered on program completion (any experience category)


“I highly recommend TECH VEDA, “Raghu Bharadwaj” is highly experienced and skilled in Linux kernel, device driver development and embedded domain. He knows exactly where students and fellow developers get stuck and will help you learn problem solving approaches”




“Raghu sir has this unique ability to keep our attention drawn to the overall framework of drivers in the hindsight, when we go deep into each interface and core concepts”


Slicon Labs


“The way Raghu sir simplified the Yocoto build system and made us work on each and every aspect practically, has made building embedded Linux systems a cakewalk”



Interested. Apply Now

On receiving the application, we will contact you with further registration process

Know your trainer


Raghu Bharadwaj

  • Leading Linux mentor. Trained over 40 clients including Xilinx, Qualcomm, Broadcom, NXP, Harman, Mercedes among others
  • Trained over 3000 participants across 7 nations
  • Attended by professionals from over 100 companies
  • Leading authority and speaker on the Linux Kernel


What are the pre-requisite skills to enroll for this program?

You must be good at Linux kernel programming.

How is the program delivered?

This program is delivered online through a live, interactive session. You must login whenever there is a live session to access it. This program may have few recorded sessions. 

What if I miss some sessions due to work or other issues?

Do not worry, we have it covered. If you miss any session due to any reason, you can request to listen the backup recording at your convenient time

What is the validity of my registration?

Your registration is valid for a period of 1 year. That is, after you make the payment you can take the program once within 1 year