
- 0[Yocto-BBB] 0. Theory, documents, and common commands in the Yocto series· A cheat sheet for the Yocto-BBB series: what Yocto, Poky, OpenEmbedded, BitBake, recipes and layers are, reference documents, and the Yocto and Linux commands used most often.
- 1[Yocto-BBB] 1. Build a Beaglebone Black image with the Yocto Project· Setting up an Ubuntu 22.04 host, cloning Poky Scarthgap with meta-openembedded, meta-arm and meta-ti, building core-image-minimal for MACHINE beaglebone, and flashing the .wic.xz with bmaptool.
- 2[Yocto-BBB] 2. UART Debug Board and Bitbake Append· Connecting a PL2303 USB-UART adapter to the BeagleBone Black and opening it with screen, then how .bbappend files and layer priority work, with a three-layer example and the ?=, ??=, := and += operators.
- 3[Yocto-BBB] 3. Adding a password for the user· Creating the meta-bbb layer and a core-image-minimal.bbappend that inherits extrausers and sets a hashed root password with EXTRA_USERS_PARAMS.
- 4[Yocto-BBB] 4. Changing the Distro Description· Where the "Poky (Yocto Project Reference Distro)" login text comes from (DISTRO_NAME into /etc/issue) and how to replace it with your own distro conf in meta-bbb.
- 5[Yocto-BBB] 5. Changing the banner after login· Showing a custom banner with uptime, hostname, disk and memory after login via /etc/profile.d, packaging the script in a custom-banner recipe, and resizing the root partition of the wic image.
- 6[Yocto-BBB] 6. SSH into the board over Ethernet· A custom-image recipe with dhcpcd, iproute2, iputils and openssh for Ethernet and SSH, then the extra packages (bash, tar, xz, procps, coreutils, curl, libstdc++, libatomic) that VS Code Remote-SSH needs.
- 7[Yocto-BBB] 7. Adding a driver for a USB wifi adapter· Checking Linux compatibility of a TP-Link WN722N v2, writing an rtl8188eu kernel module recipe (license, SRC_URI, SRCREV, inherit module, autoload), then connecting to wifi with wpa_supplicant and SSH.
- 8[Yocto-BBB] 8. Connecting an SSD1306 0.96 inch OLED over I2C· Adding gcc, nano and i2c-tools to the image, confirming which I2C bus is enabled from the AM335x memory map, detecting the SSD1306 with i2cdetect and printing text from a small C program.
- 9[Yocto-BBB] 9. Using devtool, creating patches and installing IPK files· devtool add, modify and finish for the ssd1306 recipe and what the workspace layer does, creating a git patch and applying it through SRC_URI, and installing the resulting .ipk on a running board with opkg.
- 10[Yocto-BBB] 10. Booting from eMMC· Why boot the BeagleBone Black from eMMC, the lazy way (wipe the eMMC so it falls back to the SD card), and the proper way: partition, format and copy the rootfs and boot files to eMMC, then fix fstab and extlinux.conf.
- 11[Yocto-BBB] 11. Transferring files over UART· Comparing SD card, SCP, TFTP and UART for getting files onto a board, configuring minicom, adding lrzsz to the image, and sending files with ZMODEM using rz.
- 12[Yocto-BBB] 12. Transferring files over TFTP· What TFTP is, adding tftp-hpa to the image (and the meta-networking and meta-python layers it needs), static IPs over a direct Ethernet cable, setting up tftpd-hpa on the host and getting/putting files from the board.
- 13[Yocto-BBB] 13. Building Weston, fixing input and dnd errors· Getting Weston running on the BeagleBone Black: systemd, downgrading to Weston 8.0 from dunfell, a weston.service with XDG_RUNTIME_DIR, the Adwaita cursor theme and libinput, plus the debugging path that led there.
- 14[Yocto-BBB] 14. X11 and RDP (Remote Desktop Protocol)· Remote desktop into core-image-sato on the BeagleBone Black with xrdp and xorgxrdp: systemd, PAM and X11 distro features, RSA keys, a startwm.sh session script and xfreerdp from the host, with each step explained.
- 15[Yocto-BBB] 15. Changing the Boot Logo· Finding where psplash gets its splash image in Poky, generating a psplash image header from your own PNG with make-image-header.sh, and rebuilding a GUI image for the BeagleBone Black.
- 16[Yocto-BBB] 16. Enabling ADB, SSH port forwarding· What ADB is useful for outside Android, building android-tools adbd into a Yocto image for the BeagleBone Black, fixing the usb-debugging condition, and forwarding SSH over the USB cable for VS Code.
- 17[Yocto-BBB] 17. Installing Links-X11, browsing the web on core-image-sato· Adding the links-x11 browser to core-image-sato on the BeagleBone Black, powering a screen and USB wifi at the same time, fixing DNS name resolution, and browsing with and without the GUI.
- 18[Yocto-BBB] 18. GDB debugging through recipe-sysroot· What a recipe-sysroot is, building a tiny example recipe, running its ARM binary under QEMU user mode as a gdb server, and debugging it from VS Code with gdb-multiarch on the laptop without any hardware.
- 19[Yocto-BBB] 19. Sharing sstate to speed up builds· Serving a sstate-cache folder over HTTP with nginx, pointing another machine at it with SSTATE_MIRRORS and a hash equivalence server, and what OEEquivHash changes compared with OEBasicHash.
- 20[Yocto-BBB] 20. Building Yocto 6.0 Wrynose for the Beaglebone Black· What changed in Yocto 6.0 Wrynose (no more poky repo, layers cloned side by side, nodistro by default) and the steps to build for MACHINE beaglebone with openembedded-core, meta-ti and meta-arm.