Skip to end of metadata
Go to start of metadata

This is a page about TI's Cortex-A8 based; BeagleBone Black.

Availability:

Boards:
BeagleBone Black (old) at Digi-Key
BeagleBone Black Rev B (2GB eMMC EOL) at Digi-Key
BeagleBone Black Rev C (4GB eMMC) at Digi-Key
BeagleBone BreadBoard Cape at Digi-Key
BeagleBone Breakout Cape at Digi-Key

Cables:
(USB to serial adapter) TTL-232R-3V3 at Digi-Key
HDMI-A Male to HDMI-D Male (1.5M) at Digi-Key
HDMI-A Male to HDMI-D Male (1.5M) at Digi-Key
HDMI-A Male to HDMI-D Male (2M) at Digi-Key

Basic Requirements:

ARM Cross Compiler: GCC

This is a pre-built (32bit) version of Linaro GCC that runs on generic linux, so 64bit users need to make sure they have installed the 32bit libraries for their distribution.

Debian based (deb)

extra

pkgs: (sudo apt-get update ; sudo apt-get install xyz)

Ubuntu 14.04 -> 15.10

 

libc6:i386 libstdc++6:i386 libncurses5:i386 zlib1g:i386

Debian 7, 8 & 9 (Stretch)

sudo dpkg --add-architecture i386

libc6:i386 libstdc++6:i386 libncurses5:i386 zlib1g:i386

Red Hat based (rpm)

extra

pkgs: (yum install xyz)

Red Hat/Centos/Fedora

 

libstdc++.i686 ncurses-devel.i686 zlib.i686

Download/Extract:

~/

Test: If this test fails, verify that you have the 32bit libraries installed on your development system.

~/

Bootloader: U-Boot

Das U-Boot – the Universal Boot Loader: http://www.denx.de/wiki/U-Boot
eewiki.net patch archive: https://github.com/eewiki/u-boot-patches
Download:

~/

Patches:

~/u-boot

Configure and Build:

~/u-boot

Linux Kernel

This script will build the kernel, modules, device tree binaries and copy them to the deploy directory.

Mainline

Download:

~/

For Mainline v3.8.x: (full cape support)

~/bb-kernel

For Mainline v4.1.x: (capemgr support)
see: BeagleBone Black#capemgr:v4.1.x+ for overlay building on target

~/bb-kernel

Build:

~/bb-kernel/

TI BSP

WARNING: do not use if you are not use to re-basing git branches, as this is based on http://git.ti.com/gitweb/?p=ti-linux-kernel/ti-linux-kernel.git;a=shortlog;h=refs/heads/ti-linux-3.14.y instead of a stable kernel branch. Thus you will have to do: (git checkout master -f ; git branch -D tmp ; git pull ; git checkout origin/ti-linux-3.14.y -b tmp) often..
Download:

~/

For TI v4.1.x:

~/ti-linux-kernel-dev

Build:

~/ti-linux-kernel-dev/

Root File System

Debian 8

User

Password

debian

temppwd

root

root

Download:

~/

Verify:

~/

Extract:

~/

Ubuntu 14.04 LTS

User

Password

ubuntu

temppwd

Download:

~/

Verify:

~/

Extract:

~/

Root File System (small flash)

A Root File System around 100Mb in size, for flash applications.

Debian 8 (small flash)

User

Password

debian

temppwd

root

root

Download:

~/

Verify:

~/

Extract:

~/

Setup microSD card

For these instruction we are assuming, DISK=/dev/mmcblk0, lsblk is very useful for determining the device id.

Erase partition table/labels on microSD card:

Install Bootloader:

~/

Create Partition Layout:
With util-linux v2.26, sfdisk was rewritten and is now based on libfdisk.

sfdisk >= 2.26.x
sfdisk <= 2.25.x

Format Partition:

Mount Partition:
On most systems these partitions may will be auto-mounted...

Backup Bootloader

This version of MLO/u-boot.img will be used on the "eMMC" flasher script on this page.

~/

Dealing with old Bootloader in eMMC

If you don't want to clear out the old Bootloader in eMMC add this uEnv.txt to /media/rootfs/

~/uEnv.txt
~/

Install Kernel and Root File System

To help new users, since the kernel version can change on a daily basis. The kernel building scripts listed on this page will now give you a hint of what kernel version was built.

Copy and paste that "export kernel_version=4.X.Y-Z" exactly as shown in your own build/desktop environment and hit enter to create an environment variable to be used later.

Copy Root File System

~/

Set uname_r in /boot/uEnv.txt

~/

Copy Kernel Files

Kernel Image:

~/

Kernel Device Tree Binaries:

~/

Kernel Modules:

~/

File Systems Table (/etc/fstab)

/etc/fstab

Networking

Edit: /etc/network/interfaces

Add:

/etc/network/interfaces

Networking: Using a shared SD card with Multiple BeagleBone

To always enable the Ethernet interface as eth0.
Edit: /etc/udev/rules.d/70-persistent-net.rules

Add:

/etc/udev/rules.d/70-persistent-net.rules

Serial Login

Ubuntu v3.8.x
Create new file: /etc/init/serial.conf

With this content:

/etc/init/serial.conf

Ubuntu v4.1.x
Create new file: /etc/init/serial.conf

With this content:

/etc/init/serial.conf

Remove microSD/SD card:

usb gadget

Provides http access to beaglebone black over usb.
Install udhcpd

Edit: /etc/network/interfaces and add:

/etc/network/interfaces

Temp Script:

HDMI

This sections assumes you have already installed your favorite xorg based window manager, such as lxde, xfce, kde, gnome, etc... These are packages that need to be installed on top of your selected windows manager and an xorg.conf needed to correctly setup the video interface.
Note: If the cursor doesn\'t show up right away, first hit: ctlr-alt-f1 then: ctrl-alt-f7 after which it \'should\' show up...
Make sure to install, modesetting driver and xrandr utilities:

/etc/X11/xorg.conf

xrandr:

xrandr (over serial/ssh)

eMMC

Script to copy your microSD card to eMMC: (this will need these packages installed: initramfs-tools dosfstools rsync)

SGX

Build SGX modules/userspace (must be done on an x86, due to the TI 5.01.01.02 blob extractor)

~/bb-kernel

Copy ./deploy/GFX_5.01.01.02.tar.gz to BeagleBone/BeagleBone Black and install

Verify omaplfb & pvrsrvkm loaded

capemgr: v4.1.x+

Full Documentation: readme
Download:

~/

Update dtc:

~/bb.org-overlays

Install *.dtbo:

~/bb.org-overlays

BBB compatibility issues:

/boot/uEnv.txt

capemgr: enable/disable capes on kernel cmdline:

/boot/uEnv.txt

slots:

Comments

Comments, feedback, and questions can be sent to: eewiki@digikey.com
Comments Page

  • No labels