TipsAndTricks/Building and booting for Joule or MinnowBoard

This page is currently in progress.
== Building an image ==
1. clone these repos:
 git clone git://git.yoctoproject.org/poky
 git clone git://git.yoctoproject.org/meta-intel
2. setup your environment:
 cd path/to/poky
 . oe-init-build-env
 echo 'BBLAYERS += "/path/to/meta-intel"' >> conf/bblayers.conf
 echo 'MACHINE = "intel-corei7-64"' >> conf/local.conf
3. build an image!
 bitbake core-image-sato
or
 bitbake core-image-minimal
This step can take a while. The second option is much quicker, but a less useful image.
== Flash your image onto boot media ==
The produced images will be deployed into the tmp/deploy/images/intel-corei7-64/ directory.
Two types of bootable images are produced by default, wic and hddimg.
wic: a standalone image intended to be flashed to the final install location.
hddimg: a live image intended to be used to evaluate the image or install the image elsewhere
For the Joule, you will need to flash the hddimg if you want to install your image to the eMMC located on the board. For a MinnowBoard, the wic image is usually recommended unless you have a Silverjaw lure and mPCI-E SSD.
Ready and plug in your install media to your workstation.
USB devices can usually be found under /dev/sdX where X is some letter. SD cards are usually found under /dev/mmcblkZ where Z is a number. Run the following immediately after plugging in your install media to figure out where it is:
 dmesg | tail
Finally, use the dd utility to flash the image to the board.
 sudo dd if=tmp/deploy/images/intel-corei7-64/core-image-minimal-intel-corei7-64.wic of=/dev/YOUR_BLOCK_DEVICE
Replace core-image-minimal-intel-corei7-64.wic with whichever image target you prefer.
== Booting the image ==
=== MinnowBoard instructions ===
==== Board setup ====
Connect a monitor to the micro HDMI port and/or connect the serial port (six-pin connector) to your workstation.
Connect a keyboard if using a monitor and HDMI. Otherwise, use your favorite serial terminal program.
The serial port runs at 115200 baud and 8 bits by default. It will enumerate on your workstation as /dev/ttyUSBX, where X is a number. Use 'dmesg | tail' to find out which if you are unsure.
See here for more information.
==== Booting ====
Insert the boot media and connect the power cable. You will be presented with the following:
 >>>>Start boot option, Press <F2> or < DEL> to enter setup page(5 Sec)...
Either wait out the timer or repeatedly press enter to get past this.
Depending on your firmware configuration, you may be presented with either a boot prompt, or an EFI command line.
If you are at a command line, type the following, then press enter:
 bootx64
Otherwise, just press enter at boot prompt.
Assuming all goes well, you should get a login prompt. The default user is "root" with no password.
=== Joule instructions ===
==== Board setup ====
Connect a monitor to the micro HDMI port and/or connect the serial port (micro USB connector) to your workstation.
Connect a keyboard if using a monitor and HDMI. Since there is only one USB port, you will need to plug in a USB hub first if you are using USB boot media. Otherwise, use your favorite serial terminal program.
The serial port runs at 115200 baud and 8 bits by default. It will enumerate on your workstation as /dev/ttyUSBX, where X is a number. Use 'dmesg | tail' to find out which if you are unsure.
==== Booting ====
Insert the boot media and connect the power cable.
The Joule will likely attempt to boot from the eMMC first. Stop this by pressing F7 at the first splash screen. This will bring you to the boot manager. Note: if you are connected to a serial port via minicom (and maybe screen too? ) hitting F7 just advances you to the default as Minicom is eating some part of the keystroke. To get F7 to work correctly, you need to hit it from a keyboard directly connected to the board.
From here, select "EFI USB Device" if your boot media is a USB flash drive, or "EFI uSD Device" if your boot media is a microSD card.
You should now be at the bootloader.
With the wic image, you will have only the "boot" and "Reboot Into Firmware Interface" options. Select "boot" to boot.
With the hddimg, you will have "Joule / Broxton-m" and "Joule / Broxton-m Install" options.
Select the prior to boot or the latter to begin installation.
== Troubleshooting ==
* My system hangs when I try to install?
** Most likely your system didn't hang, its just trying to run the installer from a different console. Try rearranging the "console=ttyX" sections in the kernel command line.
* Add more issues here...