Der Texas Instruments AM335x SoC, der in Boards wie dem BeagleBone Black und BeagleBone Green verwendet wird, ist eine vielseitige ARM Cortex-A8 Plattform, die sowohl im Prototyping als auch in industriellen Anwendungen beliebt ist. Mit dem Yocto Project können Sie ein hochgradig angepasstes Linux-System erstellen, das genau auf Ihre Hardware- und Softwareanforderungen zugeschnitten ist.
Dieser Leitfaden führt Sie durch die wichtigsten ersten Schritte, um Yocto auf einem BeagleBone zum Laufen zu bringen.
#1. Vorbereitung der Host-Umgebung
Installieren Sie auf Ihrem Linux-Entwicklungsrechner (empfohlen: Ubuntu/Debian) die erforderlichen Pakete:
1sudo apt update
2sudo apt install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm
Hinweis: Stellen Sie sicher, dass mindestens 50 GB freier Speicherplatz und 8 GB RAM verfügbar sind, um einen reibungslosen Build-Prozess zu gewährleisten.
#2. Yocto-Quellen herunterladen
Klonen Sie die Poky-Referenzdistribution:
1git clone git://git.yoctoproject.org/poky -b scarthgap
2cd poky
Fügen Sie häufig verwendete Layer für BeagleBone hinzu:
1git clone https://github.com/openembedded/meta-openembedded.git -b scarthgap
2git clone https://github.com/meta-yocto/meta-ti.git -b scarthgap
#3. Build-Umgebung initialisieren
Starten Sie das Yocto-Setup-Skript:
1source oe-init-build-env
Dies erstellt ein Verzeichnis build/ mit den Konfigurationsdateien.
#4. Konfiguration für BeagleBone (AM335x)
Bearbeiten Sie conf/local.conf:
1MACHINE ?= "beaglebone-yocto"
Optional können Sie den Image-Typ erweitern:
1IMAGE_FSTYPES += "tar.xz"
Aktualisieren Sie conf/bblayers.conf, um die Layer einzubinden:
1BBLAYERS ?= " /path/to/poky/meta /path/to/poky/meta-poky /path/to/meta-openembedded/meta-oe /path/to/meta-ti "
#5. Erstes Image bauen
Starten Sie den Build-Prozess:
1bitbake core-image-minimal
Der erste Build kann mehrere Stunden dauern.
Die erzeugten Images befinden sich anschließend in:
1build/tmp/deploy/images/beaglebone-yocto/
#6. Image auf SD-Karte flashen
Schreiben Sie das erzeugte Image auf Ihre SD-Karte (ersetzen Sie /dev/sdX durch Ihr SD-Kartengerät):
1xzcat core-image-minimal-beaglebone-yocto.tar.xz | sudo dd of=/dev/sdX bs=4M status=progress
2sync
Stecken Sie die SD-Karte in das BeagleBone und schalten Sie es ein.
#7. Nächste Schritte
Nachdem Sie nun ein funktionierendes Yocto-Image auf Ihrem AM335x BeagleBone haben, können Sie:
- Eigene Softwarepakete über
IMAGE_INSTALLhinzufügen. - Einen eigenen Yocto-Layer für Anwendungen, Treiber und Konfigurationen erstellen.
- Kernel-Anpassungen und Device Tree Overlays für AM335x-Peripherie erkunden.
- Schnittstellen wie I²C, SPI, UART, CAN und PRU-Subsysteme aktivieren.
#Referenzen
✅ Mit diesem Setup haben Sie die ersten Schritte mit Yocto auf dem AM335x BeagleBone erfolgreich gemeistert – eine solide Grundlage für den Aufbau maßgeschneiderter Embedded-Linux-Systeme.