24/07/2026
[𝗬𝗼𝗰𝘁𝗼-𝗕𝗕𝗕] 𝟮𝟬. 𝗕𝘂𝗶𝗹𝗱 𝗬𝗼𝗰𝘁𝗼 𝟲.𝟬 𝘄𝗿𝘆𝗻𝗼𝘀𝗲 𝗰𝗵𝗼 𝗯𝗼𝗮𝗿𝗱 𝗕𝗲𝗮𝗴𝗹𝗲𝗯𝗼𝗻𝗲 𝗕𝗹𝗮𝗰𝗸
(Mình có lập 1 group Facebook về Chia sẻ kiến thức lập trình nhúng, mong được các bạn tham gia ủng hộ: https://www.facebook.com/groups/1291288389349930)
Vậy là tròn 1 năm kể từ ngày mình đăng bài viết đầu tiên về build Yocto cho Beaglebone Black. Ban đầu mình dùng Kirkstone, sau đó lên Scarthgap và nghĩ nó sẽ khá bền. Thế nhưng khi Yocto Project ra mắt phiên bản 6.0 Wrynose, cấu trúc project đã có sự thay đổi khá lớn. Mình viết bài này để cập nhật cách build mới nhất, vì mình nghĩ từ bản 6.0 trở đi, cấu trúc này sẽ được giữ nguyên làm chuẩn.
Điểm thay đổi lớn nhất ở core Yocto lần này nằm ở tư duy Distro. Trước đây đi học, chúng ta thường clone repo "poky" (reference distro) và build quanh nó. Nhưng thực tế đi làm, các dự án luôn define distro riêng. Do đó, Yocto hiện tại không support poky dưới dạng repo độc lập nữa mà tách thành layer meta-poky. Nếu không dùng poky distro, chúng ta chỉ cần lấy lõi openembedded-core và các meta-layer cần thiết, giúp cấu trúc project chuyên nghiệp và chuẩn công nghiệp hơn.
✅Tóm tắt các bước thực hiện:
- Chuẩn bị môi trường host và cài đặt các package phụ thuộc mới.
- Khởi tạo thư mục layers chuyên biệt, clone bitbake, openembedded-core và các BSP layers cho BBB (meta-ti, meta-arm) theo branch Wrynose.
- Khởi tạo môi trường bằng script oe-init-build-env trực tiếp từ openembedded-core (mặc định sẽ là DISTRO="nodistro" thay vì poky như trước).
- Cấu hình file bblayers.conf bằng lệnh bitbake-layers add-layer và chọn MACHINE="beaglebone" trong local.conf.
- Tiến hành build hình ảnh hệ điều hành: bitbake core-image-minimal.
✅Note nhỏ cho ai làm theo:
- Script khởi tạo môi trường giờ lấy từ openembedded-core chứ không phải poky, nên nhớ chú ý đường dẫn source layers/openembedded-core/oe-init-build-env build-bbb.
- Việc chia phân vùng, flash OS vào thẻ nhớ và debug bằng UART các bạn vẫn có thể tham khảo lại bài Yocto-BBB 1 và 2 của mình nhé.
🎥 Chi tiết từng bước setup lệnh và giải thích cấu trúc mới mình có chia sẻ trong bài, các bạn có thể thực hành thử ngay trên board của mình!
👉Blog : https://embeddedlinux.blog/
👉Youtube : https://www.youtube.com/
👉Link post : https://embeddedlinux.blog/2026/06/20/yocto-bbb-20-build-yocto-6-0-wrynose-cho-board-beaglebone-black/
Vậy là tròn 1 năm từ hồi mình đăng bài đầu tiên về build Yocto cho Beaglebone Black. Ban đầu mình dùng phiên bản Kirkstone, sau đó update lên Scarthgap và mình nghĩ là nó sẽ khá bền :vv , nhưng lên…