Tuesday 22 May 2018

Developing & Delivering KnowHow

Home > Training > Designing Embedded Systems with Yocto

F2F trainingDesigning Embedded Systems with Yocto

Standard Level - 3 days

view dates and locations

The Yocto Project is ideal for rapid prototyping and provides the tools and processes required to develop an embedded Linux-based product. The collaboration has widespread support from leading hardware manufacturers, open-source operating systems vendors, and electronics companies looking to address the challenges of developing embedded technology.

This course from Doulos Embedded has been designed to help you understand how to use the Yocto Project tools to manage key components of a Linux distribution: toolchains, bootloaders, kernels and package management systems. You will learn how to use a Yocto Project based toolchain and tools to develop, debug and test your software, as well as how to use Yocto to customize and maintain an Embedded Linux distribution for multiple boards.

Who should attend?

  • Engineers who are migrating to a Yocto Project based distribution environment
  • Project managers and engineers who are evaluating the use of Linux for their projects
  • Project managers and engineers who are considering supporting their own Linux distribution and tools
  • Engineers responsible for build systems and software releases

Project managers: This course is designed for those looking to maximise their effectiveness in utilising Yocto to complete embedded systems projects on time and in budget. New Linux projects and projects, which will require a long term maintenance cycle, would benefit from investigating the components of the Yocto Project. The Yocto Project infrastructure is suitable for Linux projects of any size. Starting from a minimal Linux system, it can be scaled up by integrating additional software in a managed environment.

Engineers: This course outlines how development teams can directly benefit from the tools and SDKs produced by the build system. It clearly separates development cycle tasks from the tasks required to integrate, maintain and distribute software.   

Pre-requisites

Delegates must have attended Developing with Embedded Linux or an equivalent course, or have some experience of using Linux for Embedded Systems. Please contact Doulos to discuss and assess your specific experience against the pre-requisites.

Please contact the Doulos team to discuss your specific project and hardware requirements.

Course materials

Doulos course materials are renowned for being the most comprehensive and user friendly available. Their unique style, content and coverage has made them sought after resources in their own right. The materials include fully indexed class notes creating a complete reference manual.

Structure and Content

Yocto Kick-start:

  • What is Yocto?
  • Host setup & system requirements
  • Downloading Yocto
  • Embedded Linux components
  • Using Yocto to build U-Boot, a Linux kernel and a filesystem
  • Booting a Linux board

Yocto Build System:
  • Bitbake and OpenEmbedded
  • Metadata file types
  • User configuration files
  • Layers, recipes and classes
  • Using Hob to build an image

Yocto Outputs:
  • A closer look at the deploy directory
  • The sysroot directories
  • The working directories
  • The Yocto SDKs   
  • The package feeds

Manage Custom Layers:
  • Appending packages to a filesystem image
  • Managing new layers using Git
  • Image and package recipes
  • Using layers to modify recipes
  • Creating a new distribution

Package Management
  • Linux package management tools
  • Package updates through HTTP
  • Package release versioning
  • Debug and release packages (split)

The BitBake Tool
  • The global datastore
  • Conditional variable assignment
  • Functions and tasks

Build System Trouble Shooting
  • BitBake log files
  • QA error messages
  • Using the BuildHistory
  • Changing recipe build features

Development Workflow
  • Choosing a toolchain mode (TCMODE)
  • Developing inside the Yocto build system
  • Using a pre-built SDK
  • Development and debug image features
  • TFTP boot and NFS root filesystems

Development Tools:
  • Building projects using Makefile, Autotools, Cmake or Qmake
  • Debugging an application from the command line (gdbserver)
  • Using the Eclipse remote tools (TCF)
  • Systems and application profiling tools
  • Re-building U-Boot
  • Re-building the Linux kernel
  • Automated tests

Application Integration:
  • Creating a new application package layer
  • Managing package dependencies
  • Masking recipes
  • Choosing Yocto graphics back-ends
  • Managing licence files

Systems Integration:
  • Creating a new BSP layer
  • Patching existing kernel/U-boot code
  • Linux-yocto compatible kernels
  • Kernel out-of tree module recipes
  • Managing multiple board configurations

Additional Yocto Layers
  • Finding new Yocto compatible layers
  • Exploring meta-browsers
  • Exploring meta-security
Course Dates:
June 19th, 2018 San Jose, CA Enquire
June 25th, 2018 Ringwood, UK Enquire
July 3rd, 2018 Munich, DE Enquire
August 21st, 2018 Austin, TX Enquire
August 21st, 2018 Boston, MA Enquire
October 16th, 2018 Munich, DE Enquire
October 16th, 2018 Chicago, IL Enquire
October 29th, 2018 Ringwood, UK Enquire
November 5th, 2018 San Jose, CA Enquire
indicates CONFIRMED TO RUN courses.

Looking for team-based training, or other locations?

Complete an on-line form and a Doulos representative will get back to you »

Back to top
Privacy Policy Site Map Contact Us