Raspberry Pi - Tochterplatine

Der Raspberry Pi sicherlich der Bekannteste unter den Mini-Linux-Ein­platinen­rechnern. Unpraktischerweise besitzt der Raspberry Pi keine Echtzeit-Uhr. Deswegen entstand die folgende Zusatz-Platine, die ihn um eine Echtzeit-Uhr, Bedienelemente und einen externen I²C-Anschluß ergänzt.

Foto Raspberry Pi mit Aufsteckplatine
Der Raspberry Pi paßt auch mit der Aufsteckplatine noch in sein Standardgehäuse (Zum Vergrößern auf das Bild klicken)

Die größte Stärke des Raspberry Pis ist sicherlich seine Bekanntheit, an die unter den Mini-Linux-Ein­platinen­rechnern kein BeagleBone, Cubieboard, PandaBoard, Galileo & Co. auch nur annäherungsweise herankommen. Damit gibt es für alle denkbaren Anwendungen schon fertige Beispiele, so daß man auch ohne fundierte Linux-Kenntnisse schnell an sein Ziel kommt. Bei mir dient der Raspberry Pi als lokaler Subversion-Server für den Datenaustausch mit meiner CNC-Fräse. Dazu gehört es, daß er nur lokal erreichbar ist und niemals Internet-Zugang besitzt. Unpraktischerweise besitzt der Raspberry Pi keine Echtzeit-Uhr. Für einen Versionierungs-Server ist das sehr ungünstig. Deswegen entstand die folgende Zusatz-Platine, die den Raspberry um folgendes ergänzt:

Wird die Erweiterung für einen externen I²C-Bus nicht benötigt, paßt der Raspberry Pi weiterhin in sein kleines Standardgehäuse.

Echtzeit-Uhr

Der Uhrenbauseitn DS1307 ist eine komplette Echtzeit-Uhr und läßt sich aus einer Knopfzelle betreiben. Er wird über den I²C-Bus angesprochen und benötigt minimale Außenbeschaltung. Für die Anbindung dieses Uhrenbausteins an den Raspberry Pi gibt es ein sehr kleinschrittiges Tutorial[1]

In der vorliegenden Schaltung wird der Uhrenbaustein mit einer CR2032-Knopfzelle versorgt. Die Knopfzelle kann wahlweise ober- oder unterhalb der Aufsteckplatine angebracht werden. Damit der Raspberry Pi weiterhin in sein altes Gehäuse paßt, ist letzteres zu bevorzugen. Ist die Knopfzelle wiederaufladbar, kann die Bestückung angepaßt werden, damit sie im Betrieb geladen wird.

Taster

Was dem Raspberry Pi normalerweise wirklich fehlt, sind Ein- und Ausschalter. Insbesondere bei einem Dateiserver ist es wünschenswert, ihn einfach und sicher herunterfahren zu können, um Fehler im Dateisystem zu vermeiden. Gleichzeitig will man bei einem mit shutdown heruntergefahrenen Gerät nicht unbedingt den Stecker ziehen müssen, um es wieder zu starten. Also wurden drei Taster nachgerüstet: Zwei frei per Software belegbare Taster und ein (versenkter) Reset-Taster, der den Hardware-Reset des Raspberry Pis auslöst.

Wie sich ein Shutdown-Schalter in den Raspberry einbinden läßt, hat praktischerweise auch schon ein findiger Bastler ausführlich beschrieben[2].

Status LEDs

Es ist sehr praktisch, wenn eine LED anzeigt, wann das Gerät fertig gestartet ist bzw. wenn der shutdown eingeleitet ist. Die Einbindung von Status-LEDs an die GPIOs ist absolut geradeheraus und muß lediglich in die init.d eingetragen werden.

I²C-Bustreiber

Noch hat ein externer I²C-Bus am Raspberry Pi für mich keinen Anwendungsfall, aber auf der Leiterplatte war noch viel Platz, und Bus-Treiberbausteine sind sehr preisgünstig. Also wurde einer vorgesehen. Je nach Bestückung kann der externe I²C-Bus mit 3,3V- oder 5V-Pegeln arbeiten. Als Steckerbelegung entspricht der Pinbelegung bei Roboternetz[3], die ich zu meinem Hausstandard gemacht habe.

Downloads

ZIP Eagle-Projekt und Schaltplan

Links

DL1DOW German Amateur Radio Station