RaspiBoy - Raspberry Pi Handheld | Code and Create

RaspiBoy - Raspberry Pi Handheld

Ein eigener kleiner Handheld, irgendwo eine Mischung aus einem Pipboy 2000 und Pipboy 3000 gemacht mit Raspberry Pi (Model A), RaspiLCD und anderem, welches in Form von zum Beispiel einem Akku im späteren Projektverlauf noch hinzu kommt. Das umschreibt in etwa dieses Projekt.
Natürlich könnte man auch einfach einen fertigen Handheld oder auch Android-MP3 Player oder -Handy nehmen und zum Beispiel ein neues GUI drauf setzen. Aber ich möchte tiefer einsteigen. Linux Kern (Raspian), Display und C/C++ - das sind meine Werkzeuge hier.
Das Projekt ist "work in progress". Updates werde ich im Blog ankündigen.
(Quellcodes und Downloads sind frei kopierbar. Es wäre aber nett, wenn die Quelle bei Eigenveröffentlichungen mit angegeben wird.)

Hardware

Das Model A des Raspberry Pi habe ich auf Grund des Stromverbrauchs gewählt, da das Ganze ja irgendwann Portabel sein soll. Selbiges gilt auch für die Wahl des RaspiLCD, neben der Tatsache, dass dies eine sehr schöne Kombo von LCD Display und Tastern ist.
Der USB-Hub wird die mangelnde kontektivität des Model A kompensieren. Allerdings steht hier noch nicht fest ob ich nicht lieber ein anderes Model im späteren Verlauf einbaue.
Der Handheld soll einen USB-Host, Bluetooth und Wlan als Verbindungsmöglichkeiten besitzen. Alles natürlich mit dem RaspiLCD steuerbar.
Die aktuelle Hardware besteht aus:

Grafische Oberfläche

Stilgerecht habe ich die Oberfläche an Fallout 3 Computer angelehnt. Das GUI wird relativ spartanisch aber doch mit einem gewissen Charme aufgebaut. Nach dem Bootvorgang soll ein Startscreen geöffnet werden. Mittels Links und Rechts soll man sich dann gewisse Statusinformationen anzeigen lassen. Es wird ein Hauptmenü geben sowie Unterprogramme wie Dateimanager, Einstellungsprogramme, Wlan- und Bluetoothsteuerung. Auch eine Akkuanzeige wäre mehr als sinnvoll. Hier steht aber noch nicht fest ob ich diese Hardwaretechnisch löse - zum Beispiel mit LEDs - oder in der Software unterbringe.

Grundsätzlich besteht das GUI derzeit aus folgenden Komponenten:

  • Leiste oben - durchgezogen oder mit Unterbrechung durch eine Überschrift
  • Leiste Unten - mit und ohne Scrollbereich
  • Vertikale Scrollleiste
  • Icons, die verdeutlichen, was welche Tastenaktion auslöst
(WIP: Mehr Elemente werden sicher im Laufe der Entwicklung kommen.)

GUI-Elemente Quellcode

Verwendete Software

Auf meinem Mac

Auf dem Raspberry Pi

Blogeinträge