BeagleBoard

Das BeagleBoard ist ein kleiner Computer basierend auf dem OMAP3530-System-on-a-Chip von Texas-Instruments
Was ihn so spannend macht ist neben einer HDMI-Schnittstelle (im Gegensatz beispielsweise zum Sheevaplug) die Erweiterbarkeit über General I/O Pins, sowie Onboard Sound und vieles mehr.
Da auch beim Nutzen dieses Stückchens Hardware zu erwarten ist, dass nicht alles Reibungslos und gleich funktioniert sondern hier und da ein paar Probleme auftauchen, für die ich mich wieder im Internet kaputt suche, werde ich hier all das dokumentieren, was beim Suchen länger gedauert hat.


erste Installtion von Debian

Nach einigen Anläufen habe ich es nun endlich hinbekommen, Debian Squeeze auf ein paar BeagleBoards zu installieren. Die Stolpersteine, über die ich dabei fast fiel werde ich hier kurz beschreiben.

Ich besitze selbst ein BeagleBoard Rev. C4 und wollte da gern auf eine 8GB SD-Karte Debian installieren.
Da die Installation eine netinstall-Installation von Debian ist, benötigt man natürlich eine Netzwerkschnittstelle, die das BeagleBoard in Revision C4 noch nicht mitbringt. Es gibt diverse Ethernet-USB-Schnitstellen für günstiges Geld zu kaufen und auch ein WLAN-Adapter, der unter Linux (beispielsweise am Laptop) funktioniert, tun gute Dienste (auch wenn mein Adapter nur am zwischengeschalteten USB-Hub angesprochen werden wollte).
Außerdem ist unbedingt anzuraten, das Beagleboard zur Installation nicht über USB mit Strom zu versorgen, sondern ein externes Netzteil zu nutzen.
Nun gibt es dafür eine schöne Umgebung mit einem einfach nutzbaren Skript, welches per

git clone git://github.com/RobertCNelson/netinstall.git
cd netinstall

herunterladen kann.
Da ich mein System höchst wahrscheinlich fast nie an einen Monitor anschließe, wollte ich diesen auch bei der Installation nicht angeschlossen haben müssen.
Das war schon der erste Stein: dazu muss man bei der Erstellung der SD-Karte nämlich aktivieren, dass man nur mit serieller Schnittstelle installieren möchte.

./mk_mmc.sh --mmc /dev/mmXXXX --uboot beagle_cx --distro squeeze --serial-mode

Wenn man nun die so vorbereitete Karte ins BeagleBoard steckt, die serielle Schnittstelle öffnet und es mit Strom versorgt, kann es (wie bei mir) noch dazu kommen, dass trotzdem nüscht funktioniert.
Wenn in der Ausgabe eine solche Zeile steht:

...
** Unable to read uImage from mmc 0:1 **
...

kann das unter vielen möglichen Ursachen daran liegen, dass zunächst der X-loader und U-boot auf die neuste Version geupgradet werden müssen.

Auch dazu gibt es wieder eine feine Umgebung von Robert C. Nelson mit genauso leicht zu nutzendem Skript:

git clone git://github.com/RobertCNelson/flash-omap.git
cd flash-omap

Nun wird die SD-Karte wie folgt vorbereitet:

./mk_mmc.sh --mmc /dev/mmXXXX --uboot beagle_cx

Was nun folgt ist etwas Magie mit Feenstaub und die Schritte müssen in genau der Reihenfolge ausgeführt werden...

Nun sollte das System (zumindest tat es das bei mir endlich :-) ) installierbar sein... Alle Fragen mit etwas wie "kein Kerrnel" kann man getrost mit "yes" beantworten - der Kernel ist nur nicht der Standardkernel von Debian Squeeze.
Bei der Partitionierung ist unbedingt zu beachten, dass man nicht "use entire disk" wählt, weil man denkt, dass dann alles Frisch auf eine Partition gepackt wird - die schon angelegte Partition ist die boot-Partition der finalen Installation!
Ist das System installiert und das erste mal hochgefahren erledigen ein

apt-get update && apt-get dist-upgrade

den Rest und man hat ein hübsches nutzbares BeagleBoard

News - Sidebar
Ubuntu Touch Backup und Restore
Ubuntu Touch ist nun seit mehr als zwei Jahren mein Betriebssystem der Wahl auf meinem Nexus 4. Leider habe ich mir irgendwie den Update-Mechanismus zerschossen und so kurzerhand beschlossen, das System neu aufzusetzen. Den Prozess habe ich in der ubuntu touch section dokumentiert.
Ableton MIDI CC Automation
In der Audio-Sektion wird nun kurz erläutert, mit welchem Hilfsmittel man im Arrangement View von Ableton Live MIDI CC Parameter eines externen Instruments automatisieren kann.
x0xb0x und Reason 7
In der Audio-Sektion habe ich kurz niedergeschrieben, wie der Sound einer x0xb0x in Reason 7 per MIDI-Clock synchron geroutet werden kann.
LaTeX-Workshop
In der LaTeX-Sektion werden inzwischen Folien und weiteres zu einem LaTeX-Workshop verlinkt.
ClusterGL
Unter Projekte->ClusterGL habe ich ein paar Schritte zur Nutzung von ClusterGL online gestellt.
NFC MobiDoc
Unter Projekte->NFC MobiDoc habe ich eine in einer Gruppe von 5 Stundenten inklusive mir umgesetzte NFC-basierte Krankenhausanwendung dokumentiert.
VotingTool
Unter Projekte->VotingTool habe ich ein Grailsbasiertes VotingTool online gestellt.
neues Design
Heute habe ich ein Geschenk von Max bekommen - ein neues schönes Design. Vielen Dank an dieser Stelle!
ROBERTA
Heute habe ich neben der Übersetzung ins Englische auch eine Featurelist für den Server aus dem ROBERTA-Projekt erstellt.
Git + Apache
Wer sein Git-Repository über HTTP mit Apache und aber ohne VirtualHosts (also ohne Subdomain) verfügbar machen will, findet unter Anleitungen -> Vermischtes nun eine entsprechende Anleitung.
ARM-Toolchain
Wie man einen gcc Toolchain für ARM aufsetzt, findet sich ab sofort unter Anleitungen -> ARM. Diesen nutze ich beispielsweise für die Programmierung von OpenBeacon USB 2-RFID-Tags.
SD-Karte kaputt
Nach dem Netzteil nun auch die SD-Karte: Unter Anleitungen -> Sheevaplug mein Rettungsweg.
Netzteil kaputt
Wem das gleiche Glück mit dem Sheevaplug beschieden, der findet unter Sheevaplug meinen Lösungsweg.
ATMEGA verfust
Wer einen seiner AVR Mikrocontroller verfust hat, findet unter Anleitungen -> AVR nun einen rettenden Beitrag.
Abschlussarbeit
Unter Anleitungen -> LaTeX habe ich eine Vorlage für eine Abschlussarbeit verlinkt.
Etherpad
unter Anleitungen -> Vermischtes findet sich ein Tutorial zur Installation von Etherpad auf Debian Lenny

Valid XHTML 1.0 Strict CSS ist valide!