With the decrease in cost of microprocessors and ARM cores, embedded Linux systems have become more accessible to the general public. Sure, it’s easy to just slap an Arduino on your project and call it done, but what if you want to go one step further and actually make your own Linux solution? The development team behind the open source Yocto Project have made compiling a custom Linux image simpler than ever.
The goal of Yocto Project is to take the complexity out of building and maintaining a custom embedded Linux image. They plan to achieve this by creating a wrapper around pre-existing build tools and build systems, as well as collaborating with OpenEmbedded. By using the metadata syntax of OpenEmbedded, they are able to maintain familiarity for developers while also providing an ease of entry for newcomers.
The Yocto project uses board support packages (BSP), which contain a set of software and build recipes that are ready to use for specific boards and architectures. For instance, you can download a BSP for a Beaglebone board, and modify the build recipes to exclude or add more features for your specific application. This also makes it extremely simple to maintain up-to-date software because the tools automatically download the latest releases from online repositories.
Figure 1: The Yocto Project Development Environment (Source: yoctoproject.org)
To make the build process even simpler, Yocto team has recently release a GUI for the BitBake build tool. Bitbake is “the tool used by the OpenEmbedded build system to process project metadata.” This tool allows developers to customize build recipes, compile images, emulate images in QEMU, and also write images to USB drives to run on your target device. Prior to HOB (a GUI for BitBake), developers had to manually enter commands to run scripts that did each of these steps. I believe this is by far the simplest and most user friendly way to get into custom embedded Linux design. You can read the BitBake User Manual posted on Yoctoproject.org to learn more about it.
Figure 2: Mouser has >600 Single Board Computers in stock now, including the new Intel NUC Atom™ E3815 Board & Kit
There is plenty more information available on the Yocto Project website as well as their Wiki page. If you're really interested, below is a video that takes you through the entire process of a basic build of an x86 image. I obviously can't cover everything about the Yocto Project here, but hopefully I've whet your appetite. If you plan on going further, make sure to check out Mouser's large collection of single board computers. I'd love to hear your feedback about the Yocto project in the comments below.
Daniel is a Computer Engineering student at Penn State University. He enjoys embedded systems design, and fault testing digital logic. He is currently working on hardware for an open source home automation system focused around security and portability.
Privacy Centre |
Terms and Conditions
Copyright ©2021 Mouser Electronics, Inc.
Mouser® and Mouser Electronics® are trademarks of Mouser Electronics, Inc. in the U.S. and/or other countries.
All other trademarks are the property of their respective owners.
Corporate headquarters and logistics centre in Mansfield, Texas USA.