Installing Debian Linux
First, install an 4GB MicroSD card in the MicroSD card slot. This is required on the Rev B and Rev C. The pins used by the eMMC module are also used by the LED port, and both devices cannot share those pins. For information about getting Debian Linux onto a MicroSD card for the BBB, please look at the wiki: BeagleBoard Wiki
Either get the latest stable image, and upgrade it in the next step, or get the latest jessie image, and skip the next step.
Upgrade the BeagleBone Black from wheezy to jessie
First, get your BBB powered up and attached to the network. There are many, many guides on how to bring up a BBB for the first time, so I will not reiterate it here. Do not have the cape that you made in the previous step attached at this point.
Once the BBB can access the Internet, the installed Linux must be upgraded from wheezy to jessie, as the sample games use C++11, which is 'experimental' in wheezy. To do this, start by changing your /etc/apt/sources.list to the following:
deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
#deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb http://ftp.us.debian.org/debian/ jessie-updates main contrib non-free
#deb-src http://ftp.us.debian.org/debian/ jessie-updates main contrib non-free
deb http://security.debian.org/ jessie/updates main contrib non-free
#deb-src http://security.debian.org/ jessie/updates main contrib non-free
#deb http://ftp.debian.org/debian jessie-backports main contrib non-free
##deb-src http://ftp.debian.org/debian jessie-backports main contrib non-free
deb [arch=armhf] http://debian.beagleboard.org/packages jessie-bbb main
#deb-src [arch=armhf] http://debian.beagleboard.org/packages jessie-bbb main
Then do:
apt-get update
Once that completes, do:
apt-get dist-upgrade
I'd like to say that this process is straightforward, but I have to report that it took hours, and had to resolve certain issues manually. My guess is that any good guide on upgrading from wheezy to jessie can help you here.
Disabling HDMI and friends
There are several on-board devices that will not be used for the purposes of this project, and the pins need to be freed up. To do this, edit the file at /boot/uboot/uEnv.txt and change the following section to uncomment the cape_disable line:
##BeagleBone Black:
##Disable HDMI/eMMC
cape_disable=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN,BB-BONE-EMMC-2G
Enabling USB audio
The default configuration for ALSA causes it to prevent the USB audio adapter, which is installed later, from being device 0. That rule needs to be changed so that the USB adapter is the default. Change or create the file /etc/modprobe.d/alsa-base.conf to:
# autoloader aliases
install sound-slot-0 /sbin/modprobe snd-card-0
install sound-slot-1 /sbin/modprobe snd-card-1
install sound-slot-2 /sbin/modprobe snd-card-2
install sound-slot-3 /sbin/modprobe snd-card-3
install sound-slot-4 /sbin/modprobe snd-card-4
install sound-slot-5 /sbin/modprobe snd-card-5
install sound-slot-6 /sbin/modprobe snd-card-6
install sound-slot-7 /sbin/modprobe snd-card-7
# Cause optional modules to be loaded above generic modules
install snd /sbin/modprobe --ignore-install snd && { /sbin/modprobe --quiet snd-ioctl32 ; /sbin/modprobe --quiet snd-seq ; : ; }
install snd-rawmidi /sbin/modprobe --ignore-install snd-rawmidi && { /sbin/modprobe --quiet snd-seq-midi ; : ; }
install snd-emu10k1 /sbin/modprobe --ignore-install snd-emu10k1 && { /sbin/modprobe --quiet snd-emu10k1-synth ; : ; }
# Keep snd-pcsp from beeing loaded as first soundcard
options snd-pcsp index=-2
# Keep snd-usb-audio from beeing loaded as first soundcard
options snd-usb-audio index=0
# Prevent abnormal drivers from grabbing index 0
options bt87x index=-2
options cx88_alsa index=-2
options snd-atiixp-modem index=-2
options snd-intel8x0m index=-2
options snd-via82xx-modem index=-2
Installing LEDGames
The boilerplate stuff is out of the way for the moment, so let's try having some fun. The repository with all the software is at https://github.com/KeithHenrickson/LEDscape and you can clone it with:
git clone https://github.com/KeithHenrickson/LEDscape.git
This is my fork of the original osresearch/LEDscape code, which has been changed to work a bit better with 32x32 panels, and is pre-configured for the matrix layout this project will be using.
Change to that directory and issue a 'make' command and ensure that everything builds. There are some warnings, but there should be no errors. If so, shut down Linux and power down for the moment.
This will install, but not activate, two cape definition files. They are activated later, but the build step does put them in place.
Page last edited March 08, 2024
Text editor powered by tinymce.