© prettyboy80/Shutterstock.com
Hardware, Einrichtung und Konfiguration des Raspberry Pi mit Mono und C#

Himbeerkuchen im Fokus


Microsoft hat in der Vergangenheit schon vielfach neue Wege beschritten. Viele Komponenten und Bibliotheken wurden als Open-Source-Projekte veröffentlicht und zwar nicht nur unter wenig nützlichen „bitte nur gucken“-Lizenzen, sondern unter Einsatz der Apache-Lizenz in Version 2.0. So auch beim kürzlich veröffentlichten Projekt Codename „Roslyn“, Micro­softs neuer Compilerplattform. Das eröffnet dem Open-Source-Bereich in Sachen Mono gänzlich neue Möglichkeiten. Diese werden sich höchstwahrscheinlich über kurz oder lang auch auf offene Systeme wie den Raspberry Pi auswirken.

Nahezu zeitgleich mit den ersten Informationen zur .NET-Plattform begann Miguel de Icaza im Februar 2001 [1] mit der Entwicklung eines Compilers für die Programmiersprache C# – aus Spaß und zu Übungszwecken, was in der Vergangenheit der IT-Branche schon häufig die besten und bekanntesten Projekte hervorgebracht hat. Der Rest ist Geschichte. Das von Miguel de Icaza mitgegründete Unternehmen Ximian wurde 2003 von Novell gekauft. Als im Jahr 2011 die Entwicklung von Mono wegen geringer Nachfrage eingestellt wurde, gründete Miguel de Icaza kurzerhand Xamarin. Mit den Produkten von Xamarin ist die Entwicklung von C# auch unter Android und iOS möglich. Und der Erfolg des Unternehmens gibt den Gründern recht.

Was diese kleine Rückschau zeigen soll? C# hat Fans. Viele Fans. Und die sind nicht nur im Microsoft-Universum und damit hauptsächlich auf Windows unterwegs. Ganz im Gegenteil hat sich herumgesprochen, dass C# interessante und nützliche Eigenschaften hat, die in der Praxis geschätzt werden. Aber auch jeder C#-Entwickler sollte von Zeit zu Zeit über den Tellerrand schauen, beispielsweise, um dort C# unter Mono und einer kleinen Platine zu entdecken.

Warum der Raspberry Pi?

Zunächst stellt sich die Frage, warum gerade der Rasp­berry Pi [2] als System in Frage kommt. Der Name bedeutet übrigens Himbeerkuchen, was zumindest die Himbeere als Logo des Systems und der Raspberry Pi Foundation erklärt. Auch Microsoft bietet mit dem .NET Gadgeteer [3] eine ähnliche Plattform für das schnelle Prototyping an. Wirklich vergleichbar sind die Systeme dann aber doch nicht, denn der Raspberry Pi kann mehr. Das liegt zu großen Teilen an der serienmäßig mitgebrachten Hardwareausstattung. Als zentrale Einheit ist ein ARM-Prozessor verbaut, auf dem mittlerweile das Betriebssystem Linux läuft. Das eröffnet eine ganze Reihe von Möglichkeiten und Anwendungsgebieten. Mittlerweile gibt es viele auf den Raspberry Pi angepasste Distributionen. Beispielsweise zum Einsatz des Minicomputers als Mediacenter. Hier lohnt sich ein Blick auf das XMBC-Projekt [4]. Durch das Mono-Projekt, eine freie und quelloffene Implementierung des .NET Frameworks, sowie die Common Language Runtime (CLR) kommt auch die C#-Welt auf die kleine Himbeere.

Die serienmäßige Hardware, die mit an Bord ist, sorgt dafür, dass der Raspberry Pi als vollwertiger Computer angesehen wird. Die Platine besitzt einen Ethernet-Anschluss, zwei USB-Ports, einen HDMI-, RCA-Video und einen Audioausgang. Daneben sind noch ein Slot für SD-Karten und ein GPIO-Anschluss verfügbar. Letzter bedeutet „General purpose input/output“, was eine Schnittstelle beschreibt, die frei programmiert werden kann. Abbildung 1 zeigt eine schematische Zeichnung aus den FAQ der Raspberry Pi Foundation [2].

deitelhoff_raspberry_1.tif_fmt1.jpgAbb. 1: Schematische Darstellung des Raspberry Pi Model B

Das macht den Raspberry Pi zu einer hervorragend geeigneten Plattform, um kleine Projekte aufzusetzen. Nicht nur der Embedded-Bereich bietet sich hier an, doch viele Projektideen entstammen gerade diesem Bereich [5]. Die Möglichkeiten, gegeben durch die verschiedenen Anschlüsse, sind sehr zahlreich. Zudem ist der Raspberry Pi klein, energiesparsam und günstig. Letzteres ist wörtlich zu nehmen, da die Plattform an sich mit lediglich circa 30 Euro zu Buche schlägt. Eventuell kommen noch ein USB-Netzteil, eine SD-Karte und ein Gehäuse dazu. Wer keinen Ethernet-Anschluss in Reichweite hat, kann auch einen USB-WiFi-Adapter benutzen.

Benötigte Hardware

Bevor aber mit dem Minicomputer Ideen umgesetzt werden können, muss ein entsprechendes System aufgesetzt werden. Das richtet sich gänzlich nach dem gewünschten Einsatzzweck. Zunächst kurz zur notwendigen Hardware: Als Basisausstattung sind neben dem Raspberry Pi an sich eine SD-Karte und ein geeignetes Netzteil erforderlich. Ohne vorhandenen LAN-Anschluss muss auch an einen WiFi-USB-Adapter gedacht werden. Konkret liegt diesem Artikel folgende Hardware zugrunde:

  • Raspberry Pi Model B

  • Samsung-SD-Karte 8 GB CL4 Plus

  • HNP06-Micro-USB-Steckernetzteil

  • EDIMAX-EW-7811UN-Wireless-USB-Adapter

Der Raspberry Pi Model B hat gegenüber dem Model A den Vorteil, dass er mit 512 Megabyte Arbeitsspeicher ausgestattet ist. Das Vorgängermodell besaß 256 Megabyte, und mehr Arbeitsspeicher ist sicherlich nie verkehrt. Bei den SD-Karten sind die Spezifikationen nicht sonderlich zu beachten. CL4 gibt die Klasse vier an und Plus bedeutet, dass die Zugriffsgeschwindigkeiten etwas erhöht sind. Ob sich das auf die auf dem Raspberry Pi geplanten Projekte auswirkt, sei aber dahingestellt. Der Wireless-USB-Adapter unterstützt 11b/g/n und schafft 150 Megabit pro Sekunde. Auch das ist für unseren Einsatzzweck völlig ausreichend. Dieser USB-Adapter gehört im Übrigen zu dem am häufigsten empfohlenen USB-Sticks, da es mit diesem Modell am wenigsten Probleme gibt. Je nach Einsatzzweck kann sich noch ein Gehäuse lohnen, das bereits für ein paar Euro zu haben ist.

Aufsetzen des Systems

Auf der Website der Raspberry Pi Foundation lassen sich direkt einige Distributionen herunterladen, die auf den Pi abgestimmt sind. Diese müssen noch auf der SD-Karte entpackt werden, die deshalb nicht weniger als vier Gigabyte umfassen sollte. Dieser Beitrag wurde mit dem Raspbian genannten Betriebssystem als Basis geschrieben. Das knapp...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang