Creating a Yocto image for the Intel® Galileo board using split layers
This is a guide for building images from source for the Intel® Galileo board, part of the Intel® IoT Developer Kit.
Get access to the new Intel® IoT Developer Kit, a complete hardware and software solution that allows developers to create exciting new solutions with the Intel® Galileo and Intel® Edison boards. Visit the Intel® Developer Zone for IoT.
This is a guide for building images from source for the Intel® Galileo board, part of the Intel® IoT Developer Kit. First, you need to get the various layers we used to compile an image. You'll need to have a fairly large amount of disk space (~20GB) and be running a modern 64-bit version of the Linux* OS. We've tried it on Debian 7 and openSUSE 12 and expect others will work as well.
The images are based on the 'daisy' branch of poky:
$ git clone --branch dizzy git://git.yoctoproject.org/poky iotdk $ cd iotdk
Add a number of layers on top:
$ git clone --branch dizzy git://git.yoctoproject.org/meta-intel-quark $ git clone --branch dizzy git://git.yoctoproject.org/meta-intel-iot-middleware $ git clone --branch dizzy git://git.yoctoproject.org/meta-intel-galileo $ git clone git://git.yoctoproject.org/meta-intel-iot-devkit $ git clone --branch dizzy http://github.com/openembedded/meta-openembedded.git meta-oe
Source the oe env vars for OE:
$ source oe-init-build-env
You should be in a newly created build/ subdirectory. Set up your layer configuration from this directory by opening a new file, conf/bblayers.conf. The file's contents should read something like this, note that you need to change the layer paths to be changed.
LCONF_VERSION = "6" BBPATH = "${TOPDIR}" BBFILES ?="" BBLAYERS += " \ /home/brendan/iotdk/meta \ /home/brendan/iotdk/meta-yocto \ /home/brendan/iotdk/meta-yocto-bsp \ /home/brendan/iotdk/meta-oe/meta-oe \ /home/brendan/iotdk/meta-oe/meta-filesystems \ /home/brendan/iotdk/meta-intel-quark \ /home/brendan/iotdk/meta-intel-galileo \ /home/brendan/iotdk/meta-intel-iot-middleware \ /home/brendan/iotdk/meta-intel-iot-devkit"
Set up the distro and your build settings. Place the following in a new file called conf/auto.conf
:
DISTRO = "iot-devkit-multilibc" PACKAGE_CLASSES = "package_ipk" MACHINE = "quark"
$ bitbake iot-devkit-prof-dev-image
After this, you should have nearly everything. The next step is to make a bootable uSD card image. We use a tool called 'wic':
$ ../meta-intel-iot-devkit/scripts/wic_monkey create -e iot-devkit-prof-dev-image ../meta-intel-iot-devkit/scripts/lib/image/canned-wks/iot-devkit.wks
Once wic has finished it will print the path to a .direct file in /var/tmp/wic/build/. Write it with dd to your uSD card (remember to use sync
before removing it!) and pop it in your Intel Galileo board.
Start inventing today with the Intel® IoT Developer Program which offers knowledge, tools, kits and a community of experts to quickly and easily turn your innovative ideas into IoT Solutions.
Dream it, Build it with the Intel® IoT Developer Kit for Intel® Edison and Intel® Galileo platforms. These kits are versatile, performance-optimized and fully integrated end-to-end IoT solutions supporting a variety of programming environments, tools, security, cloud connectivity and hardware.
For more resources and to learn how the new Intel® IoT Developer Kit v1.0 can help streamline your IoT projects:
- Download the Intel® IoT Developer Kit
- Visit the Intel® Developer Zone for IoT
- Attend one of our Roadshows for hands-on training in creating your own IoT projects