Wegen des aktuell sehr günstigen Preises habe ich mir neulich einen pcDuino Lite (siehe hier) gegönnt. Dabei handelt es sich um einen Einplatinencomputer (vergleichbar mit Raspberry Pi oder Banana Pi), der mit einem 1GHz-Prozessor, 512MB RAM und Arduino-ähnlichen GPIOs samt analoger Eingänge glänzt. Leider ist dieses Modell wohl nicht weit verbreitet, sodass sich nützliche Informationen hierzu oft nur schwer finden lassen. Daher möchte ich hier meine Erfahrungen und Tipps bei der Inbetriebnahme und Einrichtung des kleinen Boards teilen. Mangels HDMI-Kabel beschreibe ich auch, wie ihr den Einplatinencomputer auch ohne HDMI einrichten könnt.
1. Installation des Betriebssystems
Der pcDuino Lite verfügt über einen microSD-Kartenslot, über den ihr eine microSD-Karte mit vorinstalliertem Betriebssystem einführen könnt, von dem er dann automatisch startet. Das Vorgehen hierbei ist analog zu Raspberry Pi und Konsorten, sodass ich nur kurz darauf eingehe.
Ladet euch erst zuerst das entsprechende Image herunter. Dieses findet ihr hier.
Es gibt eine Ubuntu- und eine Android-Version. Ich habe bisher nur die Ubuntu-Version verwendet, da diese ein vollwertiges OS darstellt und für die meisten Anwendungsfälle die bevorzugte Lösung sein dürfte. Der weitere Artikel bezieht sich daher nur auf das Ubuntu-Image.
Habt ihr die Datei heruntergeladen, benötigt ihr eine ausreichend große microSD-Karte (ab 2GB). Ich verwende in meinem pcDuino eine Class10-Karte mit 8GB Kapazität, da diese mittlerweile sehr günstig zu bekommen sind. Wie ihr das heruntergeladene Image auf die Karte bekommt ist analog zu den viel beschriebenen Möglichkeiten beim Raspberry Pi. Daher verweise ich hier auf den Artikel von Jan Karres, der die Vorgehensweise unter „Step 2“ detailliert für verschiedene Betriebssysteme erklärt.
Wurde das Image auf die microSD-Karte übertragen, könnt ihr diese in den Slot am pcDuino Lite schieben. Der pcDuino ist nun startklar.
2. Start ohne HDMI
Hinweis: Dieser Teil ist nur dann relevant, wenn ihr (wie ich gerade) kein HDMI-Kabel zur Hand habt. Habt ihr eines sowie USB-Maus und –Tastatur, könnt ihr diesen Teil überspringen.
Um auch ohne HDMI-Kabel nach dem Starten des pcDuino Eingaben tätigen zu können, benötigt ihr einen USB-zu-TTL/UART-Adapter (z.B. von FTDI, einen mit CP2102 oder CH340 etc.). Diese sind bereits für sehr kleines Geld (ca. 1€) in China erhältlich (Achtung: Kauft dort am Besten keine FTDI-Modelle, da das oft minderwertige Fakes sind, die schlecht funktionieren. Mit den CP2102 habe ich bisher sehr gute Erfahrungen gemacht. Kauft ein Modell, das mit 3V und 5V arbeitet, dann seid ihr gut ausgerüstet für Elektronik-Spielereien). Schließt den Adapter nach folgendem Bild an den seriellen Debugging Anschluss an:Auf eurem Computer benötigt ihr nun noch ein Programm, das ein serielles Terminal bietet, über das ihr später mit dem pcDuino kommunizieren könnt. Da ich auf meinem Entwicklungsrechner Xubuntu einsetze, habe ich mich für CuteCom als GUI entschieden. Unter Windows wäre z.B. PuTTY eine geeignete Alternative.
Die Konfiguration und Benutzung ist nachfolgender Bilderstrecke zu entnehmen (analog sollte es bei anderen Programmen funktionieren):
3. Installation von SSH
Um nicht immer die serielle Schnittstelle verwenden zu müssen bzw. um den pcDuino auch über das Netzwerk bedienen zu können, bietet es sich an, einen SSH-Server auf dem Gerät zu installieren.
Öffnet dazu einfach das Terminal bzw. gebt direkt in eurer seriellen Konsole folgende Befehle ein:
1 2 | sudo apt-get update sudo apt-get install ssh |
Hinweis: Beim update-Befehl erhaltet ihr vermutlich die Meldung “W: Conflicting distribution: http://www.wiimu.com pcduino Release (expected pcduino but got )”. Diese könnt ihr hier ignorieren. Wie ihr das Problem behebt, wird weiter unten beschrieben.
Ist SSH installiert, braucht ihr nur noch die IP-Adresse eures pcDuino, um euch mit diesem darüber verbinden zu können. Wie unter Linux üblich erhaltet ihr sie über ifconfig . Ihr solltet euch nun von eurem Rechner aus über SSH mit dem pcDuino verbinden können. Ist dies der Fall, benötigt ihr die ggf. eingerichtete serielle Verbindung nicht mehr.
4. Einrichtung und Troubleshooting
4.1 Nutzung der gesamten SD-Karte
Ein Blick auf die Ausgabe von df offenbart, dass nicht der gesamte Speicherplatz eurer SD-Karte verwendet wird. Um den gesamten, verfügbaren Speicherplatz verwenden zu können, sind aber lediglich ein paar Eingaben im Terminal notwendig.
Ladet euch zuerst das dafür notwendige Script herunter:
1 | wget https://s3.amazonaws.com/pcduino/SampleCode/System/expandFS/expand_sdcard_rootfs.sh --no-check-certificate |
und führt es anschließend aus:
1 | sudo bash ./expand_sdcard_rootfs.sh |
Jetzt ist ein Neustart des pcDuino notwendig. Führt also sudo reboot aus. Ist das Gerät hochgefahren, ist noch abschließend der Befehl
1 | sudo resize2fs /dev/mmcblk0p2 |
auszuführen. Das dauert erfahrungsgemäß etwas länger, wundert euch also nicht, dass nichts ausgegeben wird. Wurden die beschriebenen Schritte durchgeführt, solltet ihr nun die komplette SD-Karte verwenden können. Über df könnt ihr das nochmal nachprüfen.
4.2 apt-get update fixen
Um den bereits weiter oben angesprochenen Fehler bei apt-get update zu beheben, sind Änderungen an der sources.list notwendig. Installiert dazu „nano“, um die Datei im Terminal bequem bearbeiten zu können:
1 | sudo apt-get install nano |
Anschließend öffnet ihr die Datei „/etc/apt/sources.list“ mit nano unter root-Rechten:
1 | sudo nano /etc/apt/sources.list |
und kommentiert die letzten beiden Einträge aus („#“ davorsetzen):
1 2 3 4 5 6 7 8 | deb http://ports.ubuntu.com/ubuntu-ports/ precise main universe deb-src http://ports.ubuntu.com/ubuntu-ports/ precise main universe deb http://ports.ubuntu.com/ubuntu-ports/ precise-security main universe deb-src http://ports.ubuntu.com/ubuntu-ports/ precise-security main universe deb http://ports.ubuntu.com/ubuntu-ports/ precise-updates main universe deb-src http://ports.ubuntu.com/ubuntu-ports/ precise-updates main universe #deb http://www.wiimu.com:8020/pcduino/ pcduino main #deb-src http://www.wiimu.com:8020/pcduino/ pcduino main |
Speichert die Datei (Strg+O) und führt den update-Befehl erneut aus:
1 | sudo apt-get update |
Ihr solltet nun keine Fehlermeldung mehr erhalten.
4.3 Feste MAC-Adresse vergeben
Mein pcDuino hatte nach jedem Start eine neue MAC-Adresse für das Netzwerk-Interface. Das ist ziemlich unpraktisch, da der Router und evtl. andere Geräte den pcDuino somit nicht eindeutig identifizieren können. Es gibt aber eine Lösung des Problems.
Lest zuerst die MAC-Adresse der Netzwerkschnittstelle des pcDuinos aus über ifconfig . Sie sollte beim Interface „eth0“ ablesbar sein. Kopiert sie euch z.B. in die Zwischenablage. Anschließend bearbeitet ihr die Datei „/etc/network/interfaces“ ( sudo nano /etc/network/interfaces ) nach folgendem Beispiel:
1 2 3 4 5 6 7 | # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp hwaddress ether 00:00:00:00:00:00 |
wobei ihr den Teil nach „hwaddress ether“ durch eure angezeigte MAC-Adresse ersetzt. Um die Änderungen umzusetzen, reicht es nach Netzwerk-Interface zu deaktivieren und wieder zu aktivieren:
1 2 | sudo ip link set eth0 down sudo ip link set eth0 up |
Da dies bei laufender SSH-Verbindung unpraktikabel ist, solltet ihr hier lieber über sudo reboot das Gerät neu starten.
4.4 Einstellen der Zeitzone usw.
Im Ubuntu-Image wird bereits ein Kommandozeilenwerkzeug mitgeliefert, um grundlegende Konfigurationen wie Zeiteinstellung, Tastatureinstellung etc. vornehmen zu können. Dieses ist über
1 | sudo board-config.sh |
erreichbar und die Benutzung sollte selbsterklärend sein. Benutzt ihr das Werkzeug über SSH, so kommt beim Versuch es zu beenden vermutlich ein
1 | Please set the screen resolution |
Das scheint ein Bug zu sein. Um das Programm unter SSH zu beenden, reicht es, die SSH-Sitzung zu beenden und eine neue aufzumachen.
Das waren meine ersten Erfahrungen mit dem günstigen Board. Ich hoffe, ich konnte auch euch dadurch den Einstieg etwas erleichtern.
Bei Fragen, Problemen, Anregungen etc. könnt ihr natürlich wie immer das Kommentarfeld unten benutzen.
Hallo & danke für den Artikel!
Ich bin gerade schwer am überlegen, ob ich mir das Gerät zulege. Darf man wissen, was du so alles damit planst? Läuft Kodi darauf vernünftig?
Danke!
Hallo Ivy,
mangels HDMI-Kabel konnte ich Kodi noch nicht testen ;)
Konkrete Pläne habe ich noch nicht, eventuell wird er meinen Raspberry Pi B Rev. 1 ersetzen (Cups-Server, Funkstekckdosen, DHT11, Python-Scripte), da dieser nur mickrige 256MB RAM besitzt.
Moin,
wo gibts denn das Teil aktuell so günstig? Finde da kaum Händler, die die Platine im Sortiment haben.
Thx
Hi Jogi,
es gab ihn bei exp-tech kurze Zeit für ca. 12€ inkl. Versant – mittlerweile scheint er dort ausverkauft :(
Hallo! Erstmal danke für den Artikel. Als Besitzer eines pcduino würde ich mich über weitere Beiträge darüber sehr freuen, insbesondere Funksteckdosen und Heimautomatisierung. Sind in der Richtung noch Beiträge geplant?
Moin Jochen,
ja – es sollte da noch etwas in der Richtung kommen. Leider habe ich nur bisher keine Zeit gefunden dafür und kann auch für die nähere Zukunft nichts garantieren.