Create projects
Before you build Digi Embedded Yocto, you need to create a platform-specific project.
| If you are using the Digi Embedded Yocto Docker container, the startup script offers to create a new project. If you already created one, go directly to Build images. You can also follow these steps to create a project manually. | 
Use the mkproject.sh script to check supported platforms:
$ source /usr/local/dey-3.2/mkproject.sh -lTo initialize the project and environment, use the mkproject.sh script.
For example, for the ConnectCore 6 SBC, do the following:
$ mkdir -p ${HOME}/workspace/ccimx6sbc
$ cd ${HOME}/workspace/ccimx6sbc
$ source /usr/local/dey-3.2/mkproject.sh -p ccimx6sbcThis initializes the project with a conf directory and two configuration files:
- 
bblayers.conf: The available layers are configured here.
- 
local.conf: Local configuration variables affecting only this project are customized here.
The mkproject.sh script sets the environment for the build in the current running terminal.
It also creates a dey-setup-environment script in the project’s root folder.
This script can safely be rerun over existing projects to set up the build environment on a new terminal.
| If you close your current terminal and open a new one, you must run the dey-setup-environmentscript before you use Digi Embedded Yocto. | 
Update existing projects
When updating your installation of Digi Embedded Yocto, you need to erase the tmp and sstate-cache directories from existing projects and build them from scratch.
Leaving the directories intact may result in problems in the build and the final images.
Build images
By default, ConnectCore 6 Digi Embedded Yocto images include the XWayland desktop backend.
To build Digi Embedded Yocto images, use the command bitbake <image-recipe> from your project’s directory.
For example:
$ bitbake dey-image-qt| The compilation can take several hours on a powerful state-of-the-art workstation, depending on the selected image recipe. | 
Inspect build deliverables
You can find generated images inside your project’s directory, in the <project_folder>/tmp/deploy/images/<platform> folder.
This directory contains the following files:
- 
Boot image, with the boot.vfatfile extension, which contains the Linux kernel, device trees and U-Boot scripts
- 
Root file system images in the following formats: - 
rootfs.ext4.gz, a compressed ext4 partition image that can be programmed into the eMMC or SD card after being decompressed
- 
rootfs.sdcard.gz, a compressed SD card image you can use to create a bootable SD card after being decompressed
- 
rootfs.tar.bz2, a compressed root file system tarball that you can use to set up a remote NFS share to boot from
- 
rootfs.manifest, a text file with the list of all the built packages
 
- 
- 
Recovery image, with the recovery.vfatfile extension, which contains the recovery Linux kernel, device tree files, and U-Boot scripts
- 
U-Boot images with the imxfile extension
- 
Linux kernel images with the binfile extension, which you can use to update an existing boot partition
- 
Linux kernel device tree images with the dtbfile extension, which you can use to update an existing boot partition
Build a software update package
To build a software update package, use the following command from your project’s directory:
$ bitbake dey-image-qt-swuThis will generate the update package under <project_folder>/tmp/deploy/images/<platform>:
dey-image-qt-swu-<platform>-<timestamp>.swuTo install the update package in your device, see Program firmware from Linux.
 
         
   
   
        