Angetestet: Kombi-Board UDOO

Das Board integriert ein aktuelles Arduino-Board mit einem leistungsfähigen Mini-PC auf einer gemeinsamen Platine.

In Pocket speichern vorlesen Druckansicht 9 Kommentare lesen
Lesezeit: 9 Min.
Von
  • Maik Schmidt
Inhaltsverzeichnis

Die Zeiten für Bastler, Hobby-Elektroniker und Software-Entwickler waren nie besser als heute. Betriebssysteme wie Linux und Android kombiniert mit erschwinglicher Hardware wie dem Raspberry Pi und dem Arduino bieten beinahe grenzenlose Möglichkeiten, um die persönliche Kreativität auszuleben.

Die Auswahl an Produkten ist allerdings nur noch schwer zu überschauen. Gerade Anfängern fällt es schwer zu entscheiden, ob ein Mini-PC wie der Raspberry Pi oder ein Mikrocontroller-Board wie der Arduino die richtige Basis für die ersten Gehversuche ist. Aber auch erfahrene Entwickler wünschen sich manchmal das Beste aus beiden Welten.

Abhilfe will die Multi-Plattform UDOO ("you do") schaffen. Sie integriert ein aktuelles Arduino-Board mit einem leistungsfähigen Mini-PC auf einer gemeinsamen Platine und ist das Ergebnis einer erfolgreichen Kickstarter-Kampagne. Das UDOO-Team hat deutlich mehr Geld eingesammelt als ursprünglich benötigt wurde. Darüber hinaus hat es das Board fast pünktlich fertiggestellt und geliefert.

UDOO wird aktuell in den Ausprägungen Basic ($99), Dual ($109) und Quad ($129) angeboten. Alle Modelle basieren auf der Freescale-i.MX6-ARM-Cortex-A9-CPU, die mit 1GHz getaktet wird. Die Quad-Version verfügt über vier Kerne, die anderen nur über zwei. 1 GB DDR-RAM ist in allen Modellen verbaut.

Aus dem Make-Testlabor

Die Make-Redaktion probiert viel mehr aus, als ins alle zwei Monate erscheinende Heft passt. Deshalb veröffentlichen wir auf unserer Webseite in loser Folge weitere Testberichte.

Alle Boards verfügen über einen 2D-Beschleuniger und unterstützen sowohl OpenGL ES2.0 3D als auch OpenVG. Während im Basic und Dual eine Kombination aus Vivante GC 880 und Vivante GC 320 zum Einsatz kommt, arbeiten im Quad GC 2000, GC 355 und GC 320. Ausgegeben wird die Grafik per HDMI oder auf einen Touchscreen, der per LVDS angeschlossen wird. Einen analogen Sound-Ausgang und einen Mikrofon-Eingang gibt es ebenfalls und eine Kamera lässt sich via CSI anschliessen.

Zwei USB-Ports machen den Anschluss weiterer Hardware leicht und zur seriellen Kommunikation mit der Außenwelt dienen zwei Mini-USB-Ports (einer davon mit OTG). Der Quad hat sogar einen SATA-Anschluss. Bis auf den UDOO Basic verfügen alle Modelle über einen Ethernet-Port und WLAN. Den eingebetteten Arduino Due steuert eine Atmel SAM3X8E ARM Cortex-M3-CPU. Die Pin-Belegung der Shield-Ports stimmt mit denen des Arduino Uno R3 1.0 überein. Insgesamt stehen auf dem UDOO 76 GPIO-Pins zur Verfügung, auf die beide Prozessoren uneingeschränkten Zugriff haben.

UDOO lässt sich über eine Micro-SD-Karte booten. Jede Version des UDOO-Boards bietet ausreichend Leistung für Linux und Android. Wie beim Raspberry Pi installiert man das Betriebssystem statt auf einem integrierten Flash-Speicher als Image auf einer externen SD-Karte, hier ist es eine Micro-SD-Karte.

Wer das Gerät im Rahmen der Kickstarter-Kampagne bestellt hat, bekam in der Regel auch SD-Karten mit vorinstalliertem Linux und Android dazu. Leider passte die Software nicht mehr unbedingt zur ausgelieferten Hardware. Linux liess sich zwar noch starten, war aber völlig veraltet. Weder erkannte es das Bluetooth-Dongle noch brachte es wichtige Werkzeuge wie zum Beispiel die Arduino-IDE mit. Das mitgelieferte Android bootete erst gar nicht und zeigte nur immer wieder den Android-Startbildschirm.

Auf der Webseite des UDOO-Projekts stehen indes aktuellere Linux- und Android-Images für alle UDOO-Varianten zum Download bereit. Die angebotene Linux-Version ist Ubuntu 11.10 von Linaro. Sie ist zwar schon etwas betagt, erfüllt aber ihren Zweck. Android gibt es in der Version 4.2.2 ("Jelly Bean"). Beide Systeme benötigen eine Micro-SD-Karte mit einer Kapazität von mindestens 8 GB.

Die Images lassen sich zurzeit nur mit 7-Zip auspacken, weil alle anderen ZIP-Programme annehmen, dass die ausgepackten Dateien knapp 800 Petabyte(!) an Speicherplatz benötigen. Trotz einiger Beschwerden im Forum, wurden die Dateien noch nicht ersetzt.

Das Image muss auf eine SD-Karte geschrieben werden. Unter Windows eignet sich dazu zum Beispiel Win32 Disk Imager. Unter Mac OS X und Linux kann man das dd-Kommando verwenden. Hängt die SD-Karte beispielsweise unter /dev/disk2s1, lässt sie sich unter Mac OS X wie folgt initialisieren:

$ sudo diskutil unmount /dev/disk2s1
$ sudo dd bs=1m if=udoo_dual_ubuntu_1.2.img of=/dev/rdisk2
$ sudo diskutil eject /dev/rdisk2

Der Vorgang dauert einige Minuten; bei der Eingabe muss peinlich genau auf die Pfadangaben achten. Andernfalls droht erheblicher Datenverlust auf der Festplatte!

Ist die Karte initialisiert und das UDOO-Board verkabelt, steht einem ersten Testlauf nichts mehr im Weg. Der Desktop fühlt sich auf dem UDOO flüssig an und mit dem vorinstallierten Chromium-Browser lässt es sich halbwegs komfortabel surfen. Das Board sucht im Hintergrund automatisch alle verfügbaren WLAN-Netze und initialisiert auch problemlos das Bluetooth-Dongle. Ohne nennenswerten Aufwand wird UDOO Teil des heimischen Netzwerks. Auch SSH wird automatisch gestartet und man kann sich mit dem Nutzernamen ubuntu (Passwort: ubuntu) am UDOO anmelden. Selbstverständlich sollte man das Passwort sofort ändern.

Wie gewohnt lässt sich Software mit apt-get verwalten und auch sonst unterscheidet sich die Distribution nicht wesentlich von herkömmlichen Installationen. Hauptsächlich aufgrund des geringen Hauptspeichers ersetzt ein UDOO aber keinesfalls einen vollwertigen PC. Als ein solcher Ersatz ist UDOO aber auch nicht konzipiert, sondern als Hybrid aus Mini-PC und Mikrocontroller-Board. Auf dem UDOO-Board befindet sich daher ein Arduino Due und auch die Arduino-Entwicklungsumgebung wird gleich mitgeliefert.

Der Arduino Due, den wir bereits getestet haben, gehört zu den jüngeren Sprösslingen der Arduino-Familie und zählt gleichzeitig zu den leistungsfähigsten Vertretern. Angetrieben wird er durch einen 32-Bit-ARM-Controller, verfügt über satte 512 KByte Flash, 96 KByte RAM und zahlreiche digitale und analoge Pins. Die UDOO-Version des Arduino Due unterscheidet sich kaum vom Original. Lediglich auf die Status-LEDs haben die Entwickler verzichtet. Ansonsten ist die UDOO-Variante vollständig kompatibel und so können beispielsweise alle Shields, die mit dem Due laufen, auch auf dem UDOO eingesetzt werden.

Die Arduino-IDE ist im Ubuntu-Image für den UDOO bereits enthalten.

Das klingt erst einmal gut, hat aber leider einen Haken. Im Gegensatz zu den meisten Arduino-Modellen operiert der Due nur mit 3,3V und nicht mit 5V. Legt man eine zu hohe Spannung, wie zum Beispiel 5V, an einen der IO-Pins an, kann das Board schnell beschädigt werden. Vor dem Einsatz eines Shields ist also sicherzustellen, dass es mit dem Due kompatibel ist.

Das eingebaute Arduino-Board lässt sich sowohl vom UDOO direkt als auch von außen mit Hilfe eines weiteren Rechners programmieren. In beiden Fällen wird eine gepatchte Version der Arduino-IDE 1.5 benötigt, die im Ubuntu-Image des UDOO schon enthalten ist.

Die Arduino-Programmierung erfolgt auf dem UDOO wie auf einem regulären PC. Allerdings stellt die Geschwindigkeit der IDE die Programmierer-Geduld schnell auf die Probe. Das Übersetzen und Laden des klassischen LED-Blink-Beispiels benötigt mehr als eine halbe Minute, wobei knapp 23 Sekunden auf den Übersetzungsvorgang entfallen. Zwar läuft Java 6 auf dem UDOO, es ist aber nicht allzu flott.

Die Programmierung des Due mittels eines angeschlossenen PCs läuft wie man es von herkömmlichen Arduino-Boards gewohnt ist. Lediglich die gepatchte IDE ist ein kleiner Unterschied. UDOO eignet sich aber nicht nur für die Arduino-Programmierung. Weil Android auf dem Gerät läuft, ist es eine gute Plattform für Googles Accessory Development Kit ADK. Damit lassen sich Android-Anwendungen entwickeln, die auf externe Hardware, wie zum Beispiel Sensoren oder Motoren, zugreifen.

UDOO unterstützt die aktuelle Version ADK 2012 und die Installation von Android selbst reduziert sich auf das Kopieren einer Image-Datei. Die eigentliche Entwicklung von Android-Anwendungen erfolgt auf einem separaten PC, der erst via USB mit dem UDOO-Board verbunden werden muss. Das erfordert ein paar einfache Handgriffe auf beiden Seiten der Verbindung, die im UDOO-Handbuch aber ausführlich erklärt werden.

Die UDOO-Hardware macht einen guten Eindruck und auch der Preis ist angemessen. Wackliger sieht es auf der Software-Seite und bei der Dokumentation aus. Verglichen mit erfolgreichen Projekten wie dem Raspberry Pi und dem Arduino ist die Lage eher mau, aber das Projekt steckt noch in den Kinderschuhen. Allerdings spielt UDOO auch in einer ganz anderen Liga was Verkaufszahlen und Popularität angeht.

So bleibt erst einmal abzuwarten, wie sich die noch kleine Entwickler-Gemeinde entwickelt. Immerhin gibt es schon die ersten alternativen Linux-Distributionen, nämlich Debian mit dem LXDE-Desktop. Auch weiteres Zubehör, wie zum Beispiel eine Kamera, ist bereits angekündigt. (dab)