• Tutorials
  • Erste Schritte mit Yocto auf dem AM335x BeagleBone

    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_INSTALL hinzufü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.

    profile image of Martin Mitkov

    Martin Mitkov

    Martin is a founder and CEO of Mitkov Systems GmbH.

    More posts from Martin Mitkov