Dive into Yocto, Workshop

Zilogic is organizing a workshop on the Yocto Project. Yocto Project is an open source embedded Linux build system similar to Buildroot. While Buildroot uses "make" for task scheduling, Yocto uses bitbake, a tool specialized for integration builds. Yocto in addition provides support for packaging, supports a wide range of software packages, and a layering mechanism to easily extend the base set of packages.

This workshop will focus on,

  • Understanding BitBake, the cornerstone of Yocto

  • How Yocto works

  • Customizing Yocto for a project.

Venue

The workshop venue address is provided below

FutureTech Corporate Services
MF-14, CIPET Hostel Road,
SIDCO Industrial Estate,
Ekkaduthangal, Guindy,
Chennai

Location of the venue on Google maps: here

Date and Time

  • September 12, 9:00 AM to 6:00 PM

  • September 13, 9:00 AM to 1:00 PM

Workshop Fee

This is a paid workshop, and the workshop fee is Rs. 1600 (inclusive of lunch). We currently support only netbanking / offline payment. Detailed payment options are listed /payment.html[here]. The item code for this workshop is MTP1209.

Pre-requisites

  • Should be familiar with the shell scripting

  • Should be familiar with using a Linux based embedded platform, like Raspberry Pi, Beagle Bone, Panda, Galileo, etc.

  • Familiarity with Python and Linux package managers like RPM and DPKG, will be helpful.

Hardware / Software Requirements

  • Laptop (min. 1 GB RAM and 10 GB free disk space) with either Windows / Linux (Linux Preferred)

  • VirtualBox (>= 4.1.18) for Host PC emulation (Disk image will be provided at the venue)

  • Qemu (>= 1.1.2) for Target Board emulation

  • Putty (>= 0.62) for accessing Target Board

Schedule

Day 1 (12 Sept, 9:00 AM to 6:00 PM)

Building a Root Filesystem, Manually

  • Booting through QEMU

  • Building Rootfs with bash and coreutils

  • Handling Dependencies: less and libncurses

Hello World in BitBake

  • Setting up BitBake and Configuration Files

  • Stages in Build

  • Writing Recipes

Tea Break

Classes and Layers in Bitbake

  • Managing Dependencies

  • Commonizing Definitions in Class

  • Layers in BitBake

Building the Root Filesystem with BitBake

  • Writing Recipes for bash, less and coreutils

  • Building Rootfs using BitBake

Lunch Break

BitBake Helpers

  • Using Fetcher

  • Simplifying Recipes using Classes

Build and Using Packages

  • Advantage of Managed Rootfs

  • Creating deb Packages using FPM

  • Setting up Package Repo with reprepo

  • Installing Packages in Rootfs with multistrap

Tea Break

Yocto Build Process

  • Distribution, Image and Machine

  • Building Poky distribution

  • Folder Structure

  • Customizing Distribution

  • Creating Distribution

  • Priority in Layers

  • Extending & Overriding Recipes

Day 2 (13 Sept, 9:00 AM to 1:00 PM)

Mini Project: Building BSP for Connected IO

  • Create Appropriate Layers

  • Add Recipe for App

  • Customize to Boot the App on Startup