{"slug": "running-yoe-on-a-beagle-play", "title": "Running [yoe] on a Beagle Play", "summary": "The yoe build system now supports the Beagle Play board, booting on a TI AM625 processor. The board support package was largely generated by Claude Code from a single prompt, demonstrating AI-assisted porting. The project aims to make new SoC support cheap and fast.", "body_md": "`[yoe]`\n\nnow boots a Beagle Play. The\n[latest video](https://youtu.be/pL3ze_LuJPc) walks through building the image,\nflashing the SD card, and watching the TI AM625 step through its four-stage\nboot. But the more interesting story is how the BSP got written: I pointed\nClaude Code at the existing `meta-ti`\n\nYocto layer, asked it to “create machine\nsupport for a Beagle Play,” and most of it landed in one shot.\n\n`yoe update`\n\nand `yoe sync`\n\nto refresh the modules, then `yoe`\n\nto open the TUI.\nPick `beagleplay`\n\nfrom the machine list, pick the development image, press `F`\n\nto flash. `[yoe]`\n\nfigures out which block devices are removable so you can’t\naccidentally write to your workstation’s main disk, remembers the device you\nused last time, and writes the SD card.\n\nHold the user button down while powering on the board and it boots from SD instead of the on-board eMMC — useful so an old eMMC bootloader can’t sneak into the chain. The serial console then shows the boot stepping through its stages.\n\nThe AM625 is not a simple part. The on-chip ROM brings up a 32-bit R5 core and\nloads a first-stage SPL onto it. That hands control to the 64-bit A53 cores,\nwhich load a second SPL, then U-Boot, then the kernel. So `[yoe]`\n\nneeds two\nU-Boot binaries (one 32-bit, one 64-bit), an extra 32-bit ARM toolchain\nalongside the default 64-bit one, and a pile of Python build-time tools that the\nTI build scripts call out to.\n\nThose Python tools come straight from Alpine packages — no custom recipes, no\nsource builds. Hitting `e`\n\non a unit pops you into your editor, and the\ndependency list reads as a flat enumeration of `py3-*`\n\npackages.\n\nThe build itself runs in a `bwrap`\n\nsandbox against a per-unit sysroot.\nDependencies are hard-linked in, so it’s fast, and the unit only sees what it\ndeclared — nothing leaks from a sibling. That sandbox is what turns “add another\n`py3-*`\n\nand rebuild” into a safe operation instead of a debugging adventure.\n\n`[yoe]`\n\nrests on a bet: that an AI agent can take a Yocto BSP from a vendor’s\nlayer and reshape it into a `[yoe]`\n\nmodule quickly. If that bet doesn’t hold,\nthe project doesn’t work — every new SoC becomes a multi-week porting job, and\nthe productivity case collapses.\n\nThe Beagle Play is the first real test. It’s not a Raspberry Pi clone with a mainline kernel and a one-line config. It’s a current-generation TI part with vendor-specific firmware, a 32-bit SPL stage, and a custom toolchain requirement. Claude wrote most of it from a single prompt. The remaining work was iterating on missing Python dependencies — a build would fail, the error named a missing tool, the fix was another Alpine package. A handful of cycles later, the image booted.\n\nThat’s the kind of porting loop the project needs to be cheap, and right now it looks like it is.\n\nMore BSPs. The\n[Beagle Play machine docs](https://docs.yoebuild.org/machine-beagleplay.html)\ncover how to use this one, and the [Videos page](https://yoebuild.org/videos/) has the full\nwalkthrough set. If there’s a board you’d like to see ported next,\n[open a discussion](https://github.com/orgs/yoebuild/discussions) or send a\n[note](mailto:info@yoebuild.org?subject=%5Byoe%5D%20BSP%20feedback).", "url": "https://wpnews.pro/news/running-yoe-on-a-beagle-play", "canonical_source": "https://yoebuild.org/blog/running-on-beagle-play/", "published_at": "2026-05-21 00:00:00+00:00", "updated_at": "2026-06-18 17:40:43.768018+00:00", "lang": "en", "topics": ["artificial-intelligence", "ai-tools", "developer-tools"], "entities": ["Beagle Play", "TI AM625", "Claude Code", "Yocto", "Alpine", "yoebuild"], "alternates": {"html": "https://wpnews.pro/news/running-yoe-on-a-beagle-play", "markdown": "https://wpnews.pro/news/running-yoe-on-a-beagle-play.md", "text": "https://wpnews.pro/news/running-yoe-on-a-beagle-play.txt", "jsonld": "https://wpnews.pro/news/running-yoe-on-a-beagle-play.jsonld"}}