PCWelt Hacks

February 14, 2018 | Author: claus47 | Category: Soldering, Raspberry Pi, Linux Distribution, Solder, Computing
Share Embed Donate


Short Description

PCWelt Hacks...

Description

Das Sonderheft-Abo Kein Risiko, keine Verpflichtung & bares Geld sparen!

Jetzt abonnieren, mehr wissen & sparen!

Ihre Abo-Vorteile auf einen Blick: » Sie sparen 1,-€ gegenüber dem Einzelkauf. » Sie erhalten die Lieferung versandkostenfrei. » Sie haben keine Mindestabnahme und können das Abo jederzeit beenden.

» Sie erfahren vorab per E-Mail was Sie in der nächsten Ausgabe erwartet.

» Sie haben die freie Entscheidung und bezahlen nur die Ausgaben die Sie interessieren.

www.pcwelt.de/sonderheft-abo Telefon: 0711 / 72 52 277, E-Mail: [email protected] PC-WELT erscheint im Verlag IDG Tech Media GmbH, Lyonel-Feininger-Str. 26, 80807 München, Registergericht München, HRB 99187, Geschäftsführer: York von Heimburg. Die Kundenbetreuung erfolgt durch den PC-WELT Kundenservice, ZENIT Pressevertrieb GmbH, Postfach 810580, 70522 Stuttgart, Geschäftsführer: Joachim John

Editorial

Christian Löbering, stellv. Chefredakteur [email protected]

Von der Schulbank zum Star Wie kann es sein, dass eine kleine Platine, die ursprünglich als Computer-Plattform für Lehrprojekte an Schulen und Universitäten entwickelt wurde, über Nacht zum Millionen-Seller wird? Ganz einfach: Sie gibt uns das zurück, was Microsoft, Apple, Google & Co. uns genommen haben. Raspberry Pi ist im Gegensatz zu den meisten anderen Lehrplatinen kein einfacher Mikrocontroller, der nur Daten nach den eigens programmierten Vorgaben verarbeitet, sondern ein vollwertiger Linux-PC – und das für gerade mal 35 Euro. In Wirklichkeit ist er aber deutlich mehr als das. Er ist das überfällige Werkzeug, das uns die Möglichkeit zurückgibt, unsere Kreativität technisch umzusetzen. PC, Mac, Smartphones, Tablets – alles das läuft heute auf hoch abstrahierten und geschlossenen Systemen, die für den produktiven Alltagseinsatz optimiert wurden. Die Offenheit der Plattform, die die PC-Technik erst so groß gemacht hat, wie sie heute ist, geht dabei zugunsten von „intuitiver“ Bedienbarkeit mehr und mehr verloren. Und so befriedigt Raspberry Pi gewissermaßen ein fast vergessenes Bedürfnis. Wir wollen Dinge erschaffen, Ideen selbst umsetzen und Neues dazulernen. Und dafür brauchen wir die passenden Werkzeuge. Es gibt also keinen besseren Anlass, als unsere neue Heftreihe für Selbermacher mit einem großen Raspberry-Pi-Special zu starten. Viel Spaß beim Lesen und Basteln!

Jetzt testen! Die neue Kiosk-App von PC-WELT, LinuxWelt & Co. Wir haben die Kiosk-App der PC-WELT komplett neu entwickelt – und die Vorteile für Sie liegen direkt auf der Hand: Alle Hefte, alle Reihen und alle Sonderhefte stehen dort für Sie bereit. Als Abonnent – zum Beispiel der PC-WELT oder der LinuxWelt – bekommen Sie jeweils die digitale Ausgabe für Ihr Mobil­gerät kostenlos dazu, auch mit speziell angepasstem Lesemodus und Vollzugriff auf die Heft-DVD. Die App läuft auf allen großen Mobil-Plattformen – iPhone, iPad, Android-Smartphone und -Tablet, Windows 8.1 und Windows Phone 8, allerdings noch nicht unter Linux. Die erste Ausgabe, die Sie herunterladen, ist für Sie kostenlos. Um die App zu nutzen, installieren Sie die für Ihr Gerät passende Version einfach über die Download-Links unter www. pcwelt.de/magazinapp. Auf dieser Seite finden Sie auch alle Informationen zu den neuen Funktionen und zum schnellen Einstieg. Übrigens: Wenn Sie eine digitale Ausgabe gekauft haben, können Sie sie auf allen Ihren Geräten lesen.

PC-WELT Sonderheft Hacks 3/2014

www.pcwelt.de/magazinapp

3

Inhalt

Kleine PCs für kleines Geld

Für viele Aufgaben sind Desktop-PCs oder Notebooks einfach ungeeigent. Im Wohnzimmer sind sie oft zu laut, und für einen Dauerbetrieb als NAS sind die Stromkosten zu hoch. Ein-Platinen-PCs arbeiten dagegen geräuschlos und mit geringer Leistungsaufnahme. Inzwischen gibt es etliche davon für unterschiedliche Einsatzgebiete.

12

8

Raspberry Pi

Phänomenale Platine

26 Raspberry als Mediacenter

 eräuschlos im Wohnzimmer: G Musik und Video mit dem Mini-PC

12 Mini-PCs für wenige Euro

30 Raspberry als NAS

14 Löten leicht gemacht

32 Raumüberwachung

16 Reverse Engineering

36 Zeitrafferaufnahmen







 bersicht: Die Mini-PCs CubieÜ board 2, Udoo, Cubox Pro und Utilite Pro kurz vorgestellt

 as man zum Löten braucht und W wie eine gute Lötstelle gelingt  ardware analysieren: FunktionsH weise von Geräten mit Hard- und Software ergründen

20 Hardware-Hacks

4

Ihre Geräte können mehr: Neue Firmware stattet Hardware mit neuen Funktionen aus

Mini-PCs wie der Raspberry Pi sind genügsam im Unterhalt. Daher sind sie besonders gut als Basis für ein selbst gebautes NAS geeignet.

30

Grundlagen E in-Platinen-PC: Raspberry Pi, die unterschiedlichen Modelle und Betriebssysteme

Raspberry Pi als Selbstbau-NAS







 aten im Netz: Der Raspberry Pi D eigent sich gut als Datenspeicher für das heimische Netzwerk  ewegungen melden: ÜberwaB chungssystem mit Motion und Pi K amera fensteuern: Mit einem Raspberry Pi und einer Kamera Zeitrafferfilme erstellen

40 VPN mit dem Raspberry Pi

 ehr Sicherheit: Mit einem VPNM Server kommen Sie auch unterwegs sicher ins eigene Netz

44 Besserer Sound

58 Bastelprojekte

46 Raspberry to go

64 Programmieren für den Pi





 er gute Ton: Die Audioausgabe D des Raspberry Pi lässt sich durch Zusatz-Hardware optimieren  er Raspberry Pi eignet sich nicht D nur für den Desktop, sondern auch für den mobilen Einsatz





Kurz vorgestellt: Spannende Selbstbauprojekte mit dem Raspberry Pi  oftware entwickeln: Python und S Scratch für den schnellen Einstieg in die Programmierung nutzen

50 Raspberry als Wetterstation

 aten erfassen: Luftfeuchtigkeit, D Temperatur und mehr mit Wettersensoren protokollieren

52 Funksteckdosen steuern

 tom frei: Hausgeräte über das S lokale Netz oder Internet schalten

56 Displays für den Pi

 ini-Displays mit und ohne Touch M an den Raspberry Pi anschließen

Sonderheft Hacks 3/2014

PC-WELT

Inhalt

Hacks

Sonderheft 3|2014

ss

20

ge

• ID

sc

14

hlo

©

en

.

Raspberry Pi Komplett-Paket 2014

nz

n Ge win

h äde n od er en t ga n lbare Sc ge n e te r mit g fü

tun

Haf

r be

re

las

Wa

se

ne

n.

a ge

Die

go s u n d P r od uk t be ze i c hnu nge H • Lo n sin d etr

ü

ei d

er

is

t

en

g un

ch

je

we

ili

ge

n

He

rst

ell

e r.

Die

auf

diese

espeicher te Software wir d un r DV D g te

r Au s

sc

hlu ss

jeg

lic

he

rG e



hr

le

80

Gmb

ein g

Label PCW SH DIY PW fin.indd 1

Schon mit der Standard-Firmware kann die Fritzbox viele Aufgaben im Heimnetz übernehmen. Eine alternative Firmware holt aber noch mehr aus dem Gerät heraus.

dia

Falls Sie Fragen zu den Programmen haben, wenden Sie sich bitte direkt an die Software-Anbieter.

Sechs Systeme auf DVD

Fritzbox-Hacks

e h M

n is t

aus

ec GT

Alle Systeme für den Mikro-PC: · Noobs 1.3.4 · Open Elec 3.2.4 · Rasp BMC · Raspbian Wheezy

05.02.14 12:06

Der Raspberry Pi wird standardmäßig ohne Software ausgeliefert. Mit einem der sechs Systeme auf DVD hauchen Sie dem Gerät Leben ein. Sie haben die Wahl zwischen mehreren Desktop- und Multimedia-Systemen.

6

Die Highlights der DVD PC & Software 66 Wasserkühlung für den PC

 it Wasser lassen sich leistungsM starke Computer leise und effizient kühlen

70 Linux auf dem Mac

Z u Gast auf dem Mac: Linux läuft nicht nur auf einem PC, sondern neben OS X auch auf dem Mac

74 Software selbst gemacht

P rogrammieren lernen: Software mit Javascript und Object Pascal entwickeln

78 Die eigene Android-App

 oftware für Android: Mit dem koS stenlosen Android Studio erstellen Sie eigene Apps fürs Smartphone

Hardware-Hacks 80 Fritzbox-Hacks

 SL-Router aufbohren: Mit einer D alternativen Firmware spendieren Sie der Fritzbox neue Funktionen

84 Kamera-Hacks

 chönere Bilder: Mit etwas ZuS satzausrüstung verbessern Sie Ihre Fotos deutlich

88 Do-it-yourself-Tipps

 elber machen: Die Tipps stellen S interessante Miniprojekte mit maximalem Nutzen vor

92 Activeboard mit Wiimote

 it einer Nintendo Wiimote und M einem Infrarotstift basteln Sie sich ein interaktives Whiteboard

96 Beamer im Eigenbau

 ie im Kino: Ein 300-Euro-BauW satz ermöglicht den BeamerSelbstbau an einem Wochenende

Arch Linux 2014.01

Javascript-Quiz

Noobs 1.3.4

Lazarus-Quiz

Open Elec 3.2.4

Mini-Quiz (Android Studio)

Pidora 18r2

Python-Beispiel

Raspbian 2014-01-07-wheezy

Freetz-Linux 1.3.1

Rasp BMC Setup-Programm

Virtualbox 4.3.6

Risc-OS 2013-07-10-RC11

7-Zip 32/64 Bit 9.20

Android Studio 0.3.0

Notepad++ 6.5.3

Scratch für Windows 1.4

Putty 0.6.3

Lazarus 32/64 Bit 1.0.14

Win 32 Disk Imager 0.9

Schlanke Linux-Distribution für erfahrene Anwender Mit Noobs lassen sich mehrere Systeme auf dem Raspberry Pi installieren Gut vorkonfigurierte Mediacenter-Distribution auf XBMC-Basis Fedora-Variante für die Installation auf dem Raspberry Pi Debian-Ableger für die Installation auf dem Raspberry Pi Komfortable Mediacenter-Distribution auf der Basis von XBMC Sehr schnelles Betriebssystem für die ARM-CPU-Plattform Android-Entwicklungsumgebung für Windows XP, Vista, 7, 8 und Linux Scratch-Entwicklungsumgebung für Windows XP, Vista, 7, 8

Service 6 DVD-Inhalt 87 Impressum

PC-WELT

Sonderheft Hacks 3/2014

Object-Pascal-Entwicklungsumgebung für Windows XP, Vista, 7, 8 und Linux

Javascript-Beispielcode zum Ausprobieren und selbst anpassen Beispielprojekt für Lazarus in Delphi/ Objekt Pascal Quellcode für ein Beispielprojekt zum Ausprobieren in Android Studio Python-Quellcode zur Steuerung von LEDs am Raspberry Pi Linux-System für Virtualbox, in dem sich die Fritzbox-Firmware erstellen lässt Virtualisierungs-Software für für Windows XP, Vista, 7, 8 Leistungsfähiges Packprogramm für Windows XP, Vista, 7 und 8 Komfortabler Editor für Windows XP, Vista, 7 und 8 Telnet- und SSH-Client für Windows XP, Vista, 7 und 8 Image-Programm zur Installation von Systemen für Windows XP, Vista, 7, 8

5

Software auf DVD

Hacks für Einsteiger und Profis Hacks

Sonderheft 3|2014

hlo

14

ge

• ID

sc

20

ss

en

.

Raspberry Pi Komplett-Paket 2014 ©

aus

ech GT

ein

n is t

n Ge win

h äde n od er en t ga n lbare Sc ge n e te r mit g fü

tun

go s u n d P r od uk t be ze i c hnu nge H • Lo n sin d

get

Haf

Gmb

r

nz

e üb

re

rla

e ss

eW a

n.

a ge n

Die

dia

Alle Systeme für den Mikro-PC: · Noobs 1.3.4 · Open Elec 3.2.4 · Rasp BMC · Raspbian Wheezy

Me

Technik ist spannend und und macht Spaß. Das Heft ist voll mit Anleitungen, die zeigen, was man mit Hard- und Software realisieren kann. Auf der beiliegenden DVD finden Sie die nötigen Programme.

ei er

je

we

ili

ge

n

He

rst

ell

e r.

Die

auf

diese

espeicher te Software wir d un r DV D g te

r Au s

s

chl us

sj eg

lic

he

rG e



hr

le

Label PCW SH DIY PW fin.indd 1

d

is

en

n tu

g

ch

Falls Sie Fragen zu den Programmen haben, wenden Sie sich bitte direkt an die Software-Anbieter.

05.02.14 12:06

Von Thorsten Eggeling

Die Begriffe „Hacker“ oder „hacken“ tauchen im deutschen Sprachraum meist im Zusammenhang mit kriminellen Machenschaften auf. Im Film sieht man dann oft zwielichtige Gestalten, die in fremde Netzwerke eindringen oder Bankkonten plündern. Ursprünglich hatte „Hack“ jedoch keine negative Bedeutung. Gemeint waren einfallsreiche technische Lösungen, die manchmal nur Spaß machten, oft aber auch nützlich waren. Ein Hacker in diesem Sinne bastelt gerne mit technischem Gerät, baut seinen Computer selbst, begeistert sich für Technik und möchte wissen, wie Dinge funktionieren. Genau darum geht es in diesem Heft.

Der Boom des Mini-PCs Computer sind in den letzten Jahren etwas langweilig geworden. Für die meisten Nutzer sind es nur noch Gebrauchsgegenstände für die tägliche Büroarbeit oder für die Kommunikation über das Internet. Trotzdem gibt es immer noch eine große Gruppe, die gerne neue Software ausprobiert oder beispielsweise für Spiele das letzte Quäntchen Leistung aus

6

dem PC herausholen möchte. Nur so ist es zu erklären, das sich um Ein-Platinen-Computer wie den Raspberry Pi (www.raspberrypi.org) eine so schnell wachsende Community bilden konnte. Der Raspberry Pi führt die PC-Idee teilweise auf seine Ursprünge zurück. Personal Computer (PCs) wurden in den 80er-Jahren des vorherigen Jahrhunderts als Heimcomputer für jedermann entwickelt. Geräte von Commodore, Apple und Atari wurden in nennenswerten Stückzahlen verkauft und standen bald in vielen Arbeits-, aber auch Kinder- und Jugendzimmern. Computerspiele waren sicher der Hauptanreiz für den Kauf des Commodore C64 oder Atari XL. Nebenbei konnte man auch noch etwas Programmieren lernen oder sich mit einem – meist illegalen – Akustikkoppler in Mailboxnetzen mit anderen austauschen oder Software herunterladen. Der Raspberry Pi wurde eigentlich als Lehrund Lerncomputer entwickelt. Die britische Raspberry Pi Foundation hat sich zum Ziel gesetzt, die Programmierkenntnisse von Kindern und Jugendlichen zu fördern. Dies erschien den Gründern nötig, weil immer weni-

ger angehende Informatikstudenten die nötigen Voraussetzungen für das Studium mitbringen. Schnell war klar, das dafür ein eigener, kleiner Computer nötig ist, der preisgünstig genug für Jugendliche und außerdem leicht zu hacken ist. Am Anfang hielt die Raspberry Pi Foundation 1000 Platinen für ausreichend und war dann von der großen Nachfrage selbst überrascht. Inzwischen wurden über zwei Millionen Raspberry Pi verkauft. Viele erfahrene Anwender, Firmen und Forschungsinstitute sind von den Möglichkeiten begeistert, die der Mini-PC bietet. Ständig entstehen neue Projekte, die vom Mediacenter fürs Wohnzimmer bis zum Cloud-Server im Rechenzentrum reichen.

Schwerpunkt Raspberry Pi Im Heft bildet der Raspberry Pi den thematischen Schwerpunkt. Sie erfahren beispielsweise, wie sich mit dem Ein-Platinen-Computer ein Mediacenter oder ein Datenspeicher im Netzwerk (NAS) einrichten lässt. Wer gerne bastelt und Freude an experimentellen Hardware-Kombinationen hat, findet ebenfalls zahl-

Sonderheft Hacks 3/2014

PC-WELT

Software auf DVD

Programmieren und Basteln Der souveräne Umgang mit dem PC ist eine Schlüsselqualifikation für viele Berufe. Wer mehr als nur Tabellenkalkulation und Textverarbeitung beherrscht, hat deutlich bessere Chancen am Arbeitsmarkt. Grundkenntnisse

AVM-Router um etliche Funktionen erweitern, und Sie können auch eigene Programme darauf laufen lassen. Dafür benötigen Sie allerdings eine eigene Entwicklungsumgebung unter Linux. Die ist in einer virtuellen Maschine jedoch schnell eingerichtet. Auf die HeftDVD haben wir dafür Freetz-Linux und die Virtualisierungs-Software Virtuabox gepackt.

Quelle: wikimedia.org, Jwrodgers

in der Programmierung sind schnell erworben, und auf der Heft-DVD finden Sie alle Werkzeuge, die Sie dafür benötigen. Aber auch wenn Sie die Software-Entwicklung nicht zum Beruf machen wollen, kann Programmieren ein spannendes Hobby sein. Wir erleichtern den Einstieg mit einigen Beispielprojekten und Tutorials, die in die Programmierung mit Javascript, Delphi und Java einführen. Der Einstieg in Javascript ist besonders einfach. Sie brauchen dafür nur einen Texteditor und einen Webbrowser. Beides ist auf jedem PC bereits vorhanden. Kenntnisse in Javascript sind für die Entwicklung von Webapplikationen und Smartphone-Apps hilfreich. Mit Delphi lassen sich Programme mit grafischer Oberfläche erstellen, die sofort unter Windows oder Linux laufen. Java ist die Standard-Programmiersprache für Android-Apps. Von der HeftDVD installieren Sie dafür die kostenlose Entwicklungsumgebung Android Studio. In Ihrem heimischen Netzwerk werkelt eine Fritzbox unbeachtet vor sich hin? Die Fritzbox nur als DSL-Router zu verwenden, ist eigentlich Verschwendung. Denn die Fritzbox kann mehr. Mit eigener Firmware lässt sich der

reiche Anleitungen und Anregungen. Sie können mit dem Raspberry Pi Funksteckdosen fernsteuern, eine Wetterstation bauen oder eine Raumüberwachung realisieren. Das alles funktioniert jedoch nicht ohne Software. Auf Heft-DVD finden Sie daher alle Systeme für den Raspberry Pi, damit Sie sofort loslegen können. Am einfachsten geht das mit Noobs. Sie müssen unter Windows nur eine SD-Karte formatieren und Noobs darauf kopieren. Dann starten Sie den Raspberry Pi und wählen aus, welches System Sie nutzen möchten. Als universelles System empfiehlt sich Raspbian, eine auf Debian basierenden Linux-Distribution. Sie können aber auch Open Elec oder Rasp BMC einrichten und damit den kleinen Computer als Mediacenter nutzen. Die Hardware ist leistungsfähig genug, um auch HD-Videos bis 1080 p ruckelfrei abzuspielen.

Die Hardware konnten wir zwar nicht auf die DVD packen, dafür finden Sie aber alle wichtigen Betriebssysteme und Tools für den Raspberry Pi auf der Scheibe.

Auf Heft-DVD: Systeme für den Raspberry Pi, Programme und Tools Programmname

Version

Kategorie

Beschreibung

Sprache

Arch

2014.01

Raspberry Pi

Betriebssystem

Multilingual

Noobs

1.3.4

Raspberry Pi

Installationsprogramm für Systeme

Multilingual

Open Elec

3.2.4

Raspberry Pi

Multimedia-System

Multilingual

Pidora

18r2

Raspberry Pi

Betriebssystem

Multilingual

Raspbian

2014-01-07-wheezy

Raspberry Pi

Betriebssystem

Multilingual

Raspberry Pi

Setup-Tool für Rasp BMC

Englisch

Rasp BMC Setup-Programm Rasp BMC Image

2013-12-23

Raspberry Pi

Multimedia-System

Multilingual

Risc-OS

2013-07-10-RC11

Raspberry Pi

Betriebssystem

Multilingual

Android Studio Linux

0.3.0

PC & Software

IDE für Android-Apps

Englisch

Android Studio Windows

0.3.0

PC & Software

IDE für Android-Apps

Englisch

Java SE 32 Bit (JDK)

7u45

PC & Software

Java Development Kit

Englisch

Java SE 64 Bit (JDK)

7u45

PC & Software

Java Development Kit

Englisch

Javascript-Quiz



PC & Software

Beispielprojekt

Deutsch

Lazarus 32 Bit

1.0.14

PC & Software

Entwicklungsumgebung

Deutsch

Lazarus 64 Bit

1.0.14

PC & Software

Entwicklungsumgebung

Deutsch

Lazarus für Linux

1.0.14

PC & Software

Entwicklungsumgebung

Deutsch

Lazarus-Quiz



PC & Software

Beispielprojekt

Deutsch

Mini-Quiz (Android Studio)



PC & Software

Beispielprojekt

Deutsch

Python-Beispiel



PC & Software

Beispielprojekt

Deutsch

Scratch für Windows

1.4

PC & Software

Entwicklungsumgebung

Deutsch

Freetz-Linux

1.3.1

Hardware-Hacks

IDE für Fritzbox-Programme

Multilingual

Virtualbox

4.3.6

Hardware-Hacks

Virtualisierungs-Software

Deutsch

7-Zip 32 Bit

9.20

Tools

Datenkompressionsprogramm

Deutsch

7-Zip 64 Bit

9.20

Tools

Datenkompressionsprogramm

Deutsch

Notepad++

6.5.3

Tools

Komfortabler Texteditor

Deutsch

Putty

0.6.3

Tools

Telnet/SSH-Cleint

Englisch

Win 32 Disk Imager

0.9

Tools

Image-Tool

Englisch

PC-WELT

Sonderheft Hacks 3/2014

7

Grundlagen / Mini-PC mit ARM-CPU

Phänomenale Platine

Quelle: David Wolski

Raspberry Pi, die Grundlagen: Ein LinuxComputer im Taschenformat mit ARM-CPU, großzügig vorhandenen Videoausgängen, dokumentierten Pins und niedrigem Preis löst eine DIY-Revolution aus. Von David Wolski

In den vergangenen Monaten hat eine Klasse preisgünstiger Minicomputer auf einer Platine eine Nische für sich erobert: Deren bekanntester Vertreter ist der Raspberry Pi („Himbeerkuchen“), eine Entwicklung aus Großbritannien. Das Board des EinplatinenComputers mit ARM-CPU ist gerade mal etwas größer als eine EC- oder Kreditkarte. Vom Prozessor über den Speicher, den SD-Kartenslot, die Audiobuchse bis zu den Anschlüssen für USB, Composite Video, HDMI und bei Modell B 100-MBit-Ethernet ist alles auf der Platine untergebracht. Dazu kommt eine Stiftleiste mit Pins, um den Raspberry Pi nicht nur als eigenständigen Mini-PC einzusetzen, sondern auch als Mikro-Controller, auf dem ein ausgewachsenes Linux-Betriebssystem läuft. Das alles gibt es für gerade mal etwas mehr als 30 Euro. Seit der Veröffentlichung im Februar 2012 wurde der Raspberry Pi in seinen beiden Varianten bereits über zwei Millionen Mal verkauft.

8

Überraschungserfolg: Python und ARM-Plattform Für die kleine Entwicklerfirma, die britische Raspberry Pi Foundation, die unter anderem vom legendären Spieleentwickler David Braben („Elite“, „Frontier“) und dem Broadcom-Technikchef Eben Upton erst 2009 gegründet wurde, kam der Erfolg ganz unerwartet: Der Raspberry Pi (www.raspberrypi.org) war ursprünglich für den Unterricht an Schulen und Universitäten zugeschnitten, um Studenten eine einfache, günstige und ausgiebig dokumentierte Computerplattform für didaktische Projekte und eigene Basteleien zur Verfügung zu stellen. Den Dozenten fiel auf, dass Studenten in ihren Kursen zwar die theoretischen Grundlagen der Informatik und Kommunikationstechnik lernen, aber von Praxis, Hardware und erfinderischer Problemlösung immer weniger Ahnung haben. Anders als die Homecomputer der 80er-Jahre laden Windows-PCs nicht gerade zum Experimentieren ein, und mit Linux be-

schäftigten sich auf dem Desktop-PC freiwillig auch nicht alle. Der Raspberry Pi war keinesfalls die erste Platine ihrer Klasse: Es gab bereits zuvor, seit 2005, den Mikro-Controller Arduino. Der aber wird über C/C++ und eine ähnliche Sprache mittels Java-Entwicklerumgebung programmiert und hat eine andere Zielgruppe. Der Raspberry Pi will Lernkurve und Einstiegshürden möglichst flach halten und präsentiert sich als eigenständiges Mini-System, auf dem ansehnliche Linux-Betriebssysteme laufen und das sich für ein breiteres Einsatzfeld eignet. Von Mediaplayer, Mini-Server, spielerischer Linux-Plattform bis hin zu Mikro-ControllerEigenschaften hat der Raspberry Pi alle nötigen Voraussetzungen auf dem Board. Das „Pi“ im Namen steht dabei für die gut zu erlernende, aber äußerst mächtige und formal sehr strikte Script-Sprache Python, die auch die Merkmale einer höheren Programmiersprache mit dynamischer Typisierung besitzt (à „Raspberry mit Scratch & Python“, Seite 64).

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Mini-PC mit ARM-CPU

Ein zusammengestelltes Set, von links oben nach rechts unten: Raspberry Pi Modell B (38 Euro), Gehäuse (7 Euro), HDMI-Kabel (4 Euro), Netzteil (12 Euro), SD-Karte (10 Euro), optionale Kühlkörper (4 Euro). Für die Entwicklung von Bibliotheken wird Python von den Raspberry-Pi-Entwicklern und Zulieferern von Extra-Hardware für den Minicomputer bevorzugt. Natürlich bietet ein Raspberry Pi mit einem ausgewachsenen LinuxSystem aber auch den C-Compiler GCC und die Interpreter von vielen handlichen Script-Sprachen wie Bash. Dies ist auch einer der großen Unterschiede zu Mikro-Controllern wie dem Arduino: Anstatt einer speziellen Entwicklungsumgebung (IDE) gibt es alles an Script- und Programmiersprachen, die Linux hergibt.

Die ARM-CPU: Risc statt Cisc Mit der Entwicklung des Raspberry Pi begann Eben Upton mit einem Team von Akademikern bereits 2006 und ließ sich vom BBC Micro von 1981 inspirieren. Zunächst sollte wie auf dem Arduino ein Atmel-Mikro-Controller zum Einsatz kommen. Die ersten Prototypen mit ARMProzessor hatten dann die Größe eines USBSticks, bis im August 2011 der Raspberry Pi in der Form vorgestellt wurde, die später als Modell B bekannt wurde und eine ausgewachsene Desktop-Umgebung stemmen kann. Auf der Platine arbeitet ein ARM-Chip der elften Generation (ARM11) mit 700 MHz in einem System-on-Chip (SoC) von Broadcom, das CPU, GPU und Speicher vereint. Das „R“ in ARM steht für Risc, was wiederum die Abkürzung für „Reduced Instruction Set Computing“ ist. Dies bezieht sich auf den Befehlssatz, den ein Chip unterstützt. Bei ARM ist der Satz auf Befehle zum Speicherzugriff (Load/Store), Arithmetik, boolesche Operatoren und Programmsprünge (Jumps und Subroutinen) begrenzt. Im Vergleich zu Cisc-Prozessoren (Complex Instruction Set Computing), um die es sich bei der x86-Plattform handelt, ist das ein überschaubares Arsenal. Alle Befehle benötigen jeweils

PC-WELT

Sonderheft Hacks 3/2014

Ein komplett zusammengebauter Raspberry Pi im Gehäuse: Die aufgeklebten Kühlkörper und das stabile Gehäuse sind zwar optional, können aber die Lebenserwartung der Platine verlängern.

einen Takt zur Ausführung, und dies hilft, die Prozessorstruktur von ARM einfach und dank weniger Transistoren klein zu halten. Weniger Transistoren bedeuten weniger Leistungsaufnahme. Zudem enthält der ARM-Befehlssatz eine interne Auszeichnung von If-else-Schleifen, um Sprünge in Programmen zu vermeiden und damit deren Ablauf zu beschleunigen. Da

es sich um eine eine eigene Architektur handelt, müssen Programme und Betriebssysteme speziell für ARM kompiliert sein, und Optimierungen im Programmcode zahlen sich ebenfalls aus, um das letzte Quäntchen Leistung aus dem Chipdesign herauszuholen. Der Preis von Risc ist, dass Operationen wie Fließkommaberechnungen und Divisionen mit den vor-

Unterschiede Modell A und Modell B Anders als die Typenbezeichnung nahelegt, gab es das Modell B des Raspberry Pi schon vor dem Modell A. Letzteres gibt es erst seit Februar 2013 zu kaufen, rund ein Jahr nach dem Modell B. Die Unterschied ist der Ethernet-Port mit EthernetController auf dem Board des Modell B, welcher bei Modell A fehlt. Zudem ist Modell A nur mit 256 MB RAM ausgestattet und hat nur einen USB-Anschluss, womit insgesamt die Leistungsaufnahme von 3,5 Watt auf 1,5 Watt sinkt. Modell A eignet sich damit weniger als Mini-PC oder Server, sondern wird eher einer Rolle als sparsamer Mikro-Controller gerecht.

Markteinführung

Modell A

Modell B

Februar 2013

Februar 2012

System-on-Chip

Broadcom BCM2835

CPU

ARM11 700 MHz (ARM-v6-Befehlssatz)

GPU

Videocore IV, Open GL ES 2.0, Full HD

RAM

256 MB

USB-Ports

1 (USB 1.1/2.0)

512 MB 2 (USB 1.1/2.0)

Videoausgang

HDMI, Composite-Video (RCA), DSI-Pins

Audioausgang

HDMI, 3,5-mm-Klinke

Datenträger

SD-Karten-Slot

Peripherie Netzwerk

GPIO-Pins, SPI, I2C, UART keines

Echtzeituhr (RTC) Leistungsaufnahme

300 mA (1,5 W)

Stromversorgung

700 mA (3,5 W) 5 V, über Micro-USB oder GPIO

Abmessung

86 mm x 54 mm

Gewicht Preis

10/100 MBit Ethernet keine

45 g 30 Euro

37 Euro

9

Grundlagen / Mini-PC mit ARM-CPU

Das System-on-Chip des Raspberry Pi: Beschriftet ist der Chip zwar mit der Angabe des Speicherherstellers, aber es handelt sich um ein Broadcom BCM2835 SoC (System-on-Chip), das CPU, GPU und RAM auf einem Chip vereint. handenen Befehlen nicht in einem Taktzyklus erledigt sind, sondern mehrere Zyklen benötigen. Cisc geht einen ganz anderen Weg: Der Befehlssatz bietet Aktionen, die Speicherzugriffe und logische Operationen zusammenfassen, und Abkürzungen für häufig benötigte Muster. Wofür ein Risc-Prozessor beispielsweise drei Taktzyklen benötigt, kann Cisc in einen einzigen Taktzyklus abarbeiten.

Die Grafikeinheit: GPU mit Decoder-Fähigkeiten Eine Besonderheit des System-on-Chip des Raspberry Pi ist der integrierte Grafikchip, bei dem es sich um einen Videocore IV von Broadcom handelt, der auf Full-HD-Output (1080p) und Multimedia-Codecs spezialisiert ist. Die Shader-Leistung liegt über jener des Nvidia

Eher bescheiden: Im Kontrast zur üppigen GPU und dem HDMI-Ausgang ist der analoge Audioausgang mit 3,5-mm-Klinke eher eine Notlösung. HDMI transportiert aber ebenfalls ein (digitales) Audiosignal.

Tegra 2 und laut Eben Upton in vielen Bereichen um den Faktor zwei über jener eines iPhone 4S. Ihren Speicher zwackt die GPU vom verfügbaren Hauptspeicher des SoC ab. Der GPU ist es zu verdanken, dass sich der Rasp­ berry Pi so gut als Mediaplayer eignet und auch Linux-Desktops mit Leichtigkeit in hoher Auflösung darstellen kann. Die Leistung hat aber ihren Preis: Die Treiberbibliotheken für Open Max, Open GL ES und Open VG und natürlich die Codecs sind Closed-Source, und die GPUFirmware wird als „Binary Blob“ geladen. Es ist also nicht alles Open Source, was im Raspberry Pi steckt, und es lassen sich nicht alle Fähigkeiten der GPU nutzen. Für den Anschluss von TV-Geräten und Bildschirmen verfügt die Platine über einen HDMIAusgang, der auch das Audiosignal digital

Modell B Board und Anschlüsse im Überblick

Quelle: Raspberry Pi Foundation

Die Einteilung in Modell A und B ist eine Hommage an den Homecomputer BBC Micro der 80er-Jahre. Aufgrund seiner früheren Marktreife und üppigen Ausstattung hat das Modell B des Raspberry Pi bis dato höhere Stückzahlen erreicht. Zwischenzeitlich kam die Fertigung in China nicht nach, und die Raspberry Foundation öffnete im September 2012 eine zweite Fertigung in Sonys Halbleiterwerk in Wales. Es liegen inzwischen zwei Revisionen des Modell B vor: die aktuelle Revision 2.0 erhöht die Menge des RAMs von 256 auf 512 MB, entfernt die Spannungsbegrenzung für USB-Ports und hat Montagelöcher auf der Platine.

10

überträgt. Für die Kompatibilität mit älteren Fernsehern gibt es zudem noch CompositeVideo in Form einer Cinch-Buchse (RCA), die NTSC und PAL unterstützt. Über die Stiftleiste gibt es die Möglichkeit, per Serial Peripheral Interface (SPI) Touchscreens und LCD-Panels anzusteuern. Auf dem Board selbst gibt es in Form eines FlachbandkabelAnschlusses ein Display Serial Interface (DSI), das aber wegen der geschlossenen GPU-Firmware nicht einfach zur Verfügung steht. Entsprechende Treiber müssten erst von Broadcom lizenziert werden.

Linux-Systeme: Speziell für den Raspberry Pi Bereits in der frühen Entwicklungsphase der Platine war klar, dass als kostenloses Betriebssystem nur Linux in Frage kommen würde, da Linux in Sachen Lizenzen und hinsichtlich Anpassung und Distribution äußerst freizügig ist – die meisten Teile des Systems stehen unter der GNU Public License 2.0 und kompatiblen Lizenzen. Zudem gibt es den Linux-Kernel schon eine ganze Weile für die ARM-Plattform, das Rad muss also nicht neu erfunden werden. Allerdings gibt es seitens der Hardware eine Einschränkung: Der Prozessor des Raspberry Pi nutzt noch den Befehlssatz des ARMv6, eine in die Jahre gekommene CPU-Generation von 2002. Auf der Platine laufen also nur LinuxKernel, die noch für diese alte ARM-Version kompiliert wurden. Es gibt deshalb nicht alle Linux-Distributionen für den Raspberry Pi. Viele Distributionen, etwa Ubuntu, haben keine Unterstützung mehr für ARM-Architekturen unter dem ARMv7. Das ist aber kein großes Hindernis, denn es bleibt Anwendern immer noch die Qual der Wahl, mit welcher Geschmacksrichtung von

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Mini-PC mit ARM-CPU

SD-Karte als Datenträger: Um den Raspberry Pi mit einer der geeigneten Linux-Distributionen in Betrieb zu nehmen, muss das System auf einem anderen Rechner erst auf die Karte übertragen werden. Linux der eigene Raspberry Pi laufen soll. Die Raspberry Pi Foundation hat mit verschiedenen Linux-Distributionen geliebäugelt und sich dann zu einer Empfehlung für Raspbian durchgerungen, eine Entwicklung, die auf Debian 7 („Wheezy“) basiert und für den Raspberry Pi optimiert ist. Die meisten Debian-Programmpakete stehen auch für Raspbian zur Verfügung. Es gibt darüber hinaus aber unzählige Systeme, die sich auf nahezu jedes Einsatzgebiet der Platine spezialisiert haben. Eine aktuelle Liste an Linux-Distributionen für den Raspberry Pi finden Sie unter http://elinux.org/ RPi_Distributions. Folgende Distributionen haben zudem von der Raspberry Pi Foundation besondere Aufmerksamkeit bekommen und stehen über das komfortable Installationsscript Noobs zur Verfügung. Sie finden übrigens alle erwähnten Distributionen von Noobs auch auf der Heft-DVD. Arch Linux: Eine anspruchsvolle Linux-Distribution für erfahrene Anwender, die möglichst jeden Aspekt und die Konfiguration aller Details selbst unter Kontrolle haben möchten. Der Charme dieses Systems ist, mit dem Paketmanager und der großen Zahl von installierbaren Software-Paketen ein maßgeschneidertes oder auch extrem schlankes LinuxSystem zusammenzustellen. Aufwand und Lernkurve sind hier aber eher hoch. Open Elec: Diese Distribution dient als Multimedia-Zentrum, wofür sie auf dem bewährten, fernsehtauglichen Mediaplayer XBMC basiert. Es handelt sich um ein reduziertes System für den vornehmlichen Einsatz als Player, und die Software-Auswahl von 140 Paketen über diesen Zweck hinaus ist schmal. Die Open-ElecEntwickler haben ein zusätzliches Menü in XBMC eingepflegt, das die Konfiguration des Systems erleichtert.

PC-WELT

Sonderheft Hacks 3/2014

Das Installations-Tool Noobs (New Out Of Box System): Das bootfähige Tool muss nur auf eine SD-Karte enzippt werden und zeigt beim Boot des Raspberry Pi ein Installationsmenü mit fünf Linux-Distributionen.

Pidora: Diese inoffizielle Version von Fedora bringt die von Red Hat gesponsorte LinuxDistribution auf den Raspberry Pi. Pidora entspricht der Version 18 von Fedora und enthält Kernel und Software, die speziell für den Raspberry Pi kompiliert wurden. Laut der Entwickler gibt es hier fast alle Pakete, die auch das normale Fedora 18 kennt. Raspbian: Dies ist die offiziell von der Raspberry Pi Foundation entwickelte Distribution für den Minirechner. Das Betriebssystem basiert auf Debian GNU/Linux. Die aktuelle Version auf Debian Testing heißt „Wheezy“. Als Desktop-Umgebung bringt Raspbian LXDE mit sich und ist speziell auf den Einsatz des Rasp­ berry Pi optimiert. Per Standard finden Sie auch Programme vorinstalliert, die den Einstieg in die Linux- und Programmierwelt erleichtern. Wenn Sie kein Linux-Experte sind, ist Raspbian wohl die beste Wahl, um die MiniHardware zu nutzen. Rasp BMC: Diese Distribution basiert auf Rasp­ bian und dient ebenfalls als Multimedia-Zentrum, wofür sie das bewährte XBMC als Player und Oberfläche nutzt. Anders als Open Elec handelt es sich aber um eine ausgewachsenes Debian-System mit über 20 000 installierbaren Software-Paketen. Dies ist das richtige System, wenn der Raspberry Pi auch, aber nicht nur als Player dienen soll. Risc OS: Ausnahmsweise kein Linux-System. Risc OS ist eine Version des originalen Betriebssystems für den Acorn Archimedes, ein Homecomputer, der Ende der 80er-Jahre bereits die ARM-Plattform nutzte. Es gibt hier zwar keine gewohnten Anwendungen, aber immerhin auch einen Webbrowser und Dateimanager. Risc OS zeichnet sich durch seine Geschwindigkeit und extrem kleinen Fußabdruck aus.

Einstieg: Mit Noobs ein System installieren Zum Start eines Linux-Systems auf dem Rasp­ berry Pi müssen Sie dessen Image unter Linux oder unter Windows auf eine SD-Karte übertragen. Unter Linux dient dazu das Kommandozeilen-Tool dd. Diese Möglichkeit gibt es unter Windows nicht, und für die MicrosoftBetriebssysteme brauchen Sie eine Hilfsanwendung wie den Win32 Disk Imager (Open Source, englischsprachig, Download unter http://sourceforge.net/projects/win32disk imager, 5,4 MB). Von einigen Distributionen wie Pidora gibt es für die Erstellung der SD-Karte auch eigene Tools. Daneben hat die Raspberry Foundation für den möglichst bequemen Start auch ein eigenes Installations-Script erstellt: Das erwähnte Tool Noobs (auf Heft-DVD, Download unter http:// www.raspberrypi.org/downloads, 1,3 GB) muss nur aus seinem ZIP-Archiv heraus auf eine FAT-formatierte SD-Karte mit mindestens 4 GB entpackt werden. Verwenden Sie zum Formatieren der Karte unter Windows am besten das Tool SD Formatter (auf Heft-DVD, Download unter https://www.sdcard.org/downloads). Stellen Sie über „Option“ den Parameter „Format Size Adjustment“ auf „On“. Wird der Raspberry Pi dann von der SD-Karte gestartet, können von einem Menü aus die Distributionen Arch Linux, Open Elec, Pidora, Raspbian oder Rasp BMC auf dem unbelegten Platz der SD-Karte eingerichtet werden. Außerdem bietet Noobs einen Recovery-Modus, der sich während des Boots mit gedrückter Umschalt-Taste aufrufen lässt und unter anderem einen Editor für die „config.txt“ sowie einen minimalen Webbrowser bietet. Das Installationsmenü kann zudem jederzeit ein frisches Linux-System neu installieren.

11

Grundlagen / Ein-Platinen-PCs

Platinen: Boards und Mini-PCs Kleinstcomputer sind keine seltenen Exoten mehr. Neben dem Rasp­berry Pi gibt es noch weitere Boards und Mini-PCs mit ARMProzessor. Wir haben uns angesehen, was vier größere Brüder des Raspberry bieten. Von Thomas Springer

Im Zuge des Raspberry-Erfolgs kamen weitere viele Kleinstcomputer und Platinen mit einem SoC-Kern ( System-on-a-Chip) auf dem Markt, die in den meisten Fällen durch leistungsfähigere Hardware glänzen. Wir haben uns vier größere Brüder des Raspberry genauer angesehen. Neben reinen Platinen haben wir dabei auch zwei Kleinstcomputer auf dem Tisch gehabt, die mit ihrer Leistung nicht nur flotte Mediaplayer oder Mini-Server abgeben, sondern durchaus Desktop-Systeme ersetzen können.

Cubieboard 2: Raspberry auf Steroiden Auf der gegenüber dem Raspberry etwas größeren Platine des Cubiebord sitzt ein AllwinnerA20-Prozessor mit einem 1-GHz-Dualcore-ARMCortex-A7 und einer Mali-400P2-Grafikeinheit, die dafür sorgt, dass auch grafische Oberflächen und Applikationen flüssig dargestellt werden. Auf dem Videoausgang unterstützt das Cubieboard damit schon Ultra-HD (2160 p).

12

Man merkt dem Cubieboard allerdings an, dass es eine kleinere Entwickler-Community als der Raspberry Pi hat: Die verfügbare Software taugt teilweise noch nicht für den produktiven Einsatz. Relativ stabil laufen Fedora, Debian, Lubuntu und Android. Mit Open PCTV gibt es auch eine Multimedia-Distribution, die aber zur Zeit noch Probleme mit der Grafikbeschkleunigung und Netzwerkanbindung hat. Das Cubieboard bringt neben viel Leistung die Möglichkeit, SATA-Laufwerke anzuschließen, bis zu 5 Volt auch ohne weiteres Netzteil. Das Betriebssystem logiert in einem Flash-Speicher mit 4 GB, und es gibt einen Micro-SD-Slot. Aktuell werden drei Versionen des Cubieboards verkauft. Das Cubieboard 3 hat mehr RAM, WLAN und GBit-LAN. Es eignet sich daher besonders gut für den Einsatz als NAS. Fazit: Das Cubieboard 2 ist für jene Nutzer interessant, die im Vergleich zum Raspberry Pi mehr Leistung und mehr Anschlüsse brauchen. Für Bastelprojekte gibt es nur wenige bebilderte Schritt-für-Schritt-Anleitungen.

Udoo: Zwei Geräte in einem Der Udoo ist ein Hybride aus einem Mini-PC und einem Arduino-Microcontroller. Die Platine ist seit Ende 2013 auf dem Markt und ist das Ergebnis einer Crowdfunding-Kampagne. Der Udoo ist in den drei Varianten Basic, Dual und Quad erhältlich, die alle von einem Freescale-i-MX6-Prozessor (ARM-Cortex-A9) angetrieben werden. An RAM ist 1 GB vorhanden, und eine integrierte GPU bringt hardwarebeschleunigte Grafik. An Videoausgängen gibt es HDMI und LVDS-Port, der auf dem Udoo gesockelt ist. Auf der Platine sind zudem Gigabit-LAN-Schnittstelle und WLAN untergebracht. Der Udoo Quad hat zusätzliche einen SATAPort. Die Prozessorleistung hat ihren Preis in Form eines großen Kühlkörpers. Die Input-Pins des verbauten Arduino Due vertragen nur 3,3 Volt, und damit ist nicht jedes Arduino-Zubehör verwendbar. Insgesamt bietet der Udoo 76 GPIOs. Programmiert wird der Arduino über eine gepatchte Arduino-Umgebung in Java, die auf einem externen PC oder direkt auf dem

Sonderheft Hacks 3/2014

PC-WELT

Quelle: www.solid-run.com

Quelle: udoo.org

Quelle:Thomas Springer

Grundlagen / Ein-Platinen-PCs

Udoo: Mit seinem großem Kühlkörper und den vielen gesockelten Anschlüssen sieht der Udoo fast schon wie ein kleines Mainboard aus.

Cubox Pro: Das würfelformige Design passt gut auf den Schreibtisch. Viel Leistung bei wenig Stromverbrauch zeichnen die Cubox Pro aus.

Udoo läuft – dort aber recht langsam. Als Betriebssystemen stehen dem noch jungen System Android, Debian und Ubuntu zur Verfügung. Die kleine Community fängt gerade an sich zu zu formieren. Viele der angebotenen Betriebssysteme laufen noch nicht ganz rund. Fazit: Linux-affine Bastler mit Arduino-Erfahrung werden sich mit dem Udoo schnell anfreunden. Aus Nutzersicht ist der Udoo eine Kombination aus einem superschnellen Rasp­ berry Pi und einem Arduino-Board.

TV-Gerät. Für die Cubox Pro gibt es aktuell neben Android viele Linux-Distributionen, etwa Ubuntu, Debian, Fedode und Open Suse. Im Betrieb kommt der Kleinrechner laut Hersteller mit 3 Watt aus, und die geringe Wärmeentwicklung im Plastikgehäuse ohne Lüfter lässt diese Angabe plausibel erscheinen. Fazit: Wer für einen platz- und stromsparenden Desktop-Ersatz zu Kompromissen bereit ist oder eine flotte Mediaserver-Plattform mit niedrigem Stromverbrauch sucht, sollte sich die Cubox ansehen.

ist man auf die Herstellerunterstützung oder eigenes Linux-Wissen angewiesen. Das ist schade, denn in seiner Konzeption ist der Utilite ein bezahlbarer und grundsolider DesktopErsatz oder Thin Client, der WLAN, Bluetooth und Audio an Bord hat. Von der SSD bootet das System in Sekunden. Dank der Unterstützung für zwei Monitore ist die Box gut für den Einsatz auf dem Desktop geeignet. Äußerlich wirken das Gerät und die Stecker so durchdacht und hochwertig, wie es von einem Hersteller von Industrierechnern zu erwarten ist. Die Oberseite des Gehäuses ist aus Aluminium und fungiert auch als Kühlkörper. Sie wird im Betrieb unter Last allerdings sehr warm. Der Stromverbrauch liegt laut Spezifikation trotzdem nur bei maximal 8 Watt. Fazit: Wer für ein solides Gerät auch etwas mehr ausgibt, ist mit dem Utilite nicht schlecht bedient. Bis die Geräte in größeren Stückzahlen lieferbar sind, sind hoffentlich auch die noch bestehenden Kinderkrankheiten des verwendeten Ubuntu-Systems behoben.

Cubox Pro: Stromsparer im Minigehäuse Die Cubox Pro wird als Desktop-Ersatz beworben. Je nach Version stecken zwischen 500 MB und 2 GB RAM zusammen mit einem 800-MHzMarvell-SoC (Cubox Pro) beziehungsweise einem Freescale i-MX6 im Gerät. Die Platine ist in einem Plastikgehäuse untergebracht, aus dem Schnittstellen für LAN, USB, HDMI und eSATA herausgeführt sind. Die Nutzung von Pins für Eigenentwicklungen ist hier nicht vorgesehen. Der Hersteller hat bei der Anpassung des Linux-Systems an die gegebene Hardware gute Arbeit geleistet. Noch flotter arbeitet der Zwerg mit Android. LAN und eSATA machen die Cubox als kleines NAS-System und MiniServer attraktiv sowie als Mediabox. Die Optik des Gehäuses macht sich auch gut neben dem

Utilite Pro: Ein Hauch von Luxus Mit einer Quadcore-CPU, 2 GB RAM, WLAN, Bluetooth und einer 32-GB-SSD stellt der Utilite Pro das Spitzenmodell unter den Kleinstcomputern dar. Der israelische Hersteller Compulab bietet das Gerät auch eine Nummer kleiner mit zwei Kernen und ohne SSD an. Für den Utilite Pro gibt es Ubuntu als Betriebssystem sowie Arch Linux oder die Hacker-Distribution Kali Linux, einige Mediaserver und auch ein Android-Image. Wir haben den Utilite Pro mit Ubuntu getestet. Der Kleinstrechner zeigt sich dabei durchaus willig und flott, könnte aber mit einer besser angepassten Linux-Version sicher noch mehr Leistung aus der Hardware herausholen. Es gibt kaum eine Community, und bei Problemen

Quelle: CompuLab

Cubieboard: Das Cubieboard ist etwas größer als ein Raspberry. Ungewöhnlich: Die Pinreihen stehen nach unten.

Utilite Pro: Stabiles Metallgehäuse mit Steckern rundum: Der Utilite Pro bietet viele Schnittstellen nach draußen.

Übersicht Einplatinen- und Kleinstcomputer Cubieboard 2

Udoo

Cubox pro

Utilite Pro

Allwinner A20 (Cortex A8), Dualcore, 1 GHz, 1 GB DDR3-, 4GB NANDFlash, 1 GB DDR3-480

Atmel SAM3X8E (Cortex-M3) / Freescale i.MX 6 ARM (Cortex-A9), Quadcore, 1 GHz, 1 GB DDR3-800

Marvell Armada 510 (Cortex A8), Single Core, 800 MHz, 2 GB DDR3800 keine

Freescale i.MX6 (Cortex-A9) Quadcore, 1,2 GHz, 2 GB DDR3-1066

GBit-LAN, WLAN 802.11b/g/n, Audio in/out, 4 x USB 2.0, RS232, Micro SD, SATA, CSI-Cam, LVDS, HDMI Mediaserver, Android, Debian, Ubuntu, Arch, Yocto

GBit-LAN, 2 x USB 2.0,RS232, Micro SD, eSATA, IR, HDMI

2 x GBit-LAN, WLAN 802.11b/g/n, Bluetooth, Audio in/out, 5 x USB 2.0, 2 x RS232, MicroSD, HDMI, DVI Android, Ubuntu, Kali

Straßenpreis

100-MBit-LAN, Audio in/out, 3 x USB 2.0, RS232, Micro SD, SATA, IR, HDMI Mediaserver, Android, Ubuntu, Linaro, Debian, Kali, Fedora, Mer, Tinycore und weitere 68 Euro

Je nach Ausführung ab 73 Euro

150 Euro

220 Euro

Hersteller

www.cubieboard.org

www.udoo.org

www.solid-run.com

www.utilite-computer.com

CPU und RAM GPIO-Pins Schnittstellen Betriebssysteme (Auswahl)

PC-WELT

Sonderheft Hacks 3/2014

Mediaserver, Android, Debian, Ubuntu, Open Suse, Arch, Xilka, Crux

keine

13

Grundlagen / Löten

Löten leicht gemacht

Quelle: © artalis - Fotolia.com

Für ein gutes Ergebnis beim Löten ist der umsichtige Umgang mit Lötmaterial, Lötstück und Lötkolben Voraussetzung. Doch keine Bedenken, es ist ein Handwerk und keine Zauberei.

Von David Wolski

KurzER RÜCKBLICK: Schon vor mehr als 5000 Jahren wurden im alten Ägypten und in den hellenistischen Stadtstaaten Metalle, vorrangig Gold und Silber, miteinander verbunden. Vor 4000 Jahren fand die heute als Weichlöten bekannte Methode weite Verbreitung. Immerhin waren die alten Römer damit sogar in der Lage, bis zu 400 Kilometer lange Wasserleitungen aus Bleirohren zusammenzufügen. Man spricht bei Temperaturen bis 450 °C von Weichlöten und darüber von Hartlöten. Die moderne Weichlöttechnik begann mit der Erfindung des ersten elektrischen Lötkolbens durch Ernst Sachs, der dafür 1921 auch ein Patent erhielt und in Berlin die Firma Ersa für elektrische Lötkolben gründete. Aufgrund der industriellen Lötverfahren in der Elektronikfertigung kommt Handlöten heute nur noch bei Einzelstückbau, Nachbestückung, Reparatur und Wartung vor. Und natürlich im Do-it-yourself-Bereich, der seit rund zwei Jahren wieder enorm an Bedeutung zunimmt.

14

Ausrüstung: Was Sie zum Löten brauchen Wer mit dem Löten beginnen will, braucht einen Handlötkolben oder eine Lötstation, die Temperaturen zwischen 320 und 360 °C liefern. Zum häufigen Löten von Bausätzen und Schaltungen ist eine temperaturgesteuerte Lötstation am besten geeignet. Zum einen wird die eingestellte Temperatur in einem engen Bereich kontrolliert, und zum anderen ist die Bedienung gerade für Anfänger komfortabel. Um metallische leitfähige Verbindungen herzustellen, dient das Lot. Dabei handelt es sich um eine Legierung mit niedrigen Schmelzpunkt (180 bis 230 °C). In der Regel enthält der Lotdraht in seiner Mitte als sogenannte Seele bereits das Flussmittel. Dies sind Baumharze wie Kolophonium oder künstliche Harze, die zum Benetzen der Lötstelle und zum Binden von Oxidprodukten sowie Verschmutzungen wichtig sind. Zum Löten wird der heiße Lötkolben zusammen mit dem Lotdraht mit ruhiger

Hand an die Lötstelle gebracht. Das sich schnell verflüssigende Lötzinn stellt dann innerhalb sehr kurzer Zeit die Verbindung her. Die gesamte Lötstelle muss gut benetzt und mit genügend Zinn versorgt sein. Das ist erkennbar daran, dass nach dem Abkühlen die Konturen der verbundenen Teil noch erkennbar sind, das Lot jedoch Leiterbahn und Pin völlig umschließt und die Oberfläche nicht porös, körnig oder brüchig ist. Die heute verwendeten bleifreien Lote führen zu glatten, leicht matten Oberflächen an der Lötstelle. Während der Übergangsphase vom flüssigen in den erstarrten Zustand darf die Lötstelle keinesfalls bewegt werden. Praktikertipp: Anblasen der Lötstelle verkürzt die Abkühlzeit. Sogenannte „kalte Lötstellen“, die keinerlei Zuverlässigkeit aufweisen, sondern nur schlecht zusammengefügte Verbindungen sind, die bei der geringsten Bewegung versagen, müssen unbedingt vermieden werden. Im Idealfall dauert ein Lötvorgang maximal zwei

Sonderheft Hacks 3/2014

PC-WELT

Quelle: Coronium, CC-BY-SA-3.0, GFDL

Grundlagen / Löten

Temperaturgesteuert und komfortabel: Wer einige Elektronikprojekte im Jahr hat, ist mit einer Lötstation (ab 50 Euro) besser bedient als mit einem Handlötkolben. bis drei Sekunden, optimal wäre etwa eine Sekunde. Dafür ist aber viel Übung nötig. Zeiten über vier bis fünf Sekunden weisen auf einen schlecht vorgeheizten Lötkolben oder eine zu niedrig eingestellte Lötstation hin und müssen unbedingt vermieden werden. Zu lange Lötzeiten können außerdem erhebliche Schäden zur Folge haben. Ablösen der Kupferleiterbahn von der Leiterplatte (Delamination) und Defekte an der Schaltung durch überhitzte Bauelemente werden durch kurzes, flottes Löten vermieden. Weil sich zudem gegen elektrostatische Entladung äußerst empfindliche Halbleiter wie MOS-ICs auf Baugruppen befinden, müssen Lötgeräte gut geerdet sein (ESDsicher) und eine antistatische Arbeitsumgebung sowie ein Potenzialausgleich hergestellt werden. Auch die Hände entladen oder per hochohmigem Band erden. Für einzelne Arbeiten in empfindlichen Schaltungen können Praktiker auch kurz Lötkolben oder Lötstation vom Netz trennen und rasch kleine Lötarbeiten durchführen. Die in der Lötkolbenspitze gespeicherte Wärmeenergie reicht dafür im Allgemeinen aus.

Check: Gute und schlechte Lötstellen Woran erkennt man nun eine gute und zuverlässige Lötstelle? Eine der wichtigsten Bedingungen für ordentliche Lötstellen ist die gründliche Vorbereitung von Material und Werkzeug für eine fehlerfreie Arbeit. Das heißt also: Leiterbahn oder Lötstelle sowie der Baueilanschluss (Pin) müssen tadellos sauber sein, mithin keinerlei Reste von Verschmutzung, Spuren von Kontaktreinigungsmitteln (Ölen) und natürlich Oxidprodukten aufweisen. Zwar löst das Flussmittel Verschmutzungen und Oxide mit auf, doch wäre es für das Ergebnis fatal, nicht gut vorbereitet zu arbeiten. Auch die Lötkolbenspitze muss sauber sein, darf also nicht verzundert sein.

PC-WELT

Sonderheft Hacks 3/2014

Kalte Lötstelle: Schlechte Verbindungen entstehen, wenn das noch weiche Lot erschüttert wird oder nicht heiß genug war und die Kontakte nicht benetzt hat.

Hat man früher Kupferspitzen immer wieder kurz zum Reinigen abgefeilt, so muss man heute die verchromte Oberfläche der allgemein verwendeten Dauerspitzen nur kurz an einem kleinen feuchten Schwämmchen oder Metallgespinst abwischen.

Auslöten: Bauelemente von Platinen entfernen Muss man vorher Bauteile auslöten, kann man im Falle von zweipoligen diskreten Komponenten wie Kondensatoren oder Widerständen das an der Lötstelle aufgeschmolzene alte Zinn per Pumpe absaugen. Bei ICs (Integrated Circuits) und vieladrigen SMDs (Surface Mount Devices, oberflächenmontierte Elektronik-Komponenten) bedient man sich im Allgemeinen spezieller Lötwerkzeuge, die dieser Bauform angemessen sind. Es geht mit einigem Geschick bei geringer Anschlusszahl auch noch mit speziel-

ler Auslötlitze, die das Lot an jedem Pin einzeln aufsaugt. Zum Einlöten von SMDs ist höchste Präzision nötig. Denn dabei muss das Bauteil erst exakt und völlig plan auf den Lötpunkten platziert sein und dann fehlerfrei verlötet werden – ohne Überhitzung durch die Lötspitze und ohne Brückenbildung zu den nächsten Komponenten in der oft engen Schaltung. Beim Löten entstehen wegen des Flussmittels gesundheitsschädliche Dämpfe. Kleine Lötarbeiten sollte man deshalb bei guter Belüftung oder neben einem Tischventilator ausführen. Wer allerdings regelmäßig lötet, sollte in eine Lötrauchabsaugung investieren, die es in kleiner, kostengünstigen Ausfertigung schon ab 30 Euro für den Hobbybereich gibt (http:// amzn.to/1iABpdt). Nach Lötarbeiten muss man immer die Hände gut waschen. Rückstände von Lötarbeiten sind Sondermüll und gehören nicht in die schwarze Tonne zum Restmüll.

Giftige Dämpfe Blei wurde verbannt Weichlöten beruht darauf, dass eine auf Bleifrei: Lötdraht, der dem Metall Zinn beruhende Legierung mit ab Juli 2006 im Hanniedrigerem Schmelzpunkt (Liquidus von del ist, muss frei von Bleifreilot zwischen 180 bis 230 ºC) andere Bleilegierungen sein. metallische Werkstücke (beispielsweise Nur bei Restbeständen Kupferleiterbahn und Bauteilanschluss) gibt noch bleihaltige sicher verbindet. Die früher verwendeten Lotdrähte. Bleilote (SnPb) hatten einen Schmelzpunkt von etwa 185 ºC, doch seit Juli 2006 dürfen in der üblichen Konsumelektronik solche Lote grundsätzlich nicht mehr verwendet werden. Dieser EU-Direktive mit der Abkürzung RoHS (Reduction of Hazardous Substances) haben sich praktisch alle Industrieländer zügig angeschlossen. In der Folge gibt es heute einige verschiedene Hauptgruppen bleifreier Zinnlote als Bleifrei-Ersatz: SnAg (Zinn-Silber mit höherer Aufschmelztemperatur und schlechterer Benetzung); SnCu (Zinn-Kupfer, wird in der automatischen Fertigung selten verwendet); SnZn (Zinn/Zink, Korrosionsprobleme); SnAgBi (Zinn-Silber-Bismuth, schwierig niedrig schmelzende Phase und sehr korrosionsanfällig). Zum üblichen Handlöten verwendet man meist universelle Lotdrähte aus einer Legierung von Zinn, Silber und/oder auch noch Kupfer (SnAgCu) für einen Temperaturbereich zwischen 217 und 227 ºC.

15

Grundlagen / Reverse Engineering

Quelle: © RS.Foto - Fotolia.com

Reverse Engineering

Am Anfang steht die Frage „Wie funktioniert das?“. Reverse Engineering beschäftigt sich damit, die Funktionsweise von Geräten mit den Mitteln von Mikroelektronik und Software zu ergründen. Von Thomas Springer

Elektronik funktioniert heute über ein komplexes Zusammenspiel von Soft- und Hardware. Im Gegensatz zum Analogzeitalter müssen Sie aber keine quadratmetergroßen Schaltpläne mehr lesen und verstehen, sondern können sich in vielen Fällen mit dem PC oder einem Kleinstrechner wie dem Raspberry Pi direkt in die Schaltkreislogik, das Bus-System oder in das Betriebssystem des Gerätes ein-

16

klinken. Die nächsten zeigen Seiten exemplarisch den Prozess des Reverse Engineering, um ein Gerät in seinen Grundzügen zu verstehen.

Übersicht: Dein Freund, das Datenblatt Weil die meisten Platinen doppelseitig bestückt und beschriftet sind, ist es immer nötig, eine Platine zur Analyse aus dem Gehäuse des Ge-

räts zu entfernen. Denken Sie daran, dass Schrauben vom Hersteller oft unter Aufklebern oder Gummifüßen versteckt werden. Obligatorischer Sicherheitshinweis: Zerlegen Sie keine Geräte, die noch mit dem Stromnetz verbunden sind. Einige Netzteile, etwa Computernetzteile, können auch im ausgesteckten Zustand zu gefährlichen Stromschlägen führen. Liegt die Platine frei, finden sich

Sonderheft Hacks 3/2014

PC-WELT

Quelle: Thomas Springer

Grundlagen / Reverse Engineering

Eine Mini-Stereoanlage: Das Board basiert auf dem Mikrotek MT-1389DE-System-OnChip. Rechts über dem Board liegt ein serieller Anschluss für Firmware-Updates. darauf immer Bauteile, deren Funktion es zu identifizieren gilt. Grundsätzlich sind fast alle größeren Bausteine so beschriftet, dass sich im Web ein zugehöriges Datenblatt finden lässt, wenn man eine Suchmaschine mit der Beschriftung füttert. Ein Datenblatt verrät Funktionsweise, Hersteller und Typ eines Bauelements. Eine der größten Online-Datenbanken dafür ist http://www. alldatasheet.com mit 20 Millionen abrufbaren Datenblättern.

Versteckte Chips: Unter Kunstharz Schwieriger wird es, wenn man auf hochintegrierte Schaltkreise blickt, wie sie in elektronischen Geräten verbaut sind: Dort findet man häufig nur wenige passive Bauteile wie SMDWiderstände und einen mehr oder weniger großen schwarzen Kunstharzfleck, einen sogenannten „Glob-Top“. Darunter verbirgt sich meist ein Chip, der direkt auf der Platine aufliegt. Gelegentlich kommt Kunstharz zum Einsatz, um einen verwendeten Chiptyp zu verstecken. Die Glob-Top-Bauweise macht Geräte billiger, aber auch wenig hackerfreundlich. Ein Beispiel ist die Personenwaage von Typ „XY-3069“, die in Hunderten Varianten mit fast identischer Elektronik aus chinesischer Produktion in Badezimmern steht. Das Gewicht wird über je zwei Dehnungsmessstreifen in den Füßen der Waage gemessen und über eine sehr kleine Veränderung des Widerstands an die Zentraleinheit gegeben. Um Temperatureinflüsse auszugleichen, kommen je zwei unterschiedliche Elemente zum Einsatz, die sich eine Masse teilen. In einer einfachen Schaltung wäre ein Signalverstärker eingebaut, der die Daten an eine Recheneinheit mit Displaysteuerung weitergibt. Die Funktionen der Waage sind alle in einem winzigen verklebten Chip integriert, der nichts von sich preisgibt.

PC-WELT

Sonderheft Hacks 3/2014

Unbelegte JTAG-Pins im RWE Smart Home: Diese doppelreihige Sockelleiste unten auf der Platine ist ein unerschlossener JTAG-Anschluss mit 2 x 10 Pins.

Geheime Funktionen auf der Platine Auf vielen Platinen ist mehr drauf, als man auf dem ersten Blick sieht. Auf unserer Waage etwa ist deutlich erkennbar ein freier Platz, auf dem vermutlich optional die Verdrahtung einer Körperfettmessung Platz findet. Viele komplexere Platinen stellen jedoch weitere Anschlüsse für Techniker bereit, die oft noch aus der Designphase stammen und nicht bestückt sind, also keine Stiftleiste besitzen. Wichtigte Anhaltspunkte geben Zahl und Beschriftung der Pins oder Lötpunkte auf der Platine. Auf sehr vielen Platinen findet man serielle Schnittstellen mit oder ohne Stiftsockel. Auf Geräten mit Flash-Speicher gibt es oft Pins, über die sich das System im Betrieb debuggen und der Speicher auslesen und verändern lässt. Über einen seriellen Bus gelangt man mit Hilfe eines Terminal-Programms und den richtigen Geschwindigkeitseinstellungen meist an eine Logdatei vom Boot-Vorgang des Systems, gelegentlich sogar an eine KommandozeilenShell. Viele Systeme erlauben zudem, anstelle des eigentlichen Systems ein Not- oder Rettungssystem zu starten, mit dem beispielsweise eine neue Firmware oder ein neuer BootLoader geflasht werden kann. Gestartet wird dieses System meist durch eine undokumentierte Tastenkombination. Eine Art Quasi-Standard für den Start von Boot-Menü oder Rettungssystem ist ein dreimaliges Drücken der Leertaste vor dem Boot-Vorgang, gelegentlich schaltet die „!“-Taste dann weitere Administratorfunktionen frei.

Firmware: Über Pins auslesen Auf vielen Systemen müssen für die Nutzung von seriellem Anschluss oder JTAG-Stiftleisten Kabel eingelötet werden. Die Verbindungsparameter sind so gut wie immer 8N1, die Baud-

Rate ermitteln Sie durch Ausprobieren. Ein JTAG-Anschluss ist ein Hauptgewinn: Er bietet meist Zugriff auf die Speicherbereiche des Systems. In der Praxis ist ein erfolgreiches Auslesen der Firmware ohne Dokumentation aber eine schwierige Aufgabe, wenn keine Schritt-für-Schritt-Beschreibung zum Reverse Engineering vorliegt. Oft ist es möglich, die Firmware anhand einer Firmware-Update-Datei zu analysieren, die es auf der Hersteller-Webseite gibt. Häufig versteckt sich dahinter nichts anderes als ein winziges Linux in einem gepackten Dateisystem, das sich nach dem Auspacken der Image-Datei als Loopback-Device auf einem Linux-PC mounten lässt, beispielsweise mittels sudo mount -o loop Um Dateien und Dateisysteme aus der Firmware zu holen, gibt es eine Reihe von LinuxTools wie das das Open-Source-Tool Binwalk (http://www.binwalk.com).

Der Bus: Interne Kommunikation Neben der direkten Verbindung zum System gibt es auf vielen Platinen auch die Möglichkeit, an Komponenten oder Bauteilen Informatio-

Weiterführende Links Dass Reverse Engineering kein Hexenwerk ist, zeigen viele Projekte aus der Welt der kreativen Nutzung von Elektronik und des Reverse Engineering, die es täglich im englischsprachigen Blog „Hack-aDay“ (http://www.hackaday.com) zu lesen gibt. Deutschsprachig ist dagegen das Forum http:// mikrocontroller.net. Es gehört zu den meistfrequentierten deutschsprachigen Elektronikforen.

17

Grundlagen / Reverse Engineering

Zerlegte Wetterstation: Die drei verbundenen Platinen bilden die Basisstation einer Funkwetterstation vom Typ Digitech LD 0266. Mit Hilfe von angeklemmten „Grabbern“ lassen sich die Daten auf der Leitung abgreifen. nen abzugreifen oder sich gar dort als Kommunikationspartner anzumelden. In Frage kommen für derartige Verbindungen Sensoren, ICs oder Speicherbausteine und natürlich alles, was im Gerät als Modul ausgelegt ist. Die Kommunikation erfolgt so gut wie immer über ein Standardverfahren und ist aufgrund der definierten Verbindung leicht abzuhören. BusSysteme wie SPI eignen sich aber auch dazu, viele Eeprom-Typen direkt durch das Anklemmen von Kabeln an Prozessor-Pins oder Lötstellen auszulesen. Auf dieselbe Weise lassen sich Bus-Systeme und Sensoren direkt auf der Platine eines Gerätes abgreifen. Von einer Wetterstation des Typs Digitech LD 0266 könnte man etwa den Messwert des verbauten Temperatursensors direkt abgreifen und das Signal an einen Raspberry Pi weiterleiten.

Die wichtigsten Bus-Systeme Sollen mehrere Elektronikbauteile oder Platinen miteinander kommunizieren, ist dafür ein Protokoll als gemeinsame Sprache notwendig. Dies sind die verbreiteten Protokolle und BusSysteme, die dafür zum Einsatz kommen: I2C: Der I2C-Bus von Philips ist seit den 80erJahren ein Universal-Bus der Elektronik. In der einfachsten Variante unterstützt er bis zu 112 Geräte, die im laufenden Betrieb an- und abgeschaltet werden können. Es gibt zwei Varianten von I2C. Raspberry Pi und andere BastelBoards unterstützen mit Standard- und FastI2C beide Varianten. Viele Sensoren, Eeproms

18

und auch Lego Mindstorms kommunizieren über I2C. Die Pins des auch als TWI (Two-WireInterface) bekannten Busses sind auf Platinen oft mit SDA, SCL, VCC und GND beschriftet. SPI: Das Serial Peripheral-Interface (SPI) ist einfacher und schneller als I2C, unterstützt aber keine direkte Adressierung von Kommunikationspartnern. SPI ist weniger standardisiert als I2C und benötigt sechs Kabel, die auf Boards meist mit SCLK, SCK, MOSI, SIMO, SDI, MISO, SOMI oder SDO beschriftet sind. Dazu kommen Versorgungsspannung (VCC), Masse (GND) und eine Steuerleitung, die festlegt, bei welchem Empfänger das Datenpaket ankommt. Das exakte Protokoll der Datenübertragung ist bei SPI nicht spezifiziert. Es haben sich aber vier Modi durchgesetzt, die als Mode 0 bis Mode 3 bekannt sind. Der Rasberry Pi unterstützt alle gängigen Modi. 1 Wire/One Wire: Verbindet viele Geräte ohne großen Aufwand an einem Bus. Der Bus kommt mit zwei Kabeln aus (Data, Ground), ist meist aber noch mit optionalem Kabel zur Spannungsversorgung versehen. Der One-Wire-Bus ist mit 16 KBit/s eher langsam, kann dafür mit ungeschirmtem Draht aber über Strecken von bis zu 300 Metern verlegt werden. Dies macht den One-Wire-Bus vor allem für Sensor- und Überwachungsnetzwerke interessant, bei denen nicht viele Daten übertragen werden müssen. Auf Platinen sind die Pins des One-WireBusses meist mit GND, DQ und VCC beschriftet. Mit Raspberry Pi, Arduino und anderen BastelBoards lassen sich One-Wire-Sensoren und

Eine Speicherkarte unter der Lupe: Hinter diesen Lötpunkten der Platine von Transcend versteckt sich nicht weniger als eine serielle Schnittstelle. Geräte mit den Standardbibliotheken des Betriebssystems ansprechen und auslesen. UART: Hinter dem „Universal-AsynchronousReceiver-Transmitter“ verbirgt sich nichts anderes als die altbekannte serielle Schnittstelle. Die Schnittstelle ist über Terminal-Programme zugänglich. Auf Platinen wird sie gelegentlich für einfache Kommunikationsprozesse verwendet. Viel häufiger jedoch wird das serielle Protokoll als Debug-Interface genutzt. Etwa zum Lesen der Boot- und Service-Nachrichten, zur Neuprogrammierung von Flash-Bausteinen oder für Reset. Viele Hersteller verstecken die UART-Schnittstelle auf unbelegten und unbeschrifteten Lötpunkten auf dem Board. Wo eine UART-Schnittstelle beschriftet ist, finden sich vier Pins mit RX, TX, VCC und GND. Zum Hacken empfiehlt sich entweder ein altes Modemkabel oder alternativ ein USB-to-SerialAdapter. JTAG: Eine Bus-Schnittstelle aus den 80erJahren, die zum Debuggen komplexer Schaltung diente, sich aber zu einem universellen Standard entwickelte und von der IEEE genormt wurde. Über JTAG ist meist ein lesender und schreibender Zugriff auf den Systemspeicher möglich. Leider ist JTAG nur auf dem Papier genormt: Es gibt JTAG-Anschlüsse mit 2 x 5 und solche mit 2 x 10 Pins. In EmbeddedGeräten sind aber auch Schnittstellen mit 12, 14 und 16 Pins zu finden. JTAG-Pins sind gelegentlich mit TDI, TDO, TCK, TMS, TRST und GND beschriftet. Die Pinbelegung scheinen viele Hersteller nur als Empfehlung aufzufassen,

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Reverse Engineering

und ohne passend konfigurierte Programme geht gar nichts. Bei unbekannten Geräten stellt dies meist eine nur schwer zu überwindende Hürde dar, erst mit Dokumentation oder Anleitungen wird JTAG brauchbar. Für die Ansteuerung wird ein USB-Adapter benötigt. Als Standard-Software zum Lesen und Schreiben der JTAG-Schnittstelle empfiehlt sich das OpenSource-Programm Open OCD (http://openocd. sourceforge.net) für Linux.

Auf einen Bus aufspringen Um verschiedene Busse auf einer Platine oder einem Baustein „anzuzapfen“, benötigen Sie Hard- und Software. Im einfachsten Fall ist das ein Raspberry Pi, der von Haus aus so gut wie alle bekannten Schnittstellen ansprechen kann. Aufgrund der einfachen Auslegung der Raspberry-GPIOs ist dafür manchmal noch ein wenig Lötarbeit vonnöten, im Prinzip lassen sich aber alle gängigen Busse auch direkt über den Raspberry ansteuern. Neben speziell für den Raspberry entwickelten Software-Paketen und Python-Schnittstellen unterstützen auch Standardprogramme wie Flashrom (http:// www.flashrom.org) die Kommunikation über die GPIOs des Kleinstrechners. Bevor Sie SPI, I2C und Co. mit dem Raspberry Pi benutzen können, müssen die zugehörigen Kernel-Module gestartet sein. Die entsprechende Konfigurationsdatei bei Raspbian ist „/etc/modprobe.d/raspi-blacklist. conf“. Dort sind die Kernel-Module gelistet, die nicht geladen werden. Kommentiert man die gewünschten Module aus, können sie über einen Eintrag in „/etc/modules“ beim nächsten Systemstart geladen werden. Die Module in „/etc/modules“ sind als i2c-dev, spi-dev und w1-gpio oder w1-therm (One Wire) einzubinden. Mit dem Befehl lsmod können Sie auf der Kommandozeile herausfinden, welche Module aktuell geladen sind. Tools zum Ansteuern der Bus-Systeme können mit dem Befehl sudo apt-get i2c-tools libi2c-dev python-smbus unter Raspian installieren. Wer sich für Elektronik interessiert, findet vom Haushaltsgerät bis zur Heimelektronik einen schier unerschöpflichen Fundus an zugänglicher Hardware, die sich zum Spielen und Experimentieren, aber auch zum Realisieren eigener Ideen anbietet. Der Raspberry Pi bietet vielfältige Möglichkeiten, Sensoren, Displays aber auch komplette Geräte zu kombinieren, auszulesen, und zu steuern. Besonders reizvoll ist, die Funktionalität vorhandener Geräte mit dem Kleinstrechner zu kombinieren und so beispielsweise ins Netzwerk zu bringen.

PC-WELT

Sonderheft Hacks 3/2014

Konfiguration des Raspberry Pi als Bastel-Board: Die Unterstützung für Bus-Systeme wie I2C muss auf dem Raspberry Pi in Form von Kernel-Modulen in der Datei „/etc/modprobe“ erst noch manuell aktiviert werden.

Reverse Engineering Nützliche Ausrüstung Für den Einsteig genügt schon ein Satz Kabel, Adapter, Klemmen, Multimeter und für anspruchsvolle Projekte ein Raspberry Pi, denn das Gerät kann über die eigenen Pins gut mit Bus-Systemen anderer Mikroelektronik verbunden werden. USB-Multitalent: Für rund 25 Euro gibt es bei verschiedenen Anbietern USB-Adaptermodule oder USB-Kabel auf Basis der FTDI-2232H-Familie, die mit Hilfe verschiedener Bibliotheken die Protokolle I2C, SPI und JTAG direkt über den USB-Port zugänglich machen. Der Chip wird von gängigen FlashProgrammen erkannt, und es gibt auch eine Python-Schnittstelle. Diese kann mittels Bibliotheken wie libmpsse (http://code.google.com/p/libmpsse) auch über Python angesprochen werden. Geräte sind über eine Suche nach FTDI 2232H leicht aufzufinden. Eine reine USB-UART-Alternative sind Kabel mit PL2303-Chip – diese sind aber unter Windows 8 nur mit einigen Tricks zum Laufen zu kriegen und unterstützen nur UART. Einer für alles: Das Bastel-Board Buspirate (http://amzn.to/1ftKfqP, rund 30 Euro) bietet Unterstützung für viele gängige Bus-Systeme und stellt dabei auch gleich unterschiedliche Spannungen und Widerstände an den Pins zur Verfügung. Der Buspirate lässt sich per USB anschließen und mit Python und Perl ansprechen. Grabber: Per SMD-Technik verbaute Chips lassen sich nicht nur umständlich mit angelötetem Draht anzapfen. Wenn es ums Forschen und Experimentieren geht, sollte ein Satz winziger Klemmpinzetten, so genannte „SMDGrabber“ zur Verfügung stehen, mit denen sich einzelne Chipbeinchen oder Kontakte über eine Klammer abgreifen lassen. Ein Zehnerpack verschiedenfarbiger Grabber kostet rund 3 Euro. Sonstiges: Wenn es darum geht, nicht belegte Pins auf der Platine zu verkabeln, kommt man um einen feinen Draht und einen Lötkolben nicht herum. Wer mit dem Hilfe bei Hardware-Hacks: Das Buspirate-Modul ist ein BastelRaspberry arbeitet, kann auch Kabel und Board, mit dem sich die verschiedenen Bus-Systeme direkt verein Steckbrett verwenden. kabeln und dann über USB ansprechen lassen.

19

Grundlagen / Linux Embedded

Ihre Geräte können mehr Windows ist das domnierende Standardbetriebssystem? Mitnichten. Linux läuft auf Routern, NAS-Systemen und MultimediaGeräten. Und die Winzlinge können meist mehr, als Sie denken.

Von Thomas Springer

Als Quasi-Standard HAT SICH LINUX in der Welt von von Industrie- und EmbeddedGeräten schon lange durchgesetzt. Vom Router bis zum Teilchenbeschleuniger: Als Herz vielzahl alltäglicher und nicht alltäglicher Geräte und Steuerungen schlägt das freie Betriebssystem. Weil die meisten Kleingeräte für des Hausgebrauch weder Tastatur noch Bildschirm besitzen, bekommen Nutzer üblicherweise gar nicht mit, was intern vor sich geht. Vom Hersteller ist das so gewollt, sorgen doch frei konfigurierbare Geräte für enormen Support-Aufwand. Sie wollen den tieferen Blick riskieren? Wir zeigen, wie Sie die Vorgaben der Hersteller umgehen und eigentlich geschlossene Systeme öffnen, erweitern, mit einem Root-Zugang aus-

20

statten und auf vielen Geräten sogar ein eigenes Linux-System aufspielen. Erschließen Sie die Power und Erweiterbarkeit des freien Universalsystems für sinnvolle Funktionserweiterungen, einen stromsparenden Server-Betrieb oder einfach nur aus Spaß am Basteln. Wir stellen drei Beispiele vor.

1

D-Link DNS 320: Home-Server im NAS

Fast alle heute verkauften kleineren NetzwerkSpeichersysteme mit ein bis acht Festplatten sind eigentlich kleine Linux-Rechner auf Basis eines System on a Chip (SoC) mit eingebautem Festplatten- und Netzwerkanschluss. Unser erstes Do-it-yourself-Objekt ist ein D-Link DNS 320 NAS-System, das beim Autor ungehackt

schon seit geraumer Zeit klaglos seinen Dienst als Backup-Speicher verrichtet. In D-Links DNS 320 schuftet ein Marvel88F6281-Prozessor (ARM9) auf einem Board mit 128 MB RAM. Der Prozessor der KirkwoodReihe ist ein System-on-Chip (SoC). Das heißt, er beinhaltet nicht nur den Prozessor, RAM, sondern auch Peripherie-Controller für SATAund USB-Ports auf einem einzigen Chip. In Bastlerkreisen ist die Kirkwood-Architektur nicht unbekannt: Sie ist zum Beispiel auch im Kleinstcomputer „Pogoplug“ vorhanden (https://pogoplug.com). Dieses Gerät dient eigentlich vornehmlich für den Datenaustausch mit dem gleichnamigen Cloud-Dienst, kann aber auch zum vollwertigen Linux-Mini-PC umgerüstet werden (http://archlinuxarm.org).

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Linux Embedded

Prozessor und Plattform: Der Befehl cat /proc/ cpuinfo auf der Kommandozeile gibt Infos zur Bestückung des D-Link-Routers aus.

D-Link DNS 320: Ein einfaches und günstiges NASSystem, das mit maximal zwei Festplatten zu je 3 TB bestückt werden kann. Per USB lassen sich weitere Datenträger einbinden.

Die Kirkwood-CPU läuft ab Werk mit 800 bis 1200 MHz. Sie ist auf geringen Stromverbrauch hin optimiert und arbeitet mit weniger als 3 Watt – das ist auch der Grund, warum der im DLINK-NAS mit 800 MHz langsam getaktete Prozessor in unserem System ganz ohne Kühlkörper auskommt. Das Board ist bei näherer Betrachtung hackerfreundlich, JTAG- und serielle Schnittstelle sind auf dem Board deutlich zu erkennen. Sie sind zwar nicht mit Pins versehen, aber gut platziert auch für weniger versierte Lötartisten erreichbar. Erweiterungen von der Stange: Ein wenig Internetrecherche bringt an den Tag, dass nicht nur das Board, sondern auch das D-Link-System hackerfreundlich ist: Es unterstützt wie viele andere D-Link-Server das „fun_plug“System. Eine Liste unterstützter Geräte finden Sie im Netz unter http://wolf-u.li/nas/geraete. Das System ist denkbar einfach: Kopiert man eine Datei namens „fun_plug“ auf die im System verbaute Festplatte, werden die darin definierten Programme nach dem Systemstart aufgerufen. Voraussetzung ist dabei natürlich, dass die entsprechenden Programme für den verwendeten Prozessortyp kompiliert und auf der Festplatte des Storage-Systems abgelegt sind. Für unser DNS-320 gibt es eine ganze Reihe von Funplug-Paketen, von SSH über Compiler bis hin zu VPN, Datenbank und Webserver. Wir sind dabei nach der Anleitung im

PC-WELT

Sonderheft Hacks 3/2014

deutschsprachigen Blog von Uli Wolf (http:// wolf-u.li/4523) vorgegangen. Nach dem Herunterladen der Pakete „fun_ plug“ und „fun_plug.tgz“ von http://wolf-u. li/4523 werden diese auf „Volume_1“ des NAS kopiert. Nach einem Neustart des NAS-Systems steht ein Telnet-Server zur Verfügung, und wir können uns per Telnet beispielsweise mit dem Windows-Programm Putty (auf HeftDVD) auf dem System einloggen. Nach dem Login erscheint eine Busybox-Shell (à Kasten „Busybox – Der Alleskönner“, Seite 23). Im installierten „fun_plug-paket“ im Basisverzeichnis „/ffp“ ist eine alternative Shell enthalten, die wir zusammen mit einem Passwort für den Root-Benutzer erstellen können. Dazu dienen folgende vier Befehlszeilen: usermod -s /ffp/bin/sh root mkdir -p /ffp/home/root/ sed -ie 's#:/home/root/:#:/ffp/ home/root:#g' /etc/passwd pwconv Jetzt kann mit dem Befehl passwd ein RootPasswort gesetzt werden. Mit login loggen Sie sich dann als Superuser root ein. Um diese Änderungen permanent zu machen, müssen wir die Konfigurationsdaten für passwd, group, shadow und smbpasswd persistent speichern. Am einfachsten geht das mit einem Shell-Script, das im Funplug-Paket schon enthalten ist. /ffp/sbin/store-passwd.sh

Danach können der „Fonz-Plug“-Paketmanager mit dem Namen „slacker“ und die Repositories für vorkompilierte Pakete verschiedener Anbieter installiert werden. Anwendungen für das NAS: Ein NAS ist für den Betrieb als Home-Server mit Festplattenanschluss mit und ohne Internetanschluss prädestiniert. Pakte für Open VPN gibt es in den gängigen Funplug-Repositories ebenso wie den Webserver Lighttpd mit PHP und My SQL oder Mediaserver wie „Twonky“. Damit lässt sich der etwas blasse Mediaserver im NAS durch ein moderneres Produkt ersetzen, und auch ein selbst gehosteter Cloud-Dienst auf Basis von Owncloud (http://owncloud.org) auf dem NAS installieren. Aufgrund der hohen Prozessoranforderungen von Owncloud sollten keine überragenden Geschwindigkeitsanforderungen an die eigene Cloud gestellt werden – für den Heimbetrieb ist das System aber durchaus nutzbar. Wer die Daten auf seinem NAS verschlüsseln will, kann dies mit einem verschlüsselten Dateisystem über Dmcrypt oder Truecrypt erledigen. Ein Problem stellt dabei die im Vergleich zum PC geringe Prozessorleistung dar. Wir haben in unseren Tests keine Möglichkeit gefunden, auf die im Kirkwood implementierten Verschlüsselungsalgorithmen zuzugreifen. Der Zugriff auf verschlüsselte Partitionen mit Dmcrypt drückte die Lesegeschwindigkeit unseres Systems von rund 25 MB/s auf 5 MB/s. Der Blowfish-Algorithmus ist dabei etwa doppelt so schnell wie AES. Die Schlüssellänge hat bei Blowfish fast keine Auswirkung auf die Geschwindigkeit, Sie können getrost mit 448-BitBlowfish verschlüsseln. Tipps und How-tos zur Software-Installation: Funplug gibt es im Netz bei Uli Wolf unter

21

Grundlagen / Linux Embedded

Das Board des NAS-Systems von D-Link: Ein Blick auf die Platine des D-Link DNS 320 zeigt eine üppige Ausstattung auf einem groß dimensioniertem Board. Nicht zu sehen ist der Speicherchip, der kurioserweise auf der Unterseite angebracht ist. Die angelöteten Kabel links oben versorgen einen Ersatzventilator mit Strom.

http://wolf-u.li/nas/tutorials/ffp. Funplug ist eine sogenannte Chroot-Lösung, also eine auf dem Original-Kernel aufsetzende virtuelle Maschine. Reichen die von den diversen FunplugRepositories angebotenen Pakte und Kernelmodule nicht aus, lässt sich so auch eine komplette Linux-Distribution wie Debian oder Ubuntu im Chroot-Käfig installieren. D-Link stellt ein fertiges Debian-Paket zur Verfügung, das allerdings auf dem Stand von 2010 ist und nach dem Setup einiges an Updates verlangt. Eine Schritt-für-Schritt-Anleitung zur Installation des Debian-Systems von D-Link finden Sie über www.pcwelt.de/1jxp. Echte Puristen können das NAS auch komplett updaten. Dabei muss eine neue Firmware erstellt und im Flash-Speicher installiert werden. Hersteller D-Link stellt die dafür nötigen Tools und Quelltexte zur Verfügung, Beschreibungen zu Bau und Installation einer eigenen Firmware finden sich im Netz (www.pcwelt.de/khoo). Das Update erfordert neben etwas Erfahrung mit Boot-Loadern und Firmware-Paketen auch das Anlöten von Pins an die serielle Schnittstelle der Platine. Ein Fehler bei der Zusam-

22

menstellung der Firmware oder beim Update führt dazu, dass das ganze System nicht mehr bootet – angesichts dieses Risikos ist diese Variante wirklich nur erfahrenen Bastlern zu empfehlen. Fazit: Mit einer Linux-Erweiterung wird das NAS zum stromsparenden Server mit ausreichend Speicher, Gigabit-Netzwerk, Festplattenkäfig, USB-Anschluss und Mediaserver. Für den Dauerbetrieb im Wohnraum muss der laute Lüfter durch ein leiseres Gerät ersetzt werden.

2

Eye-Fi: Der wohl kleinste Linux-PC der Welt

Fotografen kennen und nutzen die unter dem Label Eye-Fi verkauften SD-Karten mit WLANSchnittstelle schon lange. Was nur wenige wissen: Im winzigen Gehäuse vieler WLANfähiger SD-Speicherkarten sind nicht nur ein 32-GB-Flash-Speicherchip mit Controller, sondern auch Prozessor, Speicher und WLANAdapter verbaut. Als System kommt Linux zum Einsatz, außerdem läuft ein Webserver. Hacker haben den Minirechner über die HTTP-Schnittstelle gehackt und gezeigt, dass es auch einge-

baute Standardmechanismen gibt, um als Root-Benutzer auf das Linux-System zuzugreifen. Die einfachste Möglichkeit ist, notwendige Software einfach im Hauptverzeichnis der Karte zu hinterlegen und mittels eines ShellScripts namens „autostart.sh“ beim Einstecken der Karte zu starten. Das System führt dieses Start-Script nach dem Booten als root aus. Weil das System mit einer stark abgespeckten Busybox-Version (à Kasten „Busybox – Der Alleskönner“, Seite 23) arbeitet, sollten Sie dafür zuerst eine offizielle Busybox-Version für die ARMv5-Infrastruktur des Prozessors herunterladen (www.pcwelt.de/nhr6) und im Root-Verzeichnis des Servers ablegen. Legen Sie eine Datei mit dem Namen „autostart.sh“ an, in der Sie mit dem Befehl rcS6 einen Telnet-Server auf der Karte starten. Ein Reboot lässt sich einfach durchführen, indem Sie die Karte ausund einstecken. Nach rund 20 Sekunden sollte die Karte dann per Telnet erreichbar sein, bei unserem Test gelang das unter unter der Adresse 192.168.11.254. Wer mehr als nur das Busybox-basierte Linux möchte, muss die Firmware updaten. Der Pro-

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Linux Embedded

Winzige Eye-Fi-Karte: Ein vollwertiger Linux-Computer mit CPU, RAM, Flash-Speicher und WLAN-Adapter.

CPU-Informationen der Eye-Fi-Karte im Terminalfenster: Der winzige Prozessor ist wahrlich kein Geschwindigkeitswunder, taugt aber in jedem Fall für einfache Server-Dienste wie etwa Telnet und FTP.

grammierer Dmitry Grinberg stellt im Internet eine Firmware mit aktualisiertem Kernel und einem etwas erweiterten System zur Verfügung (www.pcwelt.de/fsyz). Installation durchführen: Zum Installieren extrahieren Sie das heruntergeladene ZIP-Archiv und packen die Dateien aus dem Verzeichnis „my-update“ in das Hauptverzeichnis der SD-Karte. Nach einem Reboot ist das System einige Minuten lang mit dem Update beschäftigt. Stecken Sie in dieser Zeit die Karte nicht aus. Das Update ist fertig, wenn der Access Point „WIFISD“ zur Verfügung steht. Vorsicht: Während des Updates stellt die Karte einen anders benannten Access Point zur Verfügung. Solange dieser aktiv ist, ist das System mit dem Update beschäftigt. Nach Abschluss des Vorgangs können Sie sich per SSH mit dem Passwort „dmitry.gr_WiFiSD“auf dem System einloggen. Aufgrund des limitierten Flash-Speichers lässt sich so immer nur ein recht abgespecktes Linux starten. Wer ein komplettes Linux-System auf der Karte möchte, kann sich ein 2 Gigabyte großes Ubuntu-Image in den großen Flash-Speicher packen, das nach dem Booten des Minisystems als Chroot-System geladen wird. Der Link zum Image ist auf der Seite von Dmitry Grinberg in den Kommentaren zu finden (www.pcwelt. de/fsyz). Das entpackte Image wird bei der laufenden alternativen Firmware von Grinberg zunächst über SSH auf die SD-Karte kopiert und mit folgenden fünf Befehlen eingebunden: mkdir /mnt/linux /mnt/sd/busybox-armv5l mount / mnt/sd/xfce.p1 /mnt/linux -o loop /mnt/sd/busybox-armv5l chroot / mnt/linux bash /sbin/swapon /pagefile.sys Im Ubuntu-Image lässt sich dann sogar eine

grafische Oberfläche mit Xorg starten. Geschwindigkeitswunder sollten Sie auf einem Minirechner, der in einer SD-Karte Platz findet, aber nicht erwarten.Die derzeit herunterladbaren Software-Pakete und Distributionen sind im Vergleich zu gängigen Distributionen noch

PC-WELT

Sonderheft Hacks 3/2014

Betaware, bieten viel Raum für Verbesserungen und erfordern eine große Portion LinuxKnow-how. Wir haben beim Experimentieren die Karte mehrfach „gebrickt“, also in einen nicht mehr nutzbaren Zustand gebracht. Mit dem auf der Transcend-Website im Support-

Busybox – der Alleskönner Die sogenannte Busybox (www.busybox.net) ist eine Zusammenstellung von grundlegenden Tools, die ein Linux-Betriebssystem zu Start und Betrieb benötigt. Es handelt sich bei dieser kompakten Programmsammlung aus einer Mischung an Binaries, Shell-Scripts und Betriebssystem-Komponenten speziell für Linux Embedded. Busybox besteht aus einer Datei, die gleichzeitig eine Kommandozeile (Shell) als auch Programme bereitstellt, die bei normalen Linux-Systemen einzeln im System vorliegen. Wo dies aus Platzgründen nicht möglich ist, kommt Busybox zum Einsatz. Es steht im Ermessen des Entwicklers, welche Funktionen und Befehle er optional in die Busybox hineinkompiliert. So gibt es minimalistische Busybox-Varianten, die nicht viel mehr als eine Startumgebung und zwei oder drei Programme bieten und auf einfachsten Systemen laufen. Es gibt aber auch richtig komfortable Systeme, die viele gängige Linux-Tools in der Busybox vereinen. Auf vielen Systemen werden für Einzebefehle symbolische Links erstellt, um mit anderen Programmen kompatibel zu sein. So verweist dann etwa Telnet nicht auf ein eigenes Telnet-Programm, sondern per Symlink auf den Befehl „busybox telnet“. Statt Telnet wird dann vom Nutzer unbemerkt Busybox mit dem Parameter „telnet“ aufgerufen. Zu erkennen sind solche Busybox-basierten Systeme am schnellsten daran, dass alle Programme dieselbe Dateigröße haben und Symlinks auf das Busybox-Executable darstellen.

Busybox: Besteht aus nur einer Datei, enthält aber viele Befehle. Das Tool ist auf den meisten Linux-Systemen vorhanden und stellt Funktionen wie chown, bunzip2, cp oder egrep zur Verfügung.

23

Grundlagen / Linux Embedded

Complete Linux Installer: Bietet Auswahl verschiedener installierbarer Distributionen. Aber nicht jede Distribution läuft auf allen Geräten.

Easybox von Arcor: Eine harte Nuss für Bastler, bietet dafür eine für Router sehr üppige HardwareAusstattung zum kleinen Preis. Bereich erhältlichen Firmware-Update-Tool (www.transcend.de) ließ sich die Karte problemlos wieder in den Originalzustand bringen. Für Kühlung sorgen: Im Dauergebrauch wird der Kleinstrechner trotz seines mit rund 1,6 Watt sehr geringen Stromverbrauchs sehr heiß, das Plastikgehäuse ist nicht wirklich zur Wärmeabfuhr geeignet. Wer die Karte in Dauereinsatz mit Prozessorlast nutzen möchte, sollte über einen Kühlkörper auf dem Chip nachdenken. Wer auf den Schreibschutzschieber verzichten kann, schneidet dafür einfach mit einer heißen Klinge den oberen Teil der Karte ab. Wenn dabei der Schreibschutzschieber verloren geht, ist das kein Problem: der Kartenleser erkennt den Schreibschutz rein mechanisch. Die Lücke im Board lässt sich ohne Probleme mit einem dicken Klebeband, ein wenig Heißkleber oder Sugru auffüllen. Der Prozessor mit der Aufschrift „KeyAsic“ ist so platziert, dass die Karte auch mit einem aufgeklebten RAM-Kühlkörper noch in den Karten­ slot gängiger Leser passt. Nur in die Kamera passt der Kleine dann doch nicht mehr. Freunde des heißen Lötzinns können auf der Unterseite der Platine eine serielle Schnittstelle

anlöten. Die Belegung der Pins auf der Unterseite ist im Open-Wrt-Forum dokumentiert (www.pcwelt.de/ntsc). Ein Wermutstropfen bleibt: Das System bootet im Grundzustand nur, wenn es in einem aktiven Rechner steckt – es reicht also nicht aus, nur die Karte mit Strom zu versorgen. Aber Sie wissen ja: Wo ein Linux ist, ist auch ein Weg. Es dürfte nur eine Frage der Zeit sein, bis ein entsprechend gepatchtes System auch ohne Rechneranbindung bootet.

3

Tablet und Handy: Linux auf dem Androiden

In vielen Haushalten liegen ausgediente An­ droid-Handys und Tablets in der Schublade, die sich in vielen Fällen als vollwertige LinuxRechner nutzen lassen. In unserem Fall haben wir ein 7-Zoll-Tablet des chinesischen Herstellers Ainol zum Linux-Rechner umfunktioniert. Unser Ainol Fire ist auf dem Papier mit einer großzügigen Hardware-Ausstattung gesegnet, im Betrieb zeigt sich das Gerät aber doch als eher träge. Immerhin ist es mit einem Dualcore-Prozessor ausgestattet und kann damit mehrere Prozesse parallel verarbeiten. Die

Systeminformationen: Bei Android-Geräten bekommen Sie wie bei Linux-Rechnern auf einer Kommandozeile mit dem Befehl cat /proc/cpuinfo die Informationen zu Prozessor, Architektur und CPU-Befehlssätzen angezeigt.

24

Installation von Linux auf Android-Geräten gestaltet sich benutzerfreundlich einfach. Vorausgesetzt wird allerdings immer Root-Zugriff. Es gibt eine ganze Reihe kostenloser Apps im Store, mit denen sich verschiedene LinuxDistributionen als Chroot-System unter Android installieren lassen. Wir haben auf den werbefinanzierte „Complete Linux Installer“ (www.pcwelt.de/h0be) gesetzt und hatten die Wahl zwischen sechs verschiedenen Distributionen, von den jeweils kleine, mittlere und große Images mit mehr oder weniger vielen Paketen existieren. Aufgrund des oft limitieren Speichers auf Tablets und Mobilgeräten ist die Installation eines abgespeckten Images zu empfehlen. Ganz reibungslos läuft die Installation meist nicht ab. Fast jeder der gängigen LinuxInstaller für Android weist Defizite auf: Neben fehlenden Root-Rechten erweisen sich zu wenig Platz oder einfach ein inkompatibles System oft als Hürde, die App-Bewertungen im Store sprechen Bände. Speziell mit älterer Hardware kann die Linux-Installation trotz App-Unterstützung zu einer rechten Frickelei ausarten. Wenn es einmal installiert ist, bietet das Android-Linux eine meist über das Fernsteuerprogramm VNC auch lokal nutzbare grafische Oberfläche. Auf etlichen Geräten lässt sich Linux nicht nur per App im Chroot-Käfig, sondern auch nativ, also anstelle des installierten Android-Systems installieren. Es stehen aber bisher bei weitem nicht für alle Systeme lauffähige beziehungsweise kompilierbare Kernel zur Verfügung – hier hilft nur eine Suche im Internet. Von einer vollen Unterstützung der in vielen Geräten verbauten Hardware vom Grafikbeschleuniger bis zu GPS oder Bluetooth oder Touchscreen sind diese „Eigenbau-Kernel“ aufgrund fehlender Treiber in den meisten Fällen leider weit entfernt – meist bringt die native Installation mehr Nachteile als eine auf dem bestehenden Android-System aufsetzende Installation.

Sonderheft Hacks 3/2014

PC-WELT

Grundlagen / Linux Embedded

Neben Standard-Distributionen wie Open Suse, Fedora und Debian stehen in vielen Installern auch die Experten-Distribution ArchLinux und die Sicherheits-Distributionen Backtrack oder Kali-Linux zur Wahl. Mit Kali Linux, einem USB-to-Ethernet-Adapter und einer Bluetooth-Tastatur wird ein unscheinbares Handy zur akkubetriebenen und dabei doch völlig unverdächtigen Angriffswaffe, mit der Hacker in fremden Netzwerken schnüffeln könnten. Da als Host-System noch immer das originale Android läuft, bleibt das Gerät dabei völlig unverdächtig und kann, auch während im Hintergrund schon der Brute-Force-Angriff läuft, noch zum Telefonieren verwendet werden. Viele Geräte besitzen inzwischen eine so genannte OTG-USB-Schnittstelle, an die sich ein USB-Host anschließen lässt. Drüber können Sie nicht nur Tastatur und Maus, sondern auch externe Festplatten an dem Gerät betreiben.

4

Easybox 803: Herausfordernd für kleine Geldbeutel

Die Easybox 803a ist einer der preisgünstigsten Linux-Rechner auf dem Markt: Originalverpackte Geräte sind bei Ebay schon für unter 10 Euro inklusive Netzteil, Netzwerkkabel und Versand zu ersteigern. Aufgrund der im Vergleich zu anderen Geräten speziellen Hardware stellt die Linux-Installation auf der Box aber eine echte Herausforderung für Router-Bastler dar. Wie auf den meisten Routern lassen sich auch auf der Easybox die Mini-Systeme DDWRT (http://dd-wrt.com) und Open WRT (http:// openwrt.org) installieren. Beide Linux-Varianten sind speziell für Router mit beschränkten Hardware-Ressourcen optimiert. Die Easybox bietet eine für Router üppige Hardware-Ausstattung von 64 MB RAM und 8 MB Flash-Speicher. In Gerätetabellen taucht es meist unter der Herstellerbezeichnung „Astoria networks ARV752DPW22“ auf. Zur LinuxInstallation braucht man den seriellen Port der Box. Um an diesen heranzukommen, muss die Box geöffnet werden – das geht nach dem Herausdrehen der Schrauben meist nicht ohne Bruch der Plastikhaken, die das Gehäuse an den Seiten zusammenhalten. Unser Gehäuse wird inzwischen von drei Tropfen Heißkleber zusammengehalten. Mitten auf der Platine bei R176 sind vier Pins, an denen ein serieller Port anliegt, über den der Router eine Kommandozeile bereitstellt. Bootet man das Gerät bei serieller Verbindung (8N1, 115.200 Baud), wird durch dreimaliges Drücken der Space-Taste der Wartungsmodus gestartet, durch Drücken von „!“ kommt man in den Administratormodus.

PC-WELT

Sonderheft Hacks 3/2014

Easybox: Die Platine wird über die serielle Schnittstelle angesteuert, die über die vier Pins in der Mitte des Boards verbunden werden. Als Adapter lässt sich ein USB-Adapter oder auch ein Arduino verwenden.

Für das weitere Vorgehen gibt es insbesondere im Open-WRT-Wiki eine Reihe von Anleitungen. Diese setzen allerdings durchweg Fachwissen und teils Abstraktionsvermögen voraus: So wird die Box von den im Wiki verlinkten aktuellen Open-WRT-Versionen nicht mehr unterstützt, etliche Links führen inzwischen ins Leere. Hier sind neben Vorkenntnissen Eigeninitiative und Recherche gefragt. Auch für erste Erfahrungen mit dem EmbeddedBoot-Loader U-Boot eignet sich die Box gut – eine funktionierende Version ist leicht über die Anleitung im Open-WRT-Wiki zu installieren. Ein Fehler beim Flashen macht das Gerät zum toten Ziegelstein, dessen Wiederbelebung Lötkenntnisse und eine ruhige Hand erfordern: Legt man am linken Kontakt von R65 3,3V an

und überbrückt den Widerstand R80, lässt sich die Box über den Hardware-UART-Modus wiederbeleben. Im Betrieb unter Open WRT und DD-WRT-Linux sind DSL-Modem und WLAN nur für findige Bastler zum Laufen zu bekommen; Telefonie funktioniert gar nicht. Wer darauf angewiesen ist, ist mit einem anderen Gerät sicher besser bedient (à „Fritzbox ausreizen“, Seite 80). LAN-Ports, COM-Port und USB lassen sich aber problemlos nutzen. Fazit: Die Easybox 803 bietet aus unserer Sicht eine sehr preisgünstige und relativ benutzerfreundliche Einstiegsmöglichkeit in die Tiefen von Boot-Loader-Modifikationen und LinuxEmbedded-Systemen, eignet sich aber auch als vielseitiges und konkurrenzlos preiswertes Linux-Spielzeug.

Chroot – ein Linux im Linux Der Begriff und Befehl „Chroot“ kommt von „Change root“ und stellt unter Linux die einfachste Version einer Virtualisierung ohne den Start eines separaten Kernels dar. Dabei wird aus einem laufenden Linux-System heraus das Wurzelverzeichnis eines anderen Linux-Systems geladen, so als ob ein anderes System gestartet wäre. Aus dem heraus kann nicht auf das darüberliegende System zugegriffen werden. Eine Chroot-Umgebung lässt sich nur mit Root-Rechten starten. Da viele exotische Kleingeräte mit angepassten Linux-Kerneln und Treibern laufen, stellt der Start einer Chroot-Umgebeung die einfachste und sinnvollste Methode dar, ein anderes System zu starten. Dabei bleibt das vorinstallierte Linux-System des Herstellers weitgehend unberührt. Zudem verliert man nicht die den Komfort und die Treiberunterstützung des vom Hersteller zusammengestellten Standard-Systems und muss auch den komplizierten Boot-Prozess nicht komplett selbst bauen.

25

Raspberry Pi / Mediacenter

Raspberry Pi als Mediacenter

Der Raspberry Pi ist zwar besonders klein und preisgünstig, aber er kann trotzdem als Mediacenter-PC dienen. Der Artikel zeigt, wie Sie aus dem Pi eine fernsteuerbare Multimedia-Station machen. Von Jürgen Donauer

26

Open ELEC ist eines der bekanntesten Multimedia-Systeme. Es handelt sich dabei um eine kleine Linux-Distribution mit der Mediacenter-Software XBMC. Open Elec ist für PCs, einige Multimedia-Geräte wie beispielsweise Apple TV und auch für den Raspberry Pi verfügbar. Eine Kombination aus Raspberry Pi, Open Elec und Maraschino ergibt eine perfekte und fernsteuerbare Multimedia-Station. Das Prinzip würde auch mit jedem anderen System funktionieren, auf dem XBMC läuft. Dazu gehört unter anderem Raspbmc, das sich

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Mediacenter

System auf SD-Karte kopieren: Mit Win 32 Disk Imager transferieren Sie die OpenElec-Image-Datei auf die SD-Karte. Dabei gehen alle bisherigen Daten auf der Karte verloren. Die Warnmeldung bestätigen Sie mit „Yes“. via Noobs (auf Heft-DVD) installieren lässt. Open Elec (auf Heft-DVD) bringt allerdings ein separates und speziell entwickeltes Menü mit sich, das die Konfiguration angenehmer macht.

Open-Elec-Image auf der SD-Karte installieren Laden Sie zunächst das neueste Abbild von der Open-Elec-Website (http://openelec.tv) herunter, oder benutzen Sie die Datei auf der HeftDVD. Diese enthält die nötigen Dateien für die Installation unter Windows und Linux. Sollte dies nicht die allerneueste Version sein, können Sie Open Elec später automatisch aktualisieren lassen. Für die Installation macht die Version keinen Unterschied. In diesem Beitrag zeigen wir Ihnen, wie Sie Open Elec unter Windows auf eine SD-Karte übertragen. Wie es unter Linux geht, können Sie über www.pcwelt. de/1rnj nachlesen. Die Installation lässt sich auch auf einem Raspberry Pi mit laufendem Raspbian durchführen. Da dieser allerdings nur einen Steckplatz für eine SD-Karte hat und darauf das Betriebssystem läuft, brauchen Sie zusätzlich einen USB-Kartenleser. Die Anleitung für eine weitere Installationsvariante finden Sie über www.pcwelt.de/srvb. Auf dieser Seite im Open-Elec-Wiki wird beschrieben, wie Sie einen zusätzlichen USB-Stick am Raspberry Pi als Datenspeicher einrichten. Mit dieser Maßnahme lässt sich die Geschwindigkeit des Systems steigern. Installation durchführen: Entpacken Sie das Archiv von der Heft-DVD auf die Festplatte. Für die Installation unter Windows entpacken Sie auch die enthaltene Datei „OpenELEC-RPi.arm3.2.4.img.zip“. Die TAR-Datei dient der Installation unter Linux. Entpacken Sie von der HeftDVD außerdem das Tool Win 32 Disk Imager

PC-WELT

Sonderheft Hacks 3/2014

XBMC-Server hinzufügen: Bevor Sie Maraschino mit Open Elec nutzen können, müssen Sie die entsprechenden Einstellungen hinterlegen.

oder laden Sie es herunter (http://sourceforge. net/projects/win32diskimager). Stecken Sie die SD-Karte in den Kartenleser. Für Open Elec muss die Karte mindestens eine Kapazität von 1 GB haben. Sichern Sie alle darauf befindlichen Dateien, denn die Karte wird im nächsten Schritt überschrieben. Starten Sie Win 32 Disk Imager. Wählen Sie auf der rechten Seite des Fensters den Laufwerksbuchstaben der SD-Karte aus. Prüfen Sie diese Angabe genau, denn das Tool zeigt beispielsweise auch USB-Festplatten an. Wenn Sie das falsche Laufwerk wählen, gehen alle Daten darauf verloren. Über die Schaltfläche neben dem Feld unter „Image File“ wählen Sie die zuvor entpackte „Datei OpenELEC-RPi.arm3.2.4.img“ aus. Klicken Sie dann auf die Schaltfläche „Write“, und bestätigen Sie mit „Yes“. Nachdem der Vorgang abgeschlossen ist, schließen Sie Win 32 Disk Imager über die Schaltfläche „Exit“. Melden Sie den Kartenleser beim System ab und nehmen die SD-Karte aus dem Kartenleser. Hinweis: Sollte es bei der Verwendung von Win 32 Disk Imager Probleme auftreten, formatieren Sie die Karte vorher über das Tool SD For-

matter (https://www.sdcard.org/downloads). Stellen Sie dabei über „Option“ den Parameter „Format Size Adjustment“ auf „On“.

Open Elec starten und konfigurieren Stecken Sie die SD-Karte nun in den Raspberry Pi, und schließen Sie das Netzteil an. Für die Einrichtung benötigen Sie wenigstens eine Tastatur. Die Steuerung erfolgt über die Cursortasten. Beim ersten Start des Systems erscheint automatisch ein Assistent, in dem Sie die Sprache für die Benutzeroberfläche auswählen, beispielsweise „Deutsch“. Der zweite Schritt ist, den Rechner zu taufen. Dies ist für spätere Netzwerkzugriffe notwendig. Wir haben es bei der Standardeinstellung Open Elec gelassen. Wenn Sie einen WLAN-Stick am Raspberry Pi nutzen, sucht das System im nächsten Schritt nach verfügbaren WLANs, und Sie können sich mit einem verbinden. Weiterhin dürfen Sie im Einrichtungsassistenten bestimmen, welche Fernzugriffe erlaubt sind. Hier stehen SSH und Samba zur Auswahl. Wenn der Raspberry Pi später auch „headless“, also beispielsweise als reine Musikstation ohne Bildschirm laufen soll,

Sicherheitsrisiko SSH-Server SSH ist bei Open Elec nicht besonders sicher konfiguriert. Der Standardbenutzername ist „root“ und das Passwort „openelec“. Mit diesem Wissen kann sich jeder Anwender in Ihrem Netzwerk Zugriff auf die Open-Elec-Box verschaffen. Da sich der Rasperry Pi aber in Ihrem Heimnetz wahrscheinlich hinter einer Firewall befindet, kann von außen niemand das Gerät erreichen. Das SSH-Passwort lässt derzeit nicht sehr einfach ändern. Es befindet sich in einem nur lesbaren Dateisystem. Für eine Passwortänderung müssten Sie Open Elec aus den Quellen selbst bauen. Dieser Umstand soll sich irgendwann in der Zukunft ändern.

27

Raspberry Pi / Mediacenter

Maraschino konfigurieren: Über das Rädchen links oben aktivieren Sie den Modus, über den Sie Module hinzufügen können. Rechts oben konfigurieren Sie die Hosts. ist SSH für die Remote-Administration empfehlenswert. Wollen Sie diese Einstellungen später ändern, finden Sie auf der XBMC-Oberfläche ganz rechts ein Menü „System“ mit dem Untermenü „OpenELEC“. Hier ändern Sie auch die Tastatureinstellung, die trotz zuvor gewählter Sprache „Deutsch“ auf „us“ gesetzt ist. Netzwerk, Zerofconf oder Avahi: Gerade für den Betrieb ohne Bildschirm ist es wichtig, den Raspberry Pi über das Netzwerk erreichen zu können. Eine Möglichkeit ist, Open Elec mit einer festen IP-Adresse zu konfigurieren. Sie können das über die Open-Elec-Einstellungen realisieren. Gut zu wissen ist, dass Open Elec per Standard Avahi oder Zeroconf aktiviert hat. Die meisten Linux-Installationen bringen einen entsprechenden Client mit sich. Unter Windows müssen Sie die Bonjour-Dienste nachinstallieren (www.apple.com/de/support/bonjour). Das Gute dabei ist, dass Sie die IP-Adresse nicht wissen müssen. Sie können

Musik kontrollieren: Mit Hilfe von Maraschino haben Sie XBMC im Griff. Sie können unter anderem Musik auswählen, die auf dem Raspberry Pi abgespielt werden soll.

das Gerät in unserem Fall unter „OpenELEC. local“ erreichen. Der Name vor „.local“ hängt davon ab, wie Sie die Installation benannt haben. Ändern Sie den Namen über die OpenElec-Einstellungen, ist ein Neustart des Systems notwendig.

Open Elec über den Webbrowser fernsteuern Für die Fernsteuerung von Open Elec beziehungsweise XBMC gibt es gleich mehrere Möglichkeiten. Unter anderem ist ein Webinterface in XBMC eingebaut, das allerdings nicht besonders viele Funktionen bietet. Wollen Sie es dennoch benutzen, müssen Sie über „System à Einstellungen à Dienste à Webserver“ die Option „Steuerung über HTTP zulassen“ aktivieren. Wir zeigen Ihnen Alternativen mit Android und Maraschino. Letzteres bietet eine Weboberfläche, über die Sie XBMC fernsteuern können. Wir haben die Installation unter Ubun-

Maraschino Fehlersuche und Sicherheit Im offiziellen Forum ist zu lesen, dass einige Anwender nach der Installation Probleme mit der Verbindung zu XBMC haben. Eine vielversprechende Lösung in diesem Fall ist, Maraschino mittels sudo /etc/init.d/maraschino stop zu beenden. Danach löschen Sie Sie die Datenbank via sudo rm -f / opt/maraschino/maraschino.db. Nun können Sie Maraschino wieder starten: sudo /etc/init.d/ maraschino start. Rechts oben bei den Einstellungen befindet sich unter „Manage“ die eine Option „Server Settings“. Durch einen Bug scheint diese allerdings nicht immer dort zu sein. Hier können Sie einen Nutzernamen und ein Passwort für Maraschino hinterlegen. Am besten schützen Sie das Web-Frontend gleich nach der Installation. Ist die Option nicht mehr vorhanden, löschen Sie einfach alle Module, und die Option sollte wieder erscheinen. Maraschino läuft per Standard als Benutzer „root“, was nicht besonders sicher ist. Sie können in der Konfigurationsdatei den Anwender ändern. Stellen Sie aber sicher, dass Sie auch die Berechtigungen für die Dateien unter „/opt/maraschino“ anpassen. Unter Linux dient hierfür der Befehl chown. Für den Benutzer „test“ wäre das zum Beispiel: chown -R test /opt/maraschino/*.

28

tu getestet. Dafür gilt auch die folgende Beschreibung. Im Prinzip würde Maraschino auch unter Windows funktionieren. Die Installation ist hier jedoch relativ aufwendig, weil Sie den Webserver Apache und Python installieren und manuell konfigurieren müssen. Deshalb raten wir davon ab und empfehlen für WindowsNutzer die Ubuntu-Installation in einer virtuellen Maschine. Auf der Heft-DVD finden Sie dafür die kostenlose Virtualisierungs-Software Virtualbox. Auch für die Benutzung von Maraschino müssen Sie die Steuerung über HTTP zulassen. Wollen Sie Android als Fernbedienung einsetzen, müssen Sie in den „Einstellungen“ außerdem unter „Dienste à Fernsteuerung“ die Option „Steuerung über entfernte Programme zulassen“ aktivieren. Maraschino vorbereiten: Die Software befindet sich in aktiver Entwicklung. Deswegen kann es noch zu einigen Unstimmigkeiten kommen. Es gibt allerdings ein Maraschino-Forum auf www.maraschinoproject.com, in dem Sie Hilfe finden. Unter Linux lässt sich Maraschino sehr bequem zum Laufen bringen, vorausgesetzt Git und Python sind vorhanden. Git installieren Sie über die Paketverwaltung nach, Python ist bei den meisten Distributionen standardmäßig installiert. Sind diese Voraussetzungen erfüllt, führen Sie folgenden Befehl auf der Kommandozeile aus (eine Zeile): sudo git clone https://github. com/mrkipling/maraschino.git / opt/maraschino Im Anschluss kopieren Sie das Init-Script und die Konfigurationsdatei mit den beiden Zeilen sudo cp /opt/maraschino/initd / etc/init.d/maraschino sudo cp /opt/maraschino/default / etc/default/maraschino

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Mediacenter

XBMC und Android: Links sehen Sie das offizielle XBMC Remote und rechts Yatse. Welche App Sie bevorzugen, ist unter anderem Geschmackssache. Mit der Standardeinstellung läuft Maraschino auf Port 7000. Das können Sie bei Bedarf in der Konfigurationsdatei „/etc/default/mara schino“ ändern. Möchten Sie Maraschino in einen anderen Pfad und nicht unter „/opt“ legen, passen Sie in der Konfigurationsdatei den Parameter „APP_PATH“ an. Im Anschluss machen Sie die Datei „maraschino“ ausführbar: sudo chmod a+x /etc/init.d/ maraschino Den Server können Sie nun mit folgendem Befehl starten: sudo /etc/init.d/maraschino start Optional können Sie den Dienst automatisch starten lassen. In unserem Beispiel funktioniert das mit Hilfe des Befehls: update-rc.d maraschino defaults Server hinzufügen: Sobald der Server gestartet ist, erreichen Sie die Oberfläche unter http://localhost:7000 im Browser. Nun können Sie den Raspberry Pi als Server hinzufügen. Achten Sie darauf, beim Feld „Hostname / IP address“ kein „http://“ zu verwenden. Tragen Sie als Host-Namen beispielsweise openelec. local und hinter „Port“ den Wert 80 ein. Hinter „Username“ genügt xbmc, wenn Sie in Open Elec nichts anderes konfiguriert haben. Klicken Sie nun auf „Save“, scheint sich nichts getan zu haben. Maraschino hat den Server allerdings gespeichert. Sie können das verifizieren, indem Sie mit der Maus in die rechte obere Ecke des Browser-Fensters fahren. Dort haben Sie außerdem die Möglichkeit, über „XBMC servers à Add server“ mehr als einen XBMC-Server zu hinterlegen.

Module zu Maraschino hinzufügen Bewegen Sie die Maus in die linke obere Ecke, können Sie auf das Rädchen klicken und den

PC-WELT

Sonderheft Hacks 3/2014

Anwendername und Passwort: Damit nicht jeder auf Ihre Maraschino-Implementierung zugreifen kann, sollten Sie diese mit einem Passwort schützen.

Konfigurationsmodus für die Module aktivieren. Fügen Sie einfach ein entsprechendes Modul, wie zum Beispiel die „XBMC Library“, hinzu. Hier kann es sein, dass Maraschino wenig aussagekräftige Fehlermeldungen ausgibt wie : „There was a problem connecting to the XBMC server“. Der Grund hierfür ist, dass die Bibliothek nicht aktualisiert ist. Gehen Sie den Weg über „Files“, finden Sie alle in Open Elec eingebundenen Quellen und Ordner. Rufen Sie eine Musikdatei auf, spielt sich diese auf dem Raspberry Pi und nicht im Browser ab. Deswegen empfehlen wir Ihnen die Installation des Add-ons „XBMC Library Auto Update“. Sie finden es via „System à Einstellungen à Add-ons à Weitere Addons à XBMC.org Add-ons à Programm Addons“. Ist es dort nicht gelistet, klicken Sie mit der rechten Maustaste auf „XBMC.org Addons“ und dann auf „Aktualisierung erzwingen“. Hierfür und für die Installation ist eine Internetverbindung notwendig. Weiterhin sollten Sie in den Einstellungen unter „Musik à Datenbank“ die Option „Aktualisiere Datenbank bei Start“ aktivieren. Haben Sie eine sehr große Bibliothek, kann das den Start sehr verzögern. In diesem Fall sollten Sie „XBMC Library Auto Update“ so konfigurieren, dass die Aufgabe nachts läuft. Tipp: Sind Sie im Besitz eines Synology-NAS, dann können Sie Maraschino über die Pakete der Synocommunity installieren (www.pcwelt. de/p413).

Android-Apps für Open Elec Open Elec beziehungsweise XBMC lassen sich auch mit Hilfe diverser Android-Apps fernsteuern. Android beherrscht aber derzeit noch kein Zeroconf. Deswegen müssen Sie die IP-Adresse der XBMC-Station kennen. In diesem Fall

empfehlen wir Ihnen, der Open-Elec-Installation eine feste IP-Adresse zu spendieren. In Sachen Fernbedienung funktioniert das offizielle XBMC Remote (www.pcwelt.de/a54c) ganz brauchbar. Sie konfigurieren in der Maske einen frei wählbaren Namen, IP-Adresse, API-Port, Anmeldenamen und Passwort. Die drei letzteren sind mit den Webserver-Einstellungen in Open Elec abzugleichen. Eine praktische Alternative zu XBMC Remote ist die App Yatse (www.pcwelt.de/85pg). Vielerorts wird dieses Programm besser bewertet. Die Konfiguration läuft äquivalent zu XBMC Remote. Yatse bietet unter anderem eine Offline-Bibliothek. Weiterhin können Sie mit Yatse Medien via UPnP zu XBMC senden und von XBMC streamen. Für diese Funktionen müssen Sie allerdings den Yatse Unlocker auf Google Play kaufen, der mit 3,49 Euro zu Buche schlägt. Sollte sich das Raspberry Pi in einem anderen Raum befinden, können Sie Ihr Android-Gerät als Player verwenden. Somit ist eine doppelte Verwaltung der Musiksammlung nicht notwendig

Infrarot-Fernbedienung verwenden Wenn Sie ihren Raspberry Pi als Mediacenter am TV-Gerät betreiben wollen, bietet eine herkömmliche Infrarot-Fernbedienung den meisten Komfort. Bei neueren TV-Geräten benötigen Sie keine Extra-Fernbedienung. Sie müssen hier nur HDMI-CEC aktivieren und können dann den Raspberry Pi mit der TV-Fernbedienung steuern. Weitere Infos dazu finden Sie über www.pcwelt. de/8n6z. Sollte das nicht funktionieren, verwenden Sie eine Extra-Fernbedienung mit eigenem USB-Infrarot-Empfänger. Eine Liste der unterstützten Modelle finden Sie über www. pcwelt.de/bcly.

29

Raspberry Pi / Netzwerkspeicher

Raspberry Pi als NAS einsetzen Das passende Betriebssystem und ein externer Speicher genügen, und schon können Sie den Raspberry Pi auch als Netzwerkspeicher einsetzen. Lesen Sie in diesem Beitrag, was Sie dazu brauchen. Von Stephan Lamprecht

Wenn Sie eine USB-Festplatte in einer Schublade herumliegen haben, können Sie sich bereits für knapp 60 Euro einen individuellen Netzwerkspeicher (NAS) zusammenstellen. Das ist gegenüber kommerziellen Lösungen konkurrenzlos günstig. Während die teureren NAS-Geräte mit Ethernet-Schnittstellen im Gigabit-Bereich ausgestattet sind, erreicht diese auf dem Raspberry lediglich 100 MBit. Das neue NAS ist somit kein Überflieger in Sachen Performance, dafür ist aber die Leistungsaufnahme mit unter fünf Watt sehr gering. Das NAS Marke Eigenbau ist mehr als genügsam. Außer der Raspberry-Platine und einer SD-Karte für das Betriebssystem benötigen Sie nur ein Ethernet-Kabel. Damit Sie USB-Festplatten oder Sticks auch als Speicherplatz im Netzwerk nutzen können, müssen Sie auf der SD-Karte noch ein Betriebssystem installieren. Raspbian ist hier eine gute Wahl, da die DebianVariante alle Werkzeuge mitbringt, um Datenträger im Netz zu teilen. Wie Sie das Betriebssystem installieren, haben wir im à Artikel „Raspberry Pi als mobiler PC“ auf Seite 46 ausführlich beschrieben.

30

1

System starten und Zugang einrichten

Nach dem ersten Systemstart gelangen Sie in den Dialog für die Konfiguration des Systems („raspi-config“). Aktivieren Sie die Option „Expand filesystem“. Damit wird die Root-Partition auf die maximale Größe geändert. Unter „Advanced“ aktivieren Sie den Zugang per SSH. Sie können dann später über das Netz auf das System zugreifen und benötigen keinen extra Monitor. Besuchen Sie nach dem Start des Betriebssystems das Backend Ihres Routers, und sehen Sie in den DHCP-Einstellungen nach, welche Clients angemeldet sind. Sie sollten dort den Raspberry Pi mit einer IP-Adresse finden. Sie können hier in der Regel auch dafür sorgen, dass das Gerät immer die gleiche IP-Adresse erhält. Sobald Sie die IP-Adresse kennen, können Sie sich mit dem System verbinden. Unter Windows verwenden Sie dazu Putty (auf HeftDVD). Nach dem Start des Programms tragen Sie unter „Host Name (or IP address)“ die IPNummer des Raspberry Pi ein und aktivieren darunter die Option „SSH“. Unter „Saved Ses-

sion“ vergeben Sie eine aussagekräftige Bezeichnung, etwa Raspberry. Klicken Sie auf „Save“ und dann auf „Open“. Hinter „login as:“ tippen Sie den Benutzernamen pi ein. Als Passwort verwenden Sie das voreingestellte rasp­ berry oder das über raspi-config bei der Installation von Raspbian selbst erstellte Passwort.

2

Samba für WindowsFreigaben konfigurieren

Um Freigaben für Windows-Rechner zur Verfügung zu stellen, benötigen Sie Samba. Die nötigen Pakete installieren Sie über die zwei Zeilen sudo apt-get update sudo apt-get install samba-common samba samba-common-bin Da Samba standardmäßig eine eigen Passwortverwaltung verwendet, müssen Sie jetzt mit sudo smbpasswd -a pi ein Passwort für den Standardbenutzer „pi“ festlegen. Dieses kann identisch mit dem Anmeldepasswort für Rasp­ ian sein. Im Windows-Explorer geben Sie für einen ersten Test in die Adresszeile \\IP-Nummer\pi ein und bestätigen mit der Enter-Taste,

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Netzwerkspeicher

Fernwartung: Ein NAS läuft meist ohne angeschlossenen Monitor. Zur Konfiguration des Systems auf der Kommandozeile verwenden Sie den Fernzugriff über Putty. wobei Sie „IP-Nummer“ durch die IP des Raspberry Pi ersetzen. Geben Sie als Benutzernamen pi ein und das über „smbpasswd“ festgelegte Passwort. Jetzt müssen Sie noch die USB-Festplatte über Samba freigeben. Öffnen Sie über sudo nano /etc/samba/smb.conf die Samba-Konfigurationsdatei. Fügen Sie am Ende folgenden Block an: [data] path=/media/data browseabel=yes read only=no create mask=0777 directory mask=0777 writeable=yes Passen Sie die Angabe hinter „path“ für den Einhängepunkt an, den Ihr System für die USBFestplatte verwendet. Aus Samba-Sicht ist das Verzeichnis jetzt beschreibbar, aber nicht in jedem Fall auch auf der Ebene des Dateisystems. Damit das sichergestellt ist, muss der Datenträger über einen Eintrag in der Datei „/etc/fstab“ eingehängt werden. Hängen Sie zuerst das Laufwerk über sudo umount /dev/ sda1 aus und erstellen Sie mit sudo mkdir / media/data den Mountpoint. Ändern Sie die Zugriffsrechte mit den zwei Zeilen sudo chgrp -R users /media/data sudo chmod -R 774 /media/data Ermitteln Sie mit sudo blkid die UUID der Partition. In Putty kopieren Sie den Wert, indem Sie ihn mit der Maus markieren. Mit sudo /etc/ fstab öffnen Sie die Konfigurationsdatei für die Dateisysteme. Fügen Sie die UUID per rechtem Mausklick am Ende ein, und ergänzen Sie die Zeile wie folgt: UUID=1234-12AB /media/data ext4 defaults,auto,users,rw 0 Die Angabe hinter „UUID“ ersetzen Sie durch den zuvor ermittelten Wert, bei einer NTFS-

PC-WELT

Sonderheft Hacks 3/2014

Apple-Netzwerk: Damit das Raspberry-NAS für Macs sichtbar wird, erstellen Sie die Datei „/etc/avahi/services/afpd.service“ mit dem abgebildeten Inhalt.

Partition ersetzen Sie „ext4“ durch ntfs-3g. Starten Sie das System dann neu. Unter Windows erscheint jetzt die neue Freigabe „data“, auf die Sie Lese- und Schreibzugriff haben.

3

Freigaben für Apple-Rechner erstellen

Wenn Sie die Freigaben auch über Apple-Rechner erreichen wollen, nutzen Sie am besten das dafür entwickelte Protokoll. Installieren Sie zuerst die nötigen Pakete mit der Zeile sudo apt-get install avahi-daemon netatalk Öffnen Sie mit sudo nano /etc/netatalk/afpd. conf die Konfigurationsdatei für den AppleDienst. Tragen Sie die folgende Zeile ein: - -tcp -noddp -uamlist uams_dhx. so,uams_dhx2_passwd.so -nosavepassword Speichern Sie die Datei. Öffnen Sie die Konfigurationsdatei für die einzelnen Freigaben, die auf den Apple-Rechnern zu sehen sein sollen: sudo nano /etc/netatalk/Apple Volumes.default Tragen Sie dort vor der Zeile „End of File“ etwa dies ein:

/media/data Public options:upriv perm:0776 Damit haben Sie die Freigabe „Public“ angelegt. Das Protokoll kennt noch eine Reihe von weiteren Optionen. Die Einzelheiten sind recht vollständig etwa unter http://wiki.ubuntuusers. de/netatalk dargestellt. Richtig komfortabel wird das nun im Zusammenspiel mit dem Avahi-Daemon. Er publiziert die Freigabe in einem Apple-Netz, so dass MacComputer schneller darauf zugreifen können. Führen Sie dieses Kommando aus: sudo nano /etc/avahi/services/afpd.service. Tragen Sie in die Datei die Zeilen ein, die Sie in der Abbildung sehen. Speichern Sie die Datei, und starten Sie den Dateidienst sowie Avahi neu: sudo service avahi-daemon restart sudo service netatalk restart Wenige Augenblicke später sollten alle Macs im gleichen Netzwerk im Finder im Abschnitt „Freigaben“ den Raspberry sehen können. In der Kombination aus Netatalk und Avahi ist es auch möglich, die am Raspberry Pi angeschlossenen Platten als Ziel für das Datensicherungsprogramm Timemachine zu nutzen.

Externe Datenträger unter Raspbian Nachdem Sie eine externe Festplatte angeschlossen haben, ermitteln Sie mit sudo fdisk -l den Gerätenamen. Dies dürfte in den meisten Fällen „/dev/sda“ sein. Wenn die Festplatte formatiert ist, erfahren Sie mit mount den Einhängepunkt unter „/media“. Diesen Pfad verwenden Sie für die Freigabe über Samba (à Punkt 2). Soll die Platte nur am NAS zum Einsatz kommen, verwenden Sie das Dateisystem Ext4. Mit sudo mkfs.ext4 /dev/sda1 -L data formatieren Sie die Partition bei Bedarf neu. Die Angabe hinter „-L“ legt eine Bezeichnung für den Datenträger fest und damit den Namen für den Mount-Punkt unter „/media“. Wenn Sie die Festplatte hin und wieder an Ihrem Windows-PC nutzen wollen, sollten Sie NTFS verwenden. In diesem Fall installieren Sie über sudo apt-get install ntfs-3g die vollständige NTFS-Unterstützung für Raspbian.

31

Raspberry Pi / Überwachungskamera

Raspberry Pi und Überwachung Mit einem Raspberry Pi und Raspbian als Betriebssystem sind die Hardware-Voraussetzungen für ein günstiges Überwachungssystem gegeben. Den Rest erledigt die freie Software Motion. Von Jürgen Donauer

Die Open-Source-Software Motion befindet sich in den Repositories der Linux-Distribution Raspbian (auf Heft-DVD). Nach der Installation ist das Programm in wenigen Schritten eingerichtet. Wir zeigen Ihnen, wie Sie mit wenig Geld ein hervorragend funktionierendes Überwachungssystem auf die Beine stellen. Wir gehen in diesem Artikel davon aus, dass Raspbian bereits auf Ihrem Raspberry Pi läuft und sich auf dem aktuellen Stand befindet.

1

Kameras für das Überwachungssystem

Dass Sie für diese Anleitung einen Raspberry Pi und eine Kamera benötigen, versteht sich von selbst. Bei der Wahl der Kamera ist jedoch Voraussetzung, dass diese mit dem V4L-Treiber (Video for Linux) kompatibel ist und als Gerät in der Form „/dev/videoX“ auftaucht. Das X steht für die Systemnummer der Kamera, und die Zählung beginnt bei 0. Die erste Kamera am System wäre „/dev/video0“, die zweite „/dev/video1“ und so weiter. In der Regel un-

32

terstützt V4L fast jede handelsübliche Webcam. Eine Liste geeigneter Webcams findet sich auf http://elinux.org/RPi_USB_Webcams. Sie sollten die Webcam über einen USB-Hub mit eigenem Netzteil anschließen, da der kleine Raspberry selbst die Kamera sonst nicht in jedem Fall ausreichend mit Strom versorgen kann. Das für den Raspberry Pi speziell entwickelte Kameramodul erscheint derzeit nicht als V4LGerät. Es gibt aber bereits Unterstützung dafür, und die Entwickler arbeiten daran, diesen Umstand zu adressieren. Wir zeigen Ihnen, wie Sie das Kameramodul für den Winzling mit V4L und damit Motion fit machen. Nachdem Sie die Webcam an den Raspberry Pi angesteckt haben, sollten Sie prüfen, ob diese ordnungsgemäß funktioniert. Dazu führen Sie direkt nach Einstecken der Kamera nachfolgenden Befehl aus: dmesg | tail Sie können das Vorhandensein der Kamera auch testen, indem Sie diesen Befehl nutzen: ls -ltrh /dev/video*

Damit überprüfen Sie einfach, ob das Gerät im System vorhanden ist. Sie erhalten eine Ausgabe, ähnlich wie im Bild auf Seite 33 dargestellt. Sollte mehr als eine V4L-fähige Kamera am Computer hängen, sind in der Auflistung auch mehrere Videogeräte enthalten.

2

Überwachungs-Software Motion installieren

Die Open-Source-Software Motion spricht das Gerät „/dev/videoX“ an und beobachtet den Video-Stream. Sie können ein Limit für sich ändernde Pixel festgelegen. Wird die Grenze dieser Pixelzahl überschritten, wertet Motion das als Bewegung und kann je nach Konfiguration entsprechend reagieren. Sie können Motion via Kommandozeile installieren. Öffnen Sie dafür ein Terminal, und geben Sie folgende zwei Zeilen ein: sudo apt-get update sudo apt-get install motion Bei der Installation weist Sie das Paket darauf hin, dass Motion nicht automatisch startet. Wie

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Überwachungskamera

Kamera gefunden: Sie ermitteln über dmesg | tail, ob der Raspberry Pi eine USB-2.0Kamera gefunden und aktiviert hat. Diese registriert sich als Gerät „/dev/video0“, was sich mit Hilfe des Befehls ls -ltrh /dev/video* überprüfen lässt. das geht, lesen Sie im à Kasten „Alternative Startvarianten“ unten auf dieser Seite. Zunächst einmal starten wir den Daemon nicht und kümmern uns um die Konfiguration.

3

Die Funktion von Motion ausprobieren

Sie können die Überwachungskamera sofort in Betrieb nehmen, indem Sie Motion händisch starten. Für einen schnellen Check ist das außerdem gar keine schlechte Idee. Geben Sie dazu auf der Kommandozeile folgenden Befehl ein: sudo motion Das Vorangestellte sudo ist in diesem Fall notwendig, da nur der Administrator root die Standardkonfigurationsdatei lesen kann. Legen Sie eine conf-Datei dagegen in Ihrem Home-Verzeichnis an, können Sie Motion auch als Anwender ohne root-Rechte starten. Nach Aufruf des Befehls sehen Sie diverse Zahlen über den Bildschirm laufen. Wichtig ist die letzte Zeile. Bei korrekter Konfiguration lautet diese: „[1] Started stream webcam server in port 8081“. Somit wissen wir zwei Dinge. Erstens funktioniert unsere Hardware. Bewegen Sie nun die Kamera, reagiert die Software auch sofort und teilt uns die Namen der gespeicherten Bilder mit. In der Standardkonfiguration legt Motion diese unter „/tmp/motion“ ab. Zweitens könnten wir das Bild auch mit einem Streaming-Client oder in einem beliebigen Webbrowser betrachten. Dafür ist Port 8081 zuständig. Per Standard ist Motion allerdings so konfiguriert, dass dies nur mit dem lokalen Rechner möglich ist. Stoppen Sie zunächst das laufende Motion mit der Tastenkombination Strg-C. Danach öffnen Sie die Standardkonfi-

PC-WELT

Sonderheft Hacks 3/2014

Vorarbeiten: Motion befindet sich im Raspbian-Repository, und Sie können es über apt-get installieren. Das Programm selbst ist zwar nur klein, allerdings werden automatisch noch einige Video-Codecs nachinstalliert.

gurationsdatei „/etc/motion/motion.conf“ mit einem Editor Ihrer Wahl, zum Beispiel Nano: sudo nano /etc/motion/motion.conf Die Datei ist ziemlich umfangreich, und wir werden sie später noch weiter anpassen. Für den Moment suchen Sie nach der Zeile webcam_localhost on und ändern diese in webcam_localhost off. Der Parameter befindet sich in der Sektion „Live Webcam Server“, die relativ mittig liegt. Starten Sie das Programm noch einmal mit sudo motion. Nun können Sie von jedem Rechner im gleichen Netzwerk den Stream in einem Browser mit Eingabe der URL http://IP-Adresse Raspberry Pi:8081 einsehen, beispielsweise http://192.168.100.108:8081. Die IP-Adresse bekommen Sie auf der Kommandozeile über den Befehl ifconfig heraus. Haben Sie beispielsweise VLC (www.videolan.org) installiert,

ist das Nutzen dieses Streams ebenfalls möglich. Klicken Sie dazu auf „Medien à Netzwerkstream öffnen“, geben die URL wie im Browser ein und klicken auf „Wiedergabe“. Sie können jetzt das Bild kontrollieren und die Kamera so positionieren, dass ein für die Überwachung optimales Areal erfasst wird.

4

Konfigurationsdatei individuell anpassen

In diesem Abschnitt kümmern wir uns um die wichtigsten Parameter der Konfigurationsdatei. Sie werden diese Datei im Laufe der Zeit des Öfteren anpassen. Alles zu erklären würde den Rahmen dieses Artikels sprengen. Allerdings sind einige Parameter essenziell, und diese möchten wir Ihnen kurz darlegen. Relativ am Anfang finden Sie die Zeile „videodevice /dev/video0“. Sollte nur eine Kamera

Alternative Startvariante Motion lässt sich auch über ein Init-Script starten, das nach der Installation des Programms bei Raspian unter „/etc/init.d/motion“ zu finden ist. Für den automatischen Start zusammen mit dem System bearbeiten Sie die Datei „/etc/default/motion“. Ersetzen Sie das „no“ hinter „start_motion_ daemon“ durch yes. Wie bei Init-Scripts unter dieser Version von Debian üblich, können Sie in einem Terminalfenster über die Zeile sudo /etc/init.d/motion stop Motion jederzeit manuell beenden, dann Änderungen in der Konfiguration vornehmen und das Programm anschließend mit sudo /etc/init.d/motion start wieder starten. Wenn Sie das Kameramodul für den Raspberry Pi verwenden, müssen Sie noch eine kleine Änderung vornehmen. Öffnen Sie die Datei „/etc/init.d/motion“ als Benutzer root in einem Editor. An den Anfang des Codes fügen Sie über „Name=motion“ die folgende Zeile ein: export LD_PRELOAD=/usr/lib/uv4l/uv4lext/armv6l/libuv4lext.so

33

Raspberry Pi / Überwachungskamera

Kontrolle: Ob Sie einen Browser oder VLC für die Überprüfung verwenden, ist nicht relevant. Diese Methode lässt sich auch hervorragend für die Einrichtung des Bildausschnittes verwenden.

Stream abgreifen: Mit dem VLC Media Player können Sie zum Beispiel den Stream von Motion abgreifen. Damit lässt sich auch eine Live-Überwachung der Gebiete realisieren, auf die die Kamera gerichtet ist. am Raspberry Pi hängen, ist das so in Ordnung, und Sie müssen das nicht ändern. Wenn Sie zusammen mit Motion mehrere Kameras einsetzen möchten, verwenden Sie mehrere Konfigurationsdateien. Sie starten dann Motion mehrmals mit dem Schalter „-c“ und geben dahinter jeweils die Konfigurationsdatei an. Die Kommandozeile kann dann beispielsweise so aussehen: motion -c /home/pi/motion/motion. conf Das ist jedoch nur in der Testphase sinnvoll. Wenn Sie später Motion automatisch starten oder im Hintergrund laufen lassen wollen, verwenden Sie für mehrere Kameras eine andere Methode. Am Ende der Datei „/etc/motion/motion.conf“ finden Sie vier mit einem „;“ auskommentierte Zeilen. Bei zwei Kameras entfernen Sie das Semikolon vor den ersten beiden und passen den Pfad zur Konfigurationsdatei an. Das Ergebnis sieht dann so aus thread /etc/motion/thread1.conf thread /etc/motion/thread2.conf

Öffnen Sie die beiden conf-Dateien in einem Editor. Passen Sie die Angaben hinter „videodevice“, „target_dir“ und „webcam_port“ für jede Kamera an. Verwenden Sie für eine Kamera den Port 8081 und für die andere 8082. „target_dir“ sollte ebenfalls auf unterschiedliche Verzeichnisse verweisen. Für die anderen Einstellungen nehmen Sie sich die Einträge in der „motion.conf“ zum Vorbild. Kommentieren Sie alles aus, was Sie nicht benötigen. Wenn Sie Motion dann starten, können Sie den Stream der Kameras jeweils über den konfigurierten Port im Browser betrachten. Bild einstellen: Ein Stückchen weiter unten finden Sie in der Datei „motion.conf“ die beiden Zeilen „width 320“ und „height 240“. Das sind Breite und Höhe des Bildes, das Motion ausgibt. Sie sollten die maximalen Werte der eingesetzten Kamera kennen und die Werte entsprechend nicht überschreiten. Passen Sie auch auf, dass die Bilder nicht zu groß werden. Ansonsten geht Ihnen bei viel Bewegung irgendwann der Speicher auf dem Datenträger

Motion mit Zeitsteuerung Wollen Sie Motion zum Beispiel nur nachts laufen lassen oder ab einer bestimmten Uhrzeit, können Sie Motion auch mit Hilfe eines Cronjobs zeitsteuern. Das Programm bietet dafür eine Fernsteuerfunktion, die standardmäßig auf http://localhost:8080 lauscht. Damit sich diese per Cron nutzen lässt, installieren Sie mit sudo apt-get install libwww-perl zuerst einige nötige Pakete nach. Einen Cronjob erstellen Sie mit dem Befehl sudo crontab -e. Geben Sie in den Editor die zwei Zeilen 0 8 * * * root /usr/bin/lwp-request http://localhost:8080/0/detection/ start > /dev/null 0 18 * * * root /usr/bin/lwp-request http://localhost:8080/0/detection/ pause > /dev/null ein und speichern Sie die Definition mit Strg-O. Die Bewegungserkennung startet dann jeden Tag um 8:00 Uhr und pausiert ab 18:00 Uhr.

34

aus. Wir empfehlen klein anzufangen und die Größen in kleinen Schritte anzupassen. Direkt darunter finden Sie „framerate 2“. Die Zahl ist die maximale Bildanzahl, die pro Sekunde aufgenommen wird. Je höher die Zahl, desto mehr Bilder und desto mehr Speicher werden benötigt. Auch hier sollten Sie vorsichtiges Fein-Tuning walten lassen. Der Parameter „auto_brightness“ steht per Standard auf „off“. Billige Webcams bringen keine automatische Justierung der Helligkeit mit sich. Sollten Sie deswegen Probleme haben, können Sie Motion diese Einstellung überlassen. Direkt darunter finden Sie die Parameter „brightness“, „contrast“, „saturation“ und „hue“. Auch damit können Sie experimentieren und das Bild optimal einstellen.

5

Bewegungserkennung konfigurieren

Sehr wichtig in der Konfigurationsdatei ist die Sektion „Motion Detection Settings“. Der erste Parameter, „threshold“, bestimmt, wie viele Pixel sich in einem Bild ändern müssen, um als Bewegung wahrgenommen zu werden. Per Standard steht das auf „1500“. Behalten Sie im Hinterkopf, dass bei Änderung der Breite und Höhe die Gesamtzahl der Pixel wächst. Bei den Standardeinstellungen haben wir 76 800 Pixel pro Bild (320 x 240). Setzen Sie das zum Beispiel auf 640 und 480, wären das 307 200 Pixel. Eine Änderung ist für die Software aber weiterhin 1500 Pixel. Die Sache wird also wesentlich sensibler. Sobald Motion eine Bewegung erkennt, speichert es Dateien per Standard im JPG-Format. Zusätzlich wird nach jeder Bewegungssequenz per Standard eine SWF-Datei als kleiner Film erstellt. Wo diese Dateien hinterlegt werden, konfigurieren Sie über den Parameter „tar-

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Überwachungskamera

get_dir“. Per Standard ist das „/tmp/motion“. Sie sollten das Verzeichnis jedoch ändern, wenn Sie die Dateien auch über einen Neustart hinaus behalten möchten. „/tmp/“ wird bei vielen Linux-Systemen nach einem Neustart gelöscht. Direkt darunter finden Sie „snapshot_ filename“. Damit legen Sie den Dateinamen fest. Die Standardeinstellung ist aber bereits sehr gut, da die Dateien anhand eines Zeitstempels abgelegt werden. Weiter gibt es in der Konfigurationsdatei eine Sektion, die mit „External Commands, Warnings and Logging“ beginnt. Dort könnten Sie bei Erkennung einer Bewegung, sowohl bei Start als auch Ende, externe Befehle ausführen lassen. Denkbar ist zum Beispiel das Senden einer E-Mail oder das Abspielen eines Klangs.

6

Das Kameramodul des Raspberry Pi

Besitzen Sie ein Kameramodul für das Raspberry Pi, war ein Einsatz mit Motion bis vor kurzer Zeit schwierig. Es gab eine speziell angepasste Version von Motion, mit der einige Leute Erfolg hatten. In der Zwischenzeit wurde allerdings ein Treiber entwickelt (www.pcwelt.de/oz5n), der das Kameramodul als „/dev/video0“ einbindet. Dieser funktioniert, es ist aber etwas Handarbeit notwendig. Öffnen Sie ein Terminal und führen Sie folgende Befehlszeile aus wget http://www.linux-projects. org/listing/uv4l_repo/lrkey.asc && sudo apt-key add ./lrkey.asc Danach fügen Sie die Zeile deb http://www.linux-projects. org/listing/uv4l_repo/raspbian/ wheezy main am Ende der Datei „/etc/apt/sources.list“ ein. Nun folgen die drei Zeilen: sudo apt-get update sudo apt-get install uv4l uv4l-raspicam sudo apt-get install uv4lraspicam-extras damit ist der Treiber installiert. Manuell binden Sie den Treiber nach Systemstart so ein: uv4l --driver raspicam --autovideo_nr --width 640 --height 480 --encoding jpeg Die Breite und Höhe können Sie natürlich nach Belieben einbinden. Die maximale Auflösung des Kameramoduls beträgt 2592 x 1944 oder fünf Megapixel. An dieser Stelle testen wir, ob der Treiber funktioniert, und führen dazu diese Zeile aus: dd if=/dev/video0 of=bild.jpeg bs=11M count=1

PC-WELT

Sonderheft Hacks 3/2014

Herzstück der Bewegungserkennung: Das ist die Sektion „Motion Detection Settings“. Hier legen Sie fest, wie viele Pixel sich ändern müssen, damit Motion dies als Bewegung erkennt.

Überredungskunst: Das kleine Kameramodul für den Raspberry Pi funktioniert standardmäßig nicht mit Motion. Ein Entwickler stellt jedoch einen Treiber bereit, der die Kamera zur Zusammenarbeit bewegt.

Wenn alles funktioniert, sollte sich danach eine JPG-Datei mit dem Namen „bild.jpeg“ in dem Verzeichnis befinden, in dem Sie den Befehl ausgeführt haben. Um den Treiber wieder zu entladen, beenden Sie uv4l über den Befehl pkill aus: Dazu geben Sie folgenden Befehl ein. pkill uv4l Zusammenspiel mit Motion: Der Treiber funktioniert auch mit Motion. Allerdings brauchen wir dafür die Variable LD_PRELOAD vor dem Start der Überwachungs-Software. Der Befehl, um Motion zu starten: sudo LD_PRELOAD=/usr/lib/uv4l/ uv4lext/armv6l/libuv4lext.so motion Rufen Sie nun die URL des Raspberry Pi mit Port 8081 auf, sollte das Bild erkennbar sein. Auch auf Bewegung reagiert das Kameramodul, und die Software nimmt brav alles auf. Laden Sie die Bibliothek vorher nicht, reagiert das Kameramodul ebenso. Allerdings nimmt es keine Bilder auf und funktioniert somit nicht wirklich. Ein automatischer Start von Motion

mit Kameramodul und einer individuellen Konfigurationsdatei könnte in der Datei „/etc/ rc.local“ so aussehen: uv4l --driver raspicam --autovideo_nr --width 640 --height 480 --encoding jpeg sleep 3 LD_PRELOAD=/usr/lib/uv4l/uv4lext/ armv6l/libuv4lext.so /usr/bin/ motion -c /home/pi/motion/ motion.conf Ob das sleep 3 unbedingt notwendig ist, muss man ausprobieren. Auf jeden Fall verzögert es den Start von Motion um drei Sekunden, und der Treiber hat Zeit, sich zu laden. Damit Motion im Hintergund startet, editieren Sie die Konfigurationsdatei und suchen nach der Zeile „daemon=off“. Diese befindet sich ziemlich am Anfang. Ein Änderung von off auf on bewirkt, dass beim händischen Start oder über rc.local das Terminal wieder freigegeben wird und das Programm im Hintergrund läuft. Mit pkill motion können Sie Motion bei Bedarf jederzeit beenden.

35

Raspberry Pi / Zeitrafferaufnahmen

Zeitrafferaufnahmen mit Raspberry Pi

Der Raspberry Pi lässt sich auch für das Fernsteuern von Kameras und damit für Zeitrafferaufnahmen verwenden. Hierzu dient eine Software, die in den Raspbian-Repositories standardmäßig enthalten ist. Von Jürgen Donauer

Die Software für Zeitrafferaufnahmen nennt sich Gphoto2 und kann mit sehr vielen Kameras umgehen. Darunter befinden sich nicht nur Spiegelreflex- (DSLR), sondern auch eine ordentliche Anzahl von Kompaktkameras. Wir haben für dieses Tutorial eine Canon EOS 7D verwendet. Sie können diese Anleitung ebenfalls mit jedem anderen Linux-Rechner nachvollziehen. Vielleicht besitzen Sie zwar keinen Raspberry Pi, dafür aber ein Netbook mit installiertem Linux. Weiterhin muss der Raspberry Pi für die Software-Installation mit dem Internet verbunden sein.

36

Gefahren bei Zeitrafferaufnahmen Gerade Spiegelreflexkameras verwenden mechanische Teile, wenn man nicht gerade im Live-View-Modus Bilder schießt. Jedes Hochklappen des Spiegels zehrt ein bisschen an der Lebensdauer einer DSLR. Die Hersteller garantieren nur eine begrenzte Anzahl an Aufnahmen. Je nach Qualität der Kamera können das 100 000 oder 300 000 Auslösungen sein. Wenn wir von 25 Bildern pro Sekunde für eine Zeitrafferaufnahme ausgehen, würden 60 Sekunden Film 1500 Aufnahmen benötigen. Möchten Sie mit der Technologie experimentieren, ist

der Einsatz einer günstigeren Kompaktkamera sicherlich nicht verkehrt. Modernere Spiegelreflexkameras bieten außerdem die Möglichkeit einer sogenannten Live-View-Aufnahme an. Hier ist der Spiegel hochgeklappt, und Sie steuern die Aufnahme nicht über den Sucher, sondern den Bildschirm. Auch hier wird die Kamera weniger belastet. Mit dauerhaft aktiviertem Bildschirm hält allerdings der Akku nicht so lane durch. Weitere Überlegungen: Die Hersteller werben gerne mit hohen Megapixel-Zahlen. Derzeit gibt es die ersten Kameras mit Unterstützung

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Zeitrafferaufnahmen

DSRL und Raspberry Pi: Ein einfaches USB-Kabel verbindet Kamera und Raspberry. In diesem Fall steuern Sie den Winzling aus der Ferne via SSH und einer WLAN-Netzwerkkarte. für 4K-Video. Das entspricht einer Auflösung von 4096 x 3072 oder 12,6 Megapixeln. Die meisten modernen Fernseher bieten allerdings nur Full HD (1920 x 1080 oder 2,1 Megapixel) oder HD (1280 x 720 oder 1 Megapixel) als mögliche Auflösung an. Verwenden Sie also eine Spiegelreflexkamera, reicht in der Regel die kleinste Auflösung. Bei der Canon EOS 7D wäre das 2592 x 1728. Das entspricht ungefähr 4,5 Megapixeln und ist bei weitem ausreichend. Ein Einzelbild ist dann etwa 1,5 MByte groß, und damit kommt der Raspberry Pi trotz seiner geringen Leistung auch gut zurecht. Ein fester Stand: Ihre Kamera sollte einen festen Stand haben. Sie möchten bei ZeitrafferAufnahmen in beschleunigter Form zeigen, wie sich ein bestimmter Ort verändert. Wackler stören das als Endprodukt entstandene Video sehr. Aus diesem Grund raten wir Ihnen zum Einsatz eines guten Stativs.

Raspberry Pi vorbereiten Wir gehen davon aus, dass Sie Raspbian benutzen und sich dieses auf dem aktuellen Stand befindet. Ob das Betriebssystem nun mit einer grafischen Oberfläche läuft oder nicht, ist zunächst nicht entscheidend. Gphoto2 ist ein Konsolen-Tool, und eine GUI brauchen wir nicht zwingend. Installieren Sie zunächst via Konsole Gphoto2 mit der Zeile sudo apt-get install gphoto2 Das System zeigt eventuelle Abhängigkeiten zu anderen Paketen an, die ebenfalls installiert werden müssen. Bestätigen Sie das.

PC-WELT

Sonderheft Hacks 3/2014

Installation: Am schnellsten installieren Sie Gphoto2 über die Kommandozeile mit apt-get install. Um die entsprechenden Abhängigkeiten kümmert sich Raspbian automatisch. Für die Videoerstellung: Es ist möglich, später das Video auch auf dem Raspberry Pi erstellen zu lassen. Wir zeigen Ihnen in diesem Beitrag, wie sich das bewerkstelligen lässt. Allerdings raten wir bei diesem Schritt zu einem etwas schnelleren Linux-Rechner, falls verfügbar. Denn die Aufgabe erfordert einiges an Prozessorleistung. Auf jeden Fall benötigen Sie die Software Mencoder. Sie installieren diese und die entsprechenden Abhängigkeiten äquivalent zu Gphoto2 mit der Befehlszeile sudo apt-get install mencoder Danach benötigen Sie die Internet-Verbindung für den Raspberry Pi nicht mehr.

Gphoto2 im Überblick Wie bei den meisten Kommandozeilenbefehlen unter Linux, können Sie auch für Gphoto2 die Manpage für die möglichen Schalter und Optionen einsehen. Tippen Sie dazu man gphoto2 ein. Für unsere Zwecke brauchen wir allerdings nicht alle diese Schalter. Deswegen erklären wir Ihnen eine Auswahl davon. Kamera erkennen: Verbinden Sie zunächst die Kamera via USB mit dem Raspberry Pi und schalten diese ein. Damit die Verbindung zu Gphoto2 nicht abbricht, sollten Sie das automatische Abschalten der DSLR etwas höher wählen oder komplett deaktivieren. Zumindest

Kameraeinstellungen bei DSLRs Die Auslösepriorität scheidet bei Zeitraffer eigentlich aus. Denn Sie möchten immer die selbe Schärfentiefe im Bild haben, damit der Fokus immer gleich bleibt. Somit kommt nur die manuelle Einstellung oder die Blendenpriorität in Frage. Fotos sind eigentlich immer Geschmackssache. Das Gleiche gilt für Zeitraffervideos. Nehmen wir an, Sie erstellen ein Zeitraffer eines Sonnenuntergangs mit vorbeiziehenden Wolken. Das Szenario wird logischerweise dunkler. Möglicherweise möchten Sie genau diesen Lichtunterschied zeigen. Es ist aber auch denkbar, dass Sie sich auf vorbeiziehenden Wolken konzentrieren und die Belichtung gleich bleiben soll. In diesem Fall würden Sie die Kamera auf Blendenpriorität stellen. Bei Canon nennt sich das auf dem Einstellrad in der Regel „Av“ und bei Nikon „A“. In diesem Fall bleibt die Blende und somit der Fokusbereich konstant. Die Kamera wählt dann entsprechend die Verschlusszeit, um alle Bilder gleich zu belichten. Ebenso sollten Sie das Objektiv manuell fokussieren und somit Autofokus deaktivieren. Erstens versucht die Kamera nicht vor jedem Bild neu zu fokussieren, und zweitens vermeiden Sie dadurch gewisse Wacklereffekte.

37

Raspberry Pi / Zeitrafferaufnahmen

Sequenz: In diesem Fall haben wir drei Bilder mit einem Abstand von zehn Sekunden geschossen. Mit Hilfe von --filename sorgen wir, dafür, dass die Reihenfolge stimmt.

Kommunikation: Gibt der Befehl gphoto2 --listconfig eine solche Liste aus, dann kann sich das Rasp­ berry Pi mit der Kamera unterhalten. muss die Kamera so lange wach bleiben, bis das nächste Foto in unserer Zeitraffer-Bildreihe ausgelöst wird. Gphoto2 kann die Kamera nicht aufwecken, zumindest nicht die im Test verwendete EOS 7D. Führen Sie im Anschluss den Befehl gphoto2 --auto-detect aus. In unserem Fall zeigt sich eine angeschlossene Canon EOS 7D. Einen Link zu einer Liste mit von Gphoto2 unterstützten Kameras finden Sie über www.pcwelt.de/19hl. Mittels gphoto2 --list-config lassen Sie sich die konfigurierbaren Schalter der angeschlossenen Kamera auflisten. Befinden Sie sich in der grafischen Oberfläche, kommt es hier möglicherweise zu einer Fehlermeldung hinsichtlich PTP. Eine neuere Version von Gphoto2 würde das Problem lösen. Allerdings müssten Sie dazu selbst kompilieren. Einfacher ist es, die grafische Oberfläche zu deaktivieren. Geben Sie dazu auf der Konsole sudo raspi-config ein. Ändern Sie hier die Einstellung unter Punkt 3 entsprechend ab, so dass der Winzling in eine Textkonsole startet. Nun ist ein Neustart notwendig. Per Standard melden Sie sich mit Nutzer pi und Passwort raspberry ein. Rufen Sie nun gphoto2 --list-config auf, klappt der Schritt ohne Fehlermeldung. Diese Liste zeigt an, welche Optionen wir mit Hilfe von Gphoto2 an die DSLR übermitteln und einstellen können. Das ist von Kamera zu Kamera unterschiedlich, für unsere Zwecke aber zweitrangig.

Fotos erstellen Nachdem Sie nun mit den Grundlagen von Gphoto2 vertraut sind, machen wir uns an die Aufnahme der Fotos über die Kommandozeile. Ein Bild schießen: Testen wir zunächst, ob sich mittels Gphoto2 auch eine Aufnahme durchführen lässt. Wir haben dazu mit Hilfe des Befehls mkdir zeitraffer ein Verzeichnis mit der Bezeichnung „zeitraffer“ angelegt und sind in

38

dieses mit dem Befehl cd zeitraffer gewechselt. Nun führen Sie folgenden Befehl aus: gphoto2 –capture-image-anddownload Dies bewirkt, dass ein Foto aufgenommen, sofort auf den Computer heruntergeladen und nicht auf der Speicherkarte der Kamera gehalten wird. Der Schalter „--capture-image“ würde ebenfalls ein Bild aufnehmen, allerdings auf der Kamera speichern. Nach dem Ausführen des Befehls kann es vorkommen, dass die Kommunikation zwischen dem Raspberry Pi und der Kamera wieder unterbrochen ist und Sie bei einem weiteren Versuch eine Fehlermeldung bekommen. Stecken Sie einfach die Kamera aus und wieder ein. Bei der Aufnahme einer Sequenz klappt allerdings alles einwandfrei. Eine Bildserie aufnehmen: Im nächsten Schritt erweitern wir unseren Befehl und nehmen eine ganze Serie an Bildern auf. Dazu wollen wir außerdem sicherstellen, dass die Bilder anhand der Namen in einer Reihenfolge sind. Dazu dient zum Beispiel diese Befehlszeile gphoto2 -I 10 -F 30 --captureimage-and-download --filename "%Y%m%d%H%M%S.jpg" Der Schalter „-I“ gibt das Intervall in Sekunden an. In unserem Beispiel schießt die Kamera alle zehn Sekunden ein Foto. Mit der Option „-F“ geben Sie die gesamte Anzahl der Bilder an, was im Beispiel oben 30 sind. Mit der Option „--filename“ bestimmen Sie einen Dateinamen. In unserem Fall geben wir das Datum und die sekundengenaue Uhrzeit an: Jahr (%Y), Monat (%m), Tag (%d), Stunde (%H), Minute (%M) und Sekunde (%S). Somit stellen wir sicher, die Bilder auch in der richtigen Reihenfolge zu haben. Nachdem die Sequenz abgeschlossen ist, können Sie durch Eingabe des Befehls ls -ltrh über-

prüfen, ob die Bilder tatsächlich auf dem Rasp­ berry Pi gespeichert sind.

Das Video erstellen Haben Sie Mencoder installiert, können Sie damit direkt auf dem Raspberry Pi das entsprechende Video erstellen. Der Befehl sieht sehr wüst aus, funktioniert aber (eine Zeile): mencoder "mf://*.jpg" -mf fps=25:type=jpg -ovc lavc -lav copts vcodec=mpeg4:mbd=2:trell:v bitrate=7000 -vf scale=1280:720 -oac copy -o zeitraffer.mp4 Bilder pro Sekunde: Hinter „fps=“ steht die Zahl der Bildrate des Videos. Das menschliche Gehirn nimmt ab zirka 14 bis 16 Bildern eine Sequenz als bewegt, aber nicht zwingend ruckelfrei auf. Unsere Fernseher liefern 25 Bilder pro Sekunde. Je höher diese Zahl ist, desto mehr Bilder brauchen Sie für die gleiche Zeit an Film. Auflösung und Qualität des Videos: Hinter „scale=“ verbirgt sich die Auflösung des Videos. In unserem Beispiel würde das Zeitraffervideo im HD-Format, 1280 x 720, vorliegen. Full HD wäre „1920:1080“. Die Qualität des Videos beeinflussen Sie mit der Zahl hinter „vbitrate=“. Hier müssen Sie einfach ein wenig ausprobieren, was Ihren Ansprüchen gerecht wird. Sie können aus den Bildern auch mehrere Videos erstellen und dann vergleichen. Ändern Sie einfach den Ausgabe-Dateinamen zum Beispiel in „zeitraffer2.mp4“, „zeitraffer3.mp4“ und so weiter. Um sich einen Eindruck vom möglichen Ergebnis zu verschaffen, können Sie ein Beispielvideo über www.pcwelt.de/71a9 abrufen.

Videos mit Slowmovideo strecken Slowmovideo ist eine Open-Source-Software, die Videos verlangsamen und somit in der Zeit strecken kann. Dabei entschleunigt die Soft-

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Zeitrafferaufnahmen

Video erstellen: Mit dem Raspberry Pi das Zeitraffervideo zu erstellen, ist sicherlich nicht die schnellste Lösung. Aber es funktioniert zuverlässig und führt zum gewünschten Ergebnis. ware nicht einfach die Abspielgeschwindigkeit des Videos. Das Programm sucht sich bewegende Pixel und rechnet damit die fehlenden Bilder in das Video ein. Somit ruckelt es für das Auge nicht mehr. Einige Beispielvideos können Sie über www.pcwelt.de/zgk3 abrufen. Ein Video, das den Zeitraffereffekt mit und ohne Slowmovideo zeigt, finden Sie über www.pcwelt. de/8sk1.Die Software ist leider nicht in den Repositories von Raspbian oder einer anderen Linux-Distribution zu finden. Außerdem sollten Sie dafür einen wesentlich stärkeren Rechner als das Raspberry Pi verwenden. Die Entwickler bieten für Ubuntu (12.04 bis 13.10) ein PPA (Personal Package Archives) an. Weiterhin sind die Quellen, deb-Pakete sowie InstallationsDateien für Windows verfügbar. Anwender von Mac-OS X können die Software mit Hilfe von Wine betreiben. Unter Ubuntu und dessen Derivaten installieren Sie Slowmovideo mit dem bekannten Dreisprung: sudo apt-add-repository ppa:brousselle/slowmovideo sudo apt-get update sudo apt-get install slowmovideo Rufen Sie die Software nun über das Menü auf. Die Software ist noch nicht komplett übersetzt und bietet daher einen Mix aus Englisch und Deutsch. Klicken Sie im Menü auf „File à New“. Hier wählen Sie nun Verzeichnis und ProjektDateinamen. Ebenso wählen Sie die Datei des Quellvideos aus, das Sie bereits mit Mencoder erstellt haben. Slowmovideo-Raster: Im Fenster sehen Sie ein Koordinatensystem. Die X-Achse, also von links nach rechts, ist dabei für die Zeit zuständig, die

PC-WELT

Sonderheft Hacks 3/2014

Neues Projekt: Bevor Sie mit Slowmovideo loslegen, müssen Sie zunächst ein neues Projekt erstellen. Hier wählen Sie Ordner und auch gleich das Quellvideo aus.

Y-Achse für die einzelnen Bilder. Das erste Bild ist dabei unten und das letzte oben. Nehmen wir an, dass unser Video fünf Sekunden lang ist. Wollen Sie das Video verdoppeln, klicken Sie einfach am oberen Rand bei zehn Sekunden mit der linken Maustaste. Das erstellt einen neuen Knoten, und Sie sehen im Fenster eine gerade Linie, die von links unten nach rechts oben verläuft. Haben Sie die gewünschten Einstellungen vorgenommen, klicken Sie auf „File à Render“. Im sich öffnenden Fenster können Sie nun die Bildwiederholrate (Frames) pro Sekunde einstellen, ob die Software Bewegungsunschärfe

hinzufügen soll und so weiter. Auch hier müssen Sie etwas experimentieren. Wichtig ist ein Besuch des Reiters „Output“. Hier legen Sie fest, wo das Ergebnis landen soll und wie die Datei heißt. Per Standard würde Slowmovideo die Ausgabedatei unter Linux nach „/tmp/rendered.mpg“ legen. Bilder statt Video: Anstelle eines Quellvideos können Sie auch einzelne Bilder verwenden. Sie könnten Slowmovideo damit auch für die Erstellung des Zeitraffervideos verwenden. Über den Ordner „Output“ haben Sie die Möglichkeit, aus einem Video wieder Einzelbilder erstellen zu lassen.

Aus fünf mach zehn: Mit Hilfe von Slowmovideo können Sie das Video strecken. Eine Verdopplung der Zeit ist ohne weiteres möglich. Je nach Umfang dauert das aber auch auf schnellen Rechnern etwas.

39

Raspberry Pi / VPN

VPN mit dem Raspberry Pi

Quelle: David Wolski

In den wenig vertrauenswürdigen Gewässern öffentlicher Internetverbindungen ist das Virtual Private Network ein sicherer Hafen. Der Raspberry Pi kann für Heimnetzwerke als VPN-Server dienen. Von David Wolski

Ein VPN verschlüsselt den gesamten Datenverkehr auf Netzwerkebene. Wer mit dem Mobilgerät oder Notebooks in öffentlichen WLANs unterwegs ist, kann mit einem VPN den gesamten Datenverkehr verschlüsselt über den VPN-Server zu Hause oder im Büro umleiten. Und nicht nur das: Der VPN-Server ist auch ein sicheres Eingangstor zum Netzwerk dahinter. Mit dem richtigen Routing, das der Server dem Client mitteilt, kann der VPNServer eine Verbindung zum gesamten Netzwerk herstellen. So, als ob Sie sich direkt im lokalen Netzwerk befänden. Diese Lösung eignet sich nicht nur für Reisende und Außendienstmitarbeiter, die unterwegs auf Dokumente im Büro zugreifen müssen. Auch für Privatanwender ist die Lösung ideal, um sicher und verschlüsselt von öffentlichen WLANs auf den heimischen PC zu kommen. Der VPN-Server muss dazu von außen erreichbar sein. Er authentifiziert den VPN-Client und stellt die Verbindung zu anderen Rechnern im VPN mittels Routing her. Für diese Rolle ist der Raspberry Pi prädestiniert, da hier alle Werk-

40

zeuge zur Verfügung stehen. Die Leistung der CPU und die Geschwindigkeit der 100-MBitEthernet-Ports reicht für ein kleineres Netzwerk, das per DSL an die Außenwelt angebunden wird.

Open VPN: Open Source für Server und Clients Eine Linux-Distribution wie Raspbian liefert die benötigten Software-Pakete für den Aufbau eines Virtual Private Networks mit Open VPN. Für dieses VPN-Protokoll ist nicht nur die Server-Komponente frei, es gibt auch freie Clients für Windows, Mac-OS, iOS, Android und natürlich für Linux. Die Hardware-Voraussetzungen sind ebenfalls übersichtlich: Ein Mini-LinuxSystem wie der Raspberry Pi wird als Server benötigt und muss an den Internetanbieter über einen Router angeschlossen sein, der Port-Forwarding unterstützt. Ein grundlegendes Feature, das die meisten Router – auch ganz einfache Modelle – unterstützen. Open VPN ist für den professionellen Einsatz geschaffen, und die erste Konfiguration des

Servers stellt immer eine gewisse Hürde dar, da einige Software-Komponenten des LinuxSystems richtig konfiguriert und aufeinander abgestimmt werden müssen. Dies erfolgt auf dem Raspberry Pi ganz in der Linux-Tradition in der Kommandozeile und mit textbasierenden Konfigurationsdateien. Dabei sind ein paar Netzwerkkenntnisse sowie Linux-Kenntnisse, etwa zur Arbeit als root mit sudo und zum Umgang mit Texteditoren von Vorteil. Als Linux-Distribution für den Raspberry Pi eignen sich die Debian-Varianten Raspbian und Raspbmc, die sich über das Installations-Tool Noobs (auf Heft-DVD) installieren lassen. Die folgende Anleitung bezieht sich auf Raspbian/ Raspbmc. Die Befehle und Paketnamen weichen bei anderen Linux-Distributionen im Detail ab, etwa beim ebenfalls geeigneten Pidora. Die Einrichtung und Konfiguration auf Kommandozeile (Shell) erfolgt wahlweise direkt auf dem Raspberry Pi, an dem dazu Bildschirm und Tastatur angeschlossen sind. Oder auch einfach per SSH über das Netzwerk mit Hilfe eines SSH-Clients wie Putty (auf Heft-DVD).

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / VPN

Vorarbeit: Einen Port am Router weiterleiten Der Router muss außerdem wissen, welche Anfragen aus dem Internet durchgelassen werden solleen und welcher Teilnehmer im Netzwerk der OpenVPN-Server ist. Zu diesem Zweck richten Sie auf dem Router Port-Forwarding ein, um gezielt nach außen einen einzigen Port zu öffnen und an die passende Adresse im LAN weiterzuleiten. Der Port für Open VPN ist der Port 1194 (UDP). Wenn der Open-VPN-Server im LAN beispielsweise die IP 192.168.1.6 hat, dann leiten Sie vom Router den Traffic vom Typ UDP am Ports 1194 auf die interne IP-Adresse und den dortigen Port 1194 um. Welche IPAdresse die Netzwerkschnittstelle (WLAN oder Ethernet) des Raspberry Pi hat, finden Sie dort in der Kommandozeile mit dem Befehl /sbin/ifconfig heraus. Der Server, der von außen die VPNVerbindungen akzeptieren soll, muss zudem aus dem Internet erreichbar sein. Und zwar über eine feste IP-Adresse oder über einen eindeutigen DNS-Namen. Bei DSL-Anbindung fällt eine feste IP aus, da bei jedem Verbindungsaufbau der Provider neue IP-Adressen vergibt. Für diesem Fall kommt ein dynamischer DNS-Dienst wie beispielsweise Noip (http://www.noip.com) zur Hilfe, der auch einer sich ändernden IP-Adresse feste Host-Namen im DNS zuteilt. Die meisten DSL-Router unterstützen Noip und teilen dem Dienst nach der Einrichtung automatisch die neue IP des Providers mit.

Open VPN: Installation unter Raspbian In der Kommandozeile von Raspbian/Raspbmc dient der Paketmanager APT von Debian zur Installation von Open VPN – man muss nichts selbst kompilieren. Mit den beiden Befehlen sudo apt-get update sudo apt-get install openvpn werden die Pakete über die bestehende Internetverbindung aus dem Software-Verzeichnis der Distribution installiert. Für die spätere Erstellung der eigenen Zertifikate für die VPNVerschlüsselung gibt es fertige Scripts, die noch an die richtige Stelle kopiert werden müssen: sudo cp -r /usr/share/doc/ openvpn/examples/easy-rsa/2.0 / etc/openvpn/easy-rsa Anschließend gehen Sie mit cd /etc/openvpn/easy-rsa in das Script-Verzeichnis und editieren mit sudo nano vars die Konfigurationsdatei „vars“. Gehen Sie dort zuerst zur Zeile, die mit „export KEY_CONFIG=“ beginnt und ändern Sie diese zu:

PC-WELT

Sonderheft Hacks 3/2014

Den Port für Open VPN weiterleiten: Der Router muss den Port 1194 (UDP) von außen erreichbar machen und im lokalen Netzwerk an die IP-Adresse des Raspberry Pi weiterleiten. Hier die Einstellungen bei einem Router von D-Link. export KEY_CONFIG=$EASY_RSA/ openssl-1.0.0.cnf Die Zeile „EASY_RSA=“ ändern Sie zudem export EASY_RSA="/etc/openvpn/ easy-rsa" Die nächsten Anpassungen sind nahe am Ende der Datei zu machen, um Namen und Identität des VPNs anzupassen. Viele dieser Parameter sind zwar nicht unbedingt für die korrekte Funktion des VPNs relevant, müssen aber trotzdem gesetzt sein: export KEY_COUNTRY="DE" Landeskürzel, beispielsweise „DE“ für Deutschland. export KEY_PROVINCE="BY" Ein beliebiger Name für das Bundesland.

export KEY_CITY="Muenchen" Eine Ortsangabe, die den Standort angibt. export KEY_ORG="MeinVPN" Ein Firmenname Ihrer Wahl. Kann auch einfach der Domain-Name sein. export KEY_EMAIL="pcwelt@gmail. com" export [email protected] Zweimalige Angabe einer beliebigen Mailadresse des VPN-Administrators, also meist einfach die eigene Adresse. export KEY_CN="example.no-ip.com" Der gewünschte Name dieses VPNs. Es sollte hier die Angabe des dynamischen DomainNamens erfolgen, der zuvor über Noip eingerichtet wurde.

Konfigurationsdatei des Open-VPN-Servers Die folgende Open-VPN-Beispielkonfiguration tragen Sie auf dem Raspberry Pi in der Datei „/etc/openvpn/server.conf“ ein. Passen Sie die Dateinamen in den Zeilen „cert“ und „key“ an, wenn Sie nicht wie im Beispiel „MeinVPN“ verwenden. dev tun proto udp port 1194 ca /etc/openvpn/easy-rsa/keys/ca. crt cert /etc/openvpn/easy-rsa/keys/ MeinVPN.crt key /etc/openvpn/easy-rsa/keys/ MeinVPN.key dh /etc/openvpn/easy-rsa/keys/ dh1024.pem user nobody group nogroup

server 10.8.0.0 255.255.255.0 persist-key persist-tun status /var/log/openvpn-status.log verb 3 client-to-client push "redirect-gateway def1" push "dhcp-option DNS 208.67.222.222" push "dhcp-option DNS 208.67.220.220" log-append /var/log/openvpn comp-lzo

41

Raspberry Pi / VPN

Parameter für Schlüssel festlegen: Legen Sie diese Einstellungen in der Datei „/etc/ openvpn/easy-rsa/vars“ fest, damit die Scripts zur Schlüsselerzeugung für Client und Server die Werte übernehmen. export KEY_NAME="MeinVPN" Ein beliebiger Name für den Aussteller der Zertifikate. export KEY_OU="MeinVPN" Eine Angabe zum Abteilungsnamen, der frei gewählt werden kann. Die abschließenden beiden Parameter export PKCS11_MODULE_ PATH=changeme export PKCS11_PIN=1234 kommen nicht zum Einsatz und brauchen nicht geändert zu werden.

Server: Die Schlüssel erzeugen Bevor es daran geht, die Schlüssel für den den Server und für die Clients zu erstellen, ist es erst noch nötig, ein eigenes CA-Zertifikat für die Signatur der Schlüssel zu erzeugen. Dies gelingt, indem Sie zuerst mit

Schlüsselaustausch mittels Diffie-Hellman: Bei dieser kryptografischen Methode werden zufällige Diffie-Hellman-Parameter erzeugt, was auf der ARM-CPU des Raspberry Pi eine Weile dauert.

cd /etc/openvpn/easy-rsa in das Script-Verzeichnis gehen und dann mit sudo -s eine Root-Shell öffnen. Die folgenden Befehle werden dann gleich mit Root-Rechten ausgeführt, und ein vorangestelltes sudo ist nicht nötig. Mit source ./vars lesen Sie zuerst die zuvor gesetzten Variablen der Datei „vars“ ein. Dann führen Sie die beiden Befehle ./clean-all ./build-dh aus, um ein sauberes Schlüsselverzeichnis zu erzeugen und die Diffie-Hellmann-Werte, welche für die Kryptographie-Funktionen des VPNs nötig sind. Die Berechnung dieser zufälligen Werte nimmt auf dem Raspberry Pi rund eine Minute in Anspruch.

Konfigurationsdatei des Open-VPN-Clients Die Client-Konfiguration für Open VPN unter Windows. Die folgenden Zeilen tragen Sie in der Datei „client.ovpn“ ein. Anzupassen ist hier nur der Domain-Name „beispiel.no-ip.com“ in der Zeile „remote“, damit hier der korrekte dynamische Domain- Name des VPN-Servers steht. Die Port-Angabe dahinter muss beibehalten werden. dev tun client proto udp remote beispiel.no-ip.com 1194 ca ca.crt cert client1.crt key client1.key resolv-retry infinite route-method exe

42

route-delay 30 route-metric 512 route 0.0.0.0 0.0.0.0 nobind persist-key persist-tun comp-lzo verb 3

Bevor Sie nun die Zertifikate für den OpenVPN-Server sowie die Clients erstellen können, ist es notwendig, das CA-Zertifikat zum Signieren der Server- und Client-Zertifikate zu erstellen. Dies führen Sie mit den folgenden beiden Befehlen aus: ./build-ca ./build-key-server MeinVPN Es erfolgen jeweils nach jedem Befehl einige Abfragen der bereits festgelegten Parameter, und Sie können die Werte in eckigen Klammern einfach durch einen Druck auf die Eingabetaste übernehmen. Beim letzten Befehl zum Erzeugen der Server-Schlüssel erfolgt zudem noch die Rückfrage nach einem optionalen Passwort, dass Sie leer lassen. Abschließend Beantworten Sie noch die Rückfragen „Sign the certificate?“ und „Commit“ mit „y“. Als Nächstes geht es zur eigentlichen Konfiguration des Open-VPN-Servers. Mit dem Befehl nano /etc/openvpn/server.conf öffnen Sie eine neue, noch leere Konfigurationsdatei im Texteditor. Tragen Sie dort die Zeilen ein, die im Kasten „Konfigurationsdatei des Open-VPN-Servers“ abgedruckt ist.

Für die Clients: Zertifikate und Schlüssel Der Server hat nun alle benötigten Schlüssel und Zertifikate. Damit Sie sich aber mit einem VPN-Client später verbinden können, braucht jeder Client natürlich auch sein eigenes Schlüsselbund. Dieses erzeugen Sie in diesem Schritt mit dem Aufruf von ./build-key client1 Auch hier können Sie wieder die vorgegebenen Werte übernehmen und lassen „Passwort“ leer. Die Client-Dateien werden ebenfalls im Verzeichnis „/etc/openvpn/easy-rsa/keys“ ab-

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / VPN

Serverschlüssel erzeugen: Client und Server bekommen eigene Schlüssel, die jeweils mit Scripts aus dem Paket von Open VPN erzeugt werden. Die optionale Passwortabfrage lassen Sie jeweils leer. gelegt. Aus diesem Verzeichnis brauchen Sie für den Client Nummer eins die Dateien „ca. cert“, „client1.crt“ und „client1.key“.

Routing: Vom VPN ins Netzwerk Das Linux-System auf dem Raspberry Pi soll den Datenverkehr aus dem VPN ins lokale Netzwerk weiterleiten und zudem noch eine Internetverbindung für die Clients zur Verfügung stellen. Öffnen Sie wieder eine Root-Shell mit sudo -s da alle weiteren Befehle wieder Root-Rechte verlangen. Öffnen Sie die Datei „2/etc/sysctl. conf“ mittels nano /etc/sysctl.conf im Texteditor, entfernen das Kommentarzeichen „#“ vor der Zeile „#net.ipv4.ip_forward=1“ und aktivieren nach dem Speichern der Datei die Änderung mit diesem Befehl: sysctl -p /etc/sysctl.conf Nun muss noch mit dem Paketfilter iptables, der Teil des Linux-Kernels ist, eine Weiterleitung für die VPN-Pakete eingerichtet werden. Mit den beiden Befehlen iptables -A INPUT -i tun+ -j ACCEPT iptables -A FORWARD -i tun+ -j ACCEPT erstellen Sie die Regeln für das VPN-NetzwerkInterface und mit den weiteren drei Befehlen iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -t nat -F POSTROUTING iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE legen Sie fest, dass die VPN-Clients auch in das lokale Netzwerk und ins Internet kommen.

PC-WELT

Sonderheft Hacks 3/2014

Verbindung mit Windows: Ist alles korrekt konfiguriert, kann sich ein Client – hier etwa Windows 7 – mit dem Raspberry Pi verbinden und kommt über ihn in das VPN. Ein Statusfenster zeigt den Verbindungsaufbau und eventuelle Fehler.

Damit diese Regeln immer gleich automatisch nach dem Start des Raspberry Pi aktiv werden, geben Sie iptables-save > /etc/iptables.up. rules ein, um die aktuellen Einstellungen von iptables zu sichern. Erstellen Sie mit nano /etc/network/if-pre-up.d/ iptables eine neue Script-Datei, der Sie den Inhalt #!/bin/bash /sbin/iptables-restore < /etc/ iptables.up.rules geben und speichern. Jetzt müssen Sie die Datei nur noch mit chmod +x /etc/network/ if-pre-up.d/iptables ausführbar machen.

Konfiguration: Windows als Client Wer die bisherigen Einrichtungsschritte obskur und umfangreich fand, kann beruhigt sein: Die Konfiguration des Clients fällt deutlich knapper und geradliniger aus. Auf einem WindowsSystem als Client installieren Sie Open VPN 2.3.2 (Open Source, englischsprachig, Download unter http://pcwelt.de/299951, 1,6 MB). Kopieren Sie die erzeugten Client-Schlüssel „client1.crt“ und „client1.key“ sowie das allgemeine Zertifikat „ca.crt“ nach „C:\Program F i l e s \ O p e n V P N \ c o n f i g “ ( „ C : \ P r o g ra m Files(x86)\OpenVPN\config“ bei 64-Bit-Systemen). Anschließend legen Sie im gleichen Verzeichnis die neue Textdatei mit dem Namen „client.ovpn“ an, der Sie den Inhalt geben, wie er im Kasten „Konfigurationsdatei des OpenVPN-Servers“ steht. Nun ist es an der Zeit, den Client zu starten. Dazu bringt Open VPN unter Windows ein

Werkzeug für den unkomplizierten Start bereits mit: Open VPN GUI ist ein Tool, das bei der Installation von Open VPN mit Standard-Einstellungen gleich mit installiert wird. Sie finden es im Startmenü im Ordner „OpenVPN“. Es ist wichtig, dieses Tool stets als Administrator auszuführen, da der Aufbau einer VPN-Verbindung auch neue Routen in den Netzwerkeinstellungen setzt. Um nicht jedes Mal Open VPN per Rechtsklick zu starten, können Sie auch in den Eigenschaften der Verknüpfung zu Open VPN GUI im Startmenü oder auf dem Desktop im Dialog unter „Kompatibilität“ die Option „Programm als Administrator ausführen“. Nach dem Aufruf von Open VPN GUI präsentiert sich im Infobereich neben der Zeitanzeige ein neues Netzwerksymbol, das ohne VPNVerbindung rot eingefärbt ist. Mit einem Rechtsklick auf das Symbol wählen Sie im Menü den Punkt „Connect“ aus. Es öffnet sich ein Programmfenster, das Sie mit detaillierten Meldungen über den Verbindungsaufbau informiert. Nachdem die VPN-Verbindung steht, schließt sich das Fenster, und das Symbol im Infobereich zeigt sich in Grün. Windows fügt auf dem Client die neue virtuelle Netzwerkschnittstelle von Open VPN als „LAN-Verbindung 2“ hinzu, und das System fragt, um welche Art von Netzwerk es sich handelt. Wählen Sie für das VPN als Typ das Heimnetzwerk oder das Arbeitsplatznetzwerk. Rechner im lokalen Netzwerk erreichen Sie über deren IP-Adresse, und der gesamte Internet-Traffic geht nun verschlüsselt immer über den Raspberry Pi. Zwar können Sie Netzwerkdienste wie WindowsFreigaben vom Open-VPN-Server nutzen, der Client antwortet jedoch selbst nicht auf PingAnfragen und kann keine Freigaben über das VPN anbieten.

43

Raspberry Pi / Sound

Besserer Sound für Raspberry Pi

Quelle: David Wolski

Eine Rolle, die dem Raspberry Pi bei vielen Selbstbauprojekten zukommt, ist die Aufgabe als Player oder Mediacenter. Dazu ist der Audioausgang der Platine aber nicht gut genug. Von David Wolski

Die Platine des Raspberry Pi beherbergt als System-on-Chip (SoC) das BCM 2835 von Broadcom. In diesem ist auch der AnalogDigital-Wandler für den separaten Audioausgang der 3,5-mm-Klinke untergebracht. Durch Unzulänglichkeiten bei der Signalqualität war der Audioausgang des Raspberry Pi zuerst kaum zu etwas anderem als für gelegentliche akustische Meldungen zu gebrauchen. Mit reifender Firmware ist inzwischen auch das Signal besser geworden. Die gravierendsten Kritikpunkte, etwa laute Knackgeräusche vor und nach dem Abspielen von Sounds, rhythmische Störgeräusche sowie 50-Hz-Brummen, waren allein Software-Probleme der Firmware.

Analoger Audioausgang: Nur eine Notlösung Eine neuere Firmware-Version (à Punkt „Firmware Update“) verbessert die Audioqualität schon enorm, da seit der Vorstellung den Raspberry Pi vor rund zwei Jahren nachträglich noch viel Arbeit in die optimale Einbindung des System-on-Chip von Broadcom ging.

44

Trotzdem: Der Sound bleibt vergleichsweise dünn und ist ohne Verstärker oder aktive Boxen zu leise. Aus dem Audioausgang des Rasp­ berry wird kein satter, sauberer Klang kommen, der Hi-Fi-Fans und verwöhnte Ohren zufriedenstellt. Daran kann auch die Firmware nichts ändern. Denn die Platine des Raspberry Pi bietet keinen aufwendigen und damit teuren Digital-Analog-Wandler (DAC). Das verwendete System-on-Chip erzeugt Sound über Pulsweitenmodulation (PWM), bei der ein Rechtecksignal über eine feste Basisfreqeunz moduliert wird. Diese Methode muss nicht zwangsläufig schlecht klingen und kommt beispielsweise auch in hochwertigen Hi-Fi-Geräten und CDPlayern zum Einsatz. Allerdings ist die PWMSchaltung dort mit aufwendigen Tiefpassfiltern versehen, um störende Nebengeräusche, die als Vielfaches der Modulationsfreqeunz entstehen, zu vermeiden. Wird der Raspberry Pi übrigens per HDMI an ein Ausgabegerät mit Klangausgabe angeschlossen, gibt es keine Mängel in Sachen Audioqualität, da das Endgerät die Wandlung übernimmt.

Firmware-Update: Erste Hilfe bei Sound-Problemen Der integrierte Sound-Chip des Raspberry Pi wird von der Firmware, also nicht vom installierten Betriebsystem, immer wieder in einen Stromparzustand versetzt. Die Folge ist ein lautes Knacken, sobald der Sound-Chip Klang ausgeben soll und dazu wieder mit der vollen Spannung versorgt wird. Die Entwickler des Raspberry Pi haben auf die Probleme inzwischen reagiert und in einer neuen Firmware das Problem entschärft: Der Sound-Chip geht seltener und nur nach längeren Pausen in den Stromsparmodus, womit das Auftreten von Knackgeräuschen zumindest weniger oft auftritt. Ab Version 380831 enthält die Firmware diese Korrektur. Um zu sehen, mit welcher Firmware der eigene Raspberry Pi derzeit ausgestattet ist, liefert das offiziell unterstützte Linux-System Raspbian einen Befehl für die Kommandozeile mit, der die Firmware-Version anzeigt: sudo /opt/vc/bin/vcgencmd version Die Version wird zwischen „version“ und „(re-

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Sound

Quelle: Ladyada; Lizenz: Creative Commons

Externen Analog-Digital-Wandler per USB anschließen: Wer dem Raspberry Pi ein gutes analoges Audiosignal für Kopfhörer oder Aktivboxen entlocken will, braucht eine USB-Soundkarte.

Speedlink Vigo: Eine günstige USB-Soundkarte, die am Raspberry Pi gut funktioniert und 3,5-mm-Buchesen für Audio-Output und auch für brauchbares Audio-Input für Aufnahmefunktionen bietet.

lease)“ in der letzten Zeile angezeigt. Liegt die Versionsnummer unter 380831, wird ein Firmware-Update in jedem Fall die Audioqualität des internen Chips verbessern. Bei der Aktualisierung der Firmware hilft das Script „rpi-update“ von https://github.com/Hexxeh/rpi-update.

Ausweg: USB-Soundkarte am Raspberry Pi Soll der Raspberry Pi selbst gute Audioqualität liefern, um das Gerät ohne Umweg über ein HDMI-fähiges Endgerät an Kopfhörer, aktive Boxen oder Stereoanlage anzuschließen, dann ist ein Stück zusätzlicher Hardware nötig. An einen der USB-Ports des Raspberry Pi lässt sich eine USB-Soundkarte mit eigenem DAC anschließen, um Audio-Output und -Input nicht mehr der Platine zu überlassen, sondern einem dezidierten USB-Gerät. Der Aufwand dieser Lösung ist niedrig, denn ausreichend gute USB-Soundkarten gibt es bereits ab 12 Euro. Wer mehr ausgibt, erhält natürlich einen besseren DAC, und nach oben gibt es – wie immer bei Hi-Fi-Equipment – keine Grenze. Lediglich die Auswahl eines passenden SounChips ist nicht ganz trivial, denn auf dem Rasp­ berry Pi läuft in einer Form immer Linux, und es muss deshalb ein Chip gewählt werden, für den ein Treiber im Linux-Kernel schon vorliegt. Dazu eine Faustregel: Viele USB-Audiogerät e richten sich nach dem USB-Standard und sind „Class compliant“. Diese Chips funktionieren ohne jeden Treiber unter Windows und unter Linux, da die Unterstützung dafür bereits fester Bestandteil des Linux-Kernels ist. Eine USBSound-Karte (USB 1.1 oder 2.0), die ganz ohne Treiber unter Windows oder am Mac arbeitet, sollte also auch ohne Schwierigkeiten am Raspberry Pi laufen. Eine generelle englischsprachige Übersicht, welche USB-Geräte mit dem Raspberry Pi kompatibel sind, liefert die Übersicht im Wiki von Embedded Linux (www.pcwelt. de/4ytq). Um auf Nummer sicher zu gehen, sollten Sie in Webshops wie Amazon auf Kundenrezensionen achten, die speziell die Kompatibilität mit dem Raspberry Pi thematisieren. Eine Low-Cost-Lösung ist beispielsweise die

PC-WELT

Sonderheft Hacks 3/2014

Speedlink Vigo für rund 13 Euro (http://amzn. to/1eDSnX6). Wer auf ausgezeichnete SounQualität und einen leistungsfähigen Kopfhörerverstärker Wert legt, bekommt für etwa 50 Euro mit dem Hires USB-DAC SABRE 24/96 ein hochwertige USB-Soundkarte (http://amzn.to/ KK9FqB).

Konfiguration: Eine USB-SoundKarte aktivieren Generell ist notwendig, die USB-Sound-Karte erst an den Raspberry Pi anzuschließen und ihn erst dann zu booten. Mit dem Kommandozeilenbefehl lsusb lässt man sich dann die Liste aller USB-Geräte anzeigen, die auf dem Raspberry Pi nur einige wenige Geräte umfasst. In der Liste sollte nun der Hersteller und oft auch die Modellbezeichnung der USBSoundkarte mit auftauchen, beispielsweise „C-Media Electronics, Inc. CM108 Audio Controller“. Die USB-Soundkarte ist dann einsatz-

bereit und kann eingebunden werden. Dazu ist es nur nötig, die Konfiguration des LinuxSystems geringfügig anzupassen, damit statt des integrierten Audioausgangs der neue USBAudioausgang bevorzugt wird. Öffnen Sie dazu mit dem Befehl sudo nano /etc/modprobe.d/alsabase.conf die Alsa-Konfigurationsdatei, die auf Raspbian und anderen Linux-Systemen für die Klangausgabe von Programmen zuständig ist. Gehen Sie in der Datei zur Zeile „options snd-usbaudio index=-2“ und ändern diese auf options snd-usb-audio index=0. Speichern Sie die Datei, und führen Sie mit sudo reboot einen Neustart durch. Für einen schnellen Test mit Rauschen auf beiden Kanälen führen Sie in der Kommandozeile einfach speaker-test -c2 -D hw:0,0 aus, woraufhin weißes Rauschen über die angeschlossene USB-Soundkarte ertönt.

Alsa-Konfiguration: Damit statt des internen Audioausgang der USB-SoundChip standardmäßig verwendet wird, muss diese Zeile in der Datei „/etc/modprobe.d/alsabase.conf“ angepasst werden.

HDMI Digitale Übertragung des Audiosignals Die 3,5-mm-Klinke ist nicht der einzige Weg, dem Raspberry Pi Sound zu entlocken. Beim Einsatz des Ein-Platinen-Rechners als Mediacenter ist der HDMI-Ausgang für die Verbindung zu TV oder Monitor viel wichtiger. Das HDMI-Signal überträgt Audio und Video in digitaler Form, und die Wandlung des digitalen Audiosignals in ein Analoges bleibt dem angeschlossen Endgerät überlassen. Gute TVGeräte wollen für cineastischen Filmgenuss sorgen und verfügen deshalb durchaus über gute DACs und Verstärker. In dieser Konstellation gibt es überhaupt keine Probleme mit der Klangqualität des Raspberry Pi.

45

Raspberry Pi / Raspberry to go

Raspberry Pi als mobiler PC Auf dem Raspberry Pi läuft ein vollwertiges Linux. Was liegt also näher, als mit dem Kleinstrechner auch Office-Aufgaben zu erledigen. Wir erklären, wie das sogar mobil funktioniert.

Von Stephan Lamprecht

Dank seiner HDMI-Schnittstelle ist der Raspberry Pi schnell mit externen Displays wie TV-Geräten und Monitoren verbunden. Mit dem richtigen Betriebssystem und etwas Zubehör eignet sich der pfiffige kleine Rechner durchaus als genügsames Arbeitstier und sogar als mobiler Rechner.

1

Die Liste der notwendigen Zutaten

Für die Nutzung des Raspberry als DesktopErsatz oder mobilen Rechner müssen Sie sich einige Bauteile beschaffen. Neben dem Einplatinen-Computer und einer ausreichend dimensionierten SD-Karte (16 GB sind eine annehmbare Größe) sollten Sie sich ein Netzteil mit Mikro-USB-Anschluss anschaffen. Unbedingt empfehlenswert ist der Kauf eines Gehäuses. Hier haben Sie im Handel die Wahl zwischen verschiedenen Modellen, die um die 10 Euro kosten. Sie erleichtern den Transport und schützen den Rechner auch unterwegs vor schädlichen Einflüssen. Obligatorisch ist auch der Kauf eines HDMI- und Ethernet-Kabels. Per HDMI verbinden Sie den Raspberry schnell mit allen möglichen externen Anzeigegeräten, und

46

per Ethernet klappt der Internetzugang, sofern kein WLAN zur Verfügung steht. Um Ihre Optionen zu erweitern, kann sich die Anschaffung eines Kabels lohnen, das HDMI mit DVI verbindet. Damit schaffen Sie auch die Verbindung zu etwas älteren Monitoren. Auch die neuesten Revisionen des Raspberry bringen derzeit noch kein WLAN-Modul mit. Wenn Sie unterwegs per Funknetzwerk auf das Internet zugreifen wollen, schaffen Sie sich am besten einen passenden WLAN-Dongle für die USB-Schnittstelle an. Sofern Sie den Raspberry als schnell einsetzbaren Desktop-Ersatz nutzen wollen, besorgen Sie sich am besten noch eine möglichst kleine Tastatur sowie eine Maus. Wenn Sie beide Geräte und einen WLAN-Dongle nutzen wollen, benötigen Sie allerdings auch einen USB-HUB oder eine Tastatur mit integriertem USB-HUB, da der kleine Rechner nur zwei USB-Buchsen besitzt.

2

Bauteile für den mobilen Einsatz

Mit den bisher zusammengestellten Zutaten besitzen Sie einen Mini-PC, den Sie binnen weniger Minuten an fast jedem Ort einsetzen

können. Vorausgesetzt, Sie finden dort eine Stromquelle und einen externen Monitor. Mit einer zusätzlichen Investition von knapp 100 Euro und etwas Bastelarbeit stellen Sie sich ein System zusammen, das klein und leicht ist und gleichzeitig mobiles Arbeiten erlaubt. Dazu benötigen Sie das Atrix Lapdock aus dem Hause Motorola. Atrix ist der Name eines auf Android basierenden Smartphones, das im Jahr 2011 vorgestellt wurde, aber keine größere Verbreitung gefunden hat. Passend zu diesem Telefon produzierte Motorola eine Docking-Station, die sich zu einem regelrechten Ladenhüter entwickelt hat. Das Bauteil besteht aus einem hochauflösendem 11-Zoll-Display, das nach dem Aufklappen den Blick auf eine Tastatur im Quertz-Format freigibt. Diese Docking-Station bildet die Grundlage für eine tragbare Rechnerlösung auf Basis des Raspberry Pi. Nicht zuletzt wegen dieser überraschenden Funktionalität hat die Nachfrage nach dem Atrix Lapdock inzwischen wieder zugenommen. Entscheiden Sie sich für die Anschaffung, müssen sie mit einem Preis von rund 90 Euro rechnen. Achten Sie aber darauf, dass in der Artikelbeschreibung auch ein deutsches Tas-

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Raspberry to go

taturlayout zugesichert wird. Sie finden das Gerät bei vielen Online-Händlern, etwa bei Amazon und Ebay. Allerdings lässt sich der Raspberry nicht unmittelbar mit dem Atrix verbinden. Das Motorola-Lapdock besitzt einen USB-Micro-B-Stecker und einen HDMI-Micro-Stecker. Der Raspberry bietet dagegen Standardanschlüsse. Damit haben Sie die Herausforderung zu lösen, Verbindungen herzustellen. Technisches Geschick und Verständnis vorausgesetzt, können Sie sich solche Kabel selbst zusammenlöten beziehungsweise crimpen. Oder Sie suchen nach bereits fertigen Bauteilen. Dann müssen Sie im Elektronikfachhandel Folgendes zusätzlich besorgen: Kabel USB-A-Stecker auf USBMicro-B-Stecker, Adapter USB-Micro-B-Buchse auf USB-Micro-B-Buchse, Kabel HDMI-Stecker auf HDMI-Micro-Stecker und Adapter HDMIMicro-Buchse auf HDMI-Micro-Buchse. Damit können Sie die Docking-Station mit dem Raspberry Pi verbinden. Dabei ist eine kleine technische Besonderheit zu beachten. Das Atrix-Bauteil prüft zunächst, ob ein Gerät per HDMI angeschlossen ist. Erst wenn dort ein Gerät gefunden wird, versorgt es die USB-Anschlüsse mit Strom. Daher sind nicht alle HDMI-Kabel tauglich, sondern nur solche, die als hotplug-fähig deklariert sind. Die über das externe Netzteil des Atrix-Lapdock herangeschaffte Spannung reicht aus, um sowohl Display als auch den kleinen Rechner zu betreiben. Damit erhalten Sie einen mobilen Rechner mit einem – zugegeben – etwas ungewöhnlichen Formfaktor. Was Sie nun noch brauchen, ist ein Betriebssystem auf dem Kleinstcomputer, mit dem Sie auch produktiv arbeiten können.

3

Betriebssystem auf dem Raspberry Pi installieren

Es gibt unterschiedliche Wege zum funktionierenden Betriebssystem für den Raspberry. Sie brauchen auf jeden Fall einen Computer mit einer Leseeinheit für SD-Karten oder einen externen Speicherkartenleser. Auf der Download-Seite des Raspberry-Projekts (www.raspberrypi.org/downloads) finden Sie eine Liste der verfügbaren Systeme. Auf die Heft-DVD haben wir die meisten davon gepackt. Am flexibelsten sind Sie mit Noobs (New Out Of Box Software). Dabei handelt es um ein Setup-Programm, über das Sie beim Start des Raspberry Pi zwischen mehreren Systemen wählen können. Es lädt die Installationsdateien entweder direkt von der SD-Karte oder aus dem Internet. Entpacken Sie unter Windows das Noobs-Archiv von der Heft-DVD auf die Festplatte. Ste-

PC-WELT

Sonderheft Hacks 3/2014

Mobiler Rechner: Mit dem Motorola Atrix Lapdock machen Sie den Raspberry Pi mobil. Sie können das Gehäuse des Rapberry Pi – wie im Bild zu sehen – an der Rückseite des Lapdock montieren.

Eher ungewöhnliche Anschlüsse: Das Motorola Atrix Lapdock mit USB- und HDMI-Stecker. Deshalb sind mehrere Adapter für den Anschluss des Raspberry Pi erforderlich, die sie teilweise kombinieren müssen.

cken Sie die SD-Karte in den Kartenleser. Für Noobs muss die Karte eine Kapazität von mindestens 4 GB haben. Sichern Sie alle darauf befindlichen Dateien, denn die Karte wird im nächsten Schritt komplett überschrieben. Laden Sie das kostenlose Tool SD Formatter (https://www.sdcard.org/downloads) herunter. Installieren und starten Sie es. Stellen Sie über „Option“ den Parameter „Format Size Adjustment“ auf „On“. Stellen Sie hinter „Drive“ den Laufwerksbuchstaben der SD-Karte ein. Prüfen

Sie genau, dass es sich tatsächlich um die SDKarte handelt, damit Sie nicht versehentlich das falsche Laufwerk formatieren. Klicken Sie auf „Format“ und warten Sie, bis der Vorgang abgeschlossen ist. Kopieren Sie den Inhalt des Noobs-Archivs auf die SD-Karte. Im Hauptverzeichnis liegen danach die Dateien für die Boot-Umgebung, unter anderem „recovery.img“ und „recovery. rfs“. Im Verzeichnis „os“ sind die Dateien für die Betriebssysteme abgelegt. Mit dabei sind

SD-Karte formatieren: Damit Noobs von der SDKarte bootet, bereiten Sie die Karte unter Windows mit dem Tool SD Formatter vor. Setzen Sie die Optionen, wie in der Abbildung zu sehen. Danach kopieren Sie Noobs auf die SD-Karte.

Wenn Sie sich verbaut haben Einer der großen Vorteile des Raspberry besteht darin, dass Sie das System jederzeit mit wenig Mühe wieder in den Ausgangszustand zurücksetzen können. Betriebssystem und Nutzerdaten liegen gemeinsam auf der SD-Karte. Wenn Sie sich bei der Einrichtung des Systems verrannt haben, müssen Sie nur die Speicherkarte in den Originalzustand zurückversetzen. Vorher sollten Sie aber Ihre persönlichen Daten und Dokumente gesichert haben. Generell ist bei einem auch mechanisch nicht ganz unempfindlichen Gerät zu empfehlen, die persönlichen Daten täglich auf ein anderes Medium zu übertragen. Um in den Ursprungszustand zurückzukehren, nutzen Sie unter Linux Gparted, um die Speicherkarte zu formatieren. Unter Windows verwenden Sie beispielsweise das Tool SD Formatter (https://www.sdcard.org/downloads). Mit den Anwendungen formatieren Sie die Karte und kopieren einfach erneut die aktuelle Version der Noobs-Software auf die Karte. Schon können Sie von vorn beginnen.

47

Raspberry Pi / Raspberry to go

vergebenen Passwort ein. Wenn Sie keine Änderungen vorgenommen haben, lautet das Passwort raspberry“. Um wie am heimischen Rechner Büroaufgaben erledigen zu können, starten Sie mit dem Befehl startx die grafische Oberfläche.

5

Erster Start von Raspbian: Automatisch erscheint das Konfigurations-Tool Raspi-config. Hier sollten Sie zuerst das Standard-Passwort für den Benutzer „pi“ ändern. Sie können das Tool aber später jederzeit erneut aufrufen. zur Zeit die Systeme Arch Linux, Open Elec, Pidora, Raspbian, Rasp BMC und Risc-OS. Damit ist die Vorbereitung abgeschlossen. Verbinden Sie jetzt die Peripherie mit dem Rasp­ berry Pi. Legen Sie die Speicherkarte ein, und verbinden Sie das Netzteil. Damit starten Sie das initiale Setup. Aus den angebotenen Optionen entscheiden Sie sich für „Raspbian“ als Betriebssystem. Es bietet die meisten Möglichkeiten für den Desktop- oder Notebook-Einsatz. Damit startet die eigentliche Einrichtung des Betriebssystems.

4

Raspbian auf dem Pi optimal konfigurieren

Im ersten Setup des Geräts sollten Sie auf jeden Fall in den Optionen „Change User Password“ auswählen, um für den Standardnutzer

„pi“ ein individuelles Kennwort zu vergeben. Rufen Sie außerdem „Advanced“ auf. Auf der nachfolgenden Bildschirmseite entscheiden Sie sich für „Memory Split“. Über diese Option legen Sie fest, wie viel des eingebauten Speichers für die Grafikeinheit reserviert werden soll. Wenn Sie den Raspberry nur für OfficeAufgaben und das Surfen im Internet einsetzen wollen, können Sie den Wert von den eingestellten 64 MB ruhig auf 32 MB herunterschrauben. Wenn Sie die Werte später anpassen wollen, können Sie dies jederzeit mit dem Aufruf des Tools raspi-config erledigen, das Sie über eine Kommandozeile starten. Haben Sie die Änderungen durchgeführt, starten Sie den Rechner neu. Nach dem Booten werden Sie vom Prompt begrüßt. Hier loggen Sie sich mit dem Benutzer „pi“ und dem gerade von Ihnen

Hochauflösendes Display für den Raspberry Pi Die Hardware des Raspberry Pi entspricht dem, was auch in vielen Smartphones oder Tablets steckt. Es liegt also der Gedanke nahe, aus dem Raspberry Pi einen Rechner im Tablet-PC-Stil zu basteln. Kleine Displays mit HDMI-Anschluss sind jedoch vergleichsweise teuer, vor allem wenn sie HD-Auflösung bieten sollen. Alex Eames, der das Blog Raspi.tv betreibt, hat zusammen mit Dave Mellor von der Elektronikfirma Cyntech deshalb das Kickstarter-Projekt „HDMIPi“ ins Leben gerufen. Die Finanzierung ist inzwischen gesichert, und das Display soll bisNeun-Zoll-Display: spätestens Mitte 2014 verfügbar sein. VorEs benötigt zur Ansteuerung ein Cont- bestellungen sind ab umgerechnet 92 Euro über http://hdmipi.com möglich. Das Display roller-Board bietet eine Auflösung von 1280 x 800 Pixeln (rechts), das bei bei einer Größe von neun Zoll. Es handelt der fertigen Version sich jedoch nicht um einen Touchscreen. im Gehäuserahmen Dessen Entwicklung würde ein weiteres montiert werden Kickstarter-Projekt erfordern. soll.

48

Software für Raspbian zusammenstellen

Die Oberfläche wirkt für Gnome- oder KDEAnwender auf den ersten Blick etwas kühl und spartanisch, unterscheidet sich aber in der Bedienung kaum von den deutlich mehr Ressourcen verbrauchenden grafischen Aufsätzen. Die ausgelieferte Software ist allerdings eher unpraktisch. Da es sich glücklicherweise um ein vollwertiges Debian-System handelt, können Sie sich viele Programme beschaffen, die für den Office-Alltag besser geeignet sind. Beginnen Sie am besten damit, den Internetbrowser auszutauschen. Installiert ist Midori. Die Anwendung ist aber sperrig und vor allen Dingen langsam und ungewohnt in der Bedienung. Greifen Sie also besser zu einer schnelleren und bewährten Alternative. Klicken Sie doppelt auf das Icon „LXTerminal“, das sich auf dem Desktop befindet. Geben Sie in das Terminalfenster die folgenden zwei Zeilen ein: sudo apt-get update sudo apt-get install chromium Das System fragt Sie, ob Sie die Installation tatsächlich durchführen wollen und wie viel Speicherplatz notwendig sein wird. Bestätigen Sie die Nachfrage. Eine Verbindung zum Internet vorausgesetzt, werden die binären Dateien auf Ihren Rechner geladen und der neue Browser installiert. Als Nächstes richten Sie sich direkt auf dem Raspberry eine vollständige Office-Suite ein, um unterwegs auch an Ihren Dokumenten arbeiten zu können. Vielleicht haben Sie auf dem Desktop bereits den Eintrag „PI Store“ bemerkt. Wie Sie dies von anderen Systemen kennen, bietet der Raspberry inzwischen auch einen Software-Store an, aus dem Sie speziell angepasste Programmversionen installieren können. Wechseln Sie im Store in den Abschnitt „Apps“, und wählen Sie auf der linken Seite des Fensters „Productivity“ aus. In der Mitte finden Sie dann den Eintrag „LibreOffice“. Der Download und die Installation sind kostenlos. Allerdings müssen Sie sich für den Shop registrieren. Dazu genügen aber die Angabe einer gültigen Mailadresse und eines Passworts. Download und Installation benötigen eine Weile. Ist die Einrichtung abgeschlossen, nistet sich die Software im Startmenü unter dem Menüpunkt „Büro“ ein.

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Raspberry to go

Wenn Sie länger mit dem Raspberry Pi arbeiten, werden Sie vielleicht bemerken, dass es verhältnismäßig unpraktisch ist, mit dem Gerät Webmail-Dienste im Internet-Browser zu nutzen. Anbieter wie Google Mail oder auch Outlook.com setzen stark auf den Einsatz von Ajax, also einer gehörigen Portion Javascript, um die Bedienung möglichst dem Desktop nachzuahmen. Dies ist allerdings nicht sonderlich ressourcenschonend. Setzen Sie stattdessen auf Mail-Clients für das System. Zum Beispiel Claws-Mail oder Icedove. Beide können Sie ebenfalls ganz einfach über die Kommandozeile installieren: sudo apt-get install claws-mail sudo apt-get install icedove Zur Anpassung von Debian an die persönlichen Wünsche steht Ihnen ein breites Spektrum an Programmen offen. Allerdings dürfen Sie hier auch nicht zu viel erwarten. Nicht jedes Programm, das auch unter Ubuntu oder Debian läuft, funktioniert problemlos. Die reibungslose Installation muss also nicht notwendigerweise dazu führen, dass die Anwendung auch stabil läuft.

6

Pi Store: Neben den Software-Quellen von Debian können Sie auch den Pi Store nutzen. Dort finden Sie unter anderem eine speziell angepasste Version von Libre Office. Für die Nutzung des Stores ist eine kostenlose Registrierung erforderlich.

WLAN auf dem Raspberry Pi einrichten

Noch mobiler wird Ihr kleiner Rechner durch den Einsatz eines WLAN-Adapters. Der Raspberry Pi selbst bietet nur einen Ethernet-Port. Es gibt aber zahlreiche externe WLAN-Adapter für die USB-Schnittstelle. Besonders zu empfehlen sind für den Kleinstrechner die Adapter des Herstellers Edimax (www.edimax.com). Diese basieren auf einem Chipsatz von Realtek, für den im Kernel des Systems bereits ein Treiber hinterlegt ist. Das macht die Einrichtung auch für Einsteiger unkompliziert. Da der Rasp­ berry nur zwei USB-Ports besitzt, müssen Sie einen zusätzlichen USB-Hub erwerben, um Maus, Tastatur und WLAN-Adapter parallel betreiben können. Um WLAN nutzen zu können, muss das System die angeschlossene Hardware erkennen. Schließen Sie also den WLAN-Dongle an eine freie USB-Schnittstelle an. Der Raspberry wird in diesem Moment automatisch neu starten. Nachdem Sie sich dann wieder am System angemeldet haben, öffnen Sie ein Terminal. Geben Sie dort den Befehl dmesg ein. Sie erhalten eine Liste der an die USB-Schnittstellen angeschlossenen Geräte. Suchen Sie dort nach einem Eintrag „WLAN-Adapter“. Der signalisiert, dass das Betriebssystem die Möglichkeiten des Geräts korrekt erkennt. Wenn der Treiber korrekt genutzt wird, sollte das System eine Netzwerkschnittstelle eingerichtet haben. Geben Sie dann im Terminal ifconfig ein. Wenn

PC-WELT

Sonderheft Hacks 3/2014

WLAN einrichten: Wenn Sie einen Chipsatz verwenden, dessen Treiber im Kernel vorliegt, ist das unkompliziert. Für die WLAN-Konfiguration starten Sie das Tool wpa_gui per Doppelklick auf das Desktop Icon „Wifi Config“. dort ein Eintrag wie „wlan0“ ausgegeben wird, können Sie sich an die Einrichtung des Netzwerks machen. Die grafische Oberfläche enthält ein Werkzeug, mit dessen Hilfe Sie WLAN-Verbindungen einrichten und konfigurieren können. Klicken Sie doppelt auf das Icon „Wifi Config“ auf dem Desktop. Damit starten Sie das Tool wpa_gui. Im oberen Listenfeld sollte der Adapter zu finden sein, den Sie gerade im Terminal ermittelt haben. Klicken Sie auf „Scan“, um ein weiteres Fenster zu öffnen. Wenn Sie darin erneut auf „Scan“ klicken, untersuchen Sie die Umgebung auf Netzwerke in Reichweite. Das funktioniert nur bei Funknetzwerken, die so konfiguriert sind, dass sie ihre Kennung ausstrahlen und damit sichtbar sind. Mit einem Doppelklick auf einen Eintrag rufen Sie sich die Maske für die Konfiguration des Netzwerks auf. Dieser Dialog erscheint auch, wenn Sie ein Netzwerk manuell eintragen wollen. Um die Zeilen kor-

rekt füllen zu können, benötigen Sie die üblichen Angaben. Dazu gehören die Art der Verschlüsselung sowie die notwendigen Schlüssel. Wenn Sie die Einträge vorgenommen haben, drücken Sie auf „Add“. Danach ist die Netzwerkverbindung bekannt und wird in die Liste des Programms wpa_gui aufgenommen. Netzwerkverbindungen, die sich nicht zu erkennen geben, erreichen Sie mittels „Add“ und „Manage Networks“. Spätestens mit funktionierendem WLAN haben Sie einen tollen kleinen Computer, der sich vor typischen Netbooks nicht zu verstecken braucht. Fazit: Ja, es ist möglich, mit dem Raspberry Pi komfortabel zu arbeiten. Schnell etwas im Internet nachschlagen oder den einen oder anderen Text zu bearbeiten, das beherrscht der kleine Computer allemal, und das zu einem unschlagbar günstigen Preis. Leistungswunder dürfen Sie von dem kleinen Rechner aber nicht erwarten.

49

Raspberry Pi / Wetterstation

Raspberry Pi als Wetterstation

Quelle: airpi.es

Seine kleinen Abmessungen und die Flexibilität der angebotenen Linux-Derivate machen den Raspberry Pi zu einer soliden Basis für eine Wetterstation. Wir stellen Ihnen zwei mögliche Ansätze vor. Von Stephan Lamprecht

Im Elektrohandel und in Baumärkten können Sie zwischen einer ganzen Reihe von Wetterstationen der unterschiedlichsten Ausprägungen wählen. Die verschiedenen Modelle arbeiten alle nach dem gleichen Funktionsprinzip. Eine Reihe von Sensoren übertragen die Messergebnisse drahtlos an die Basisstation. Diese zeigt dann automatisiert die Ergebnisse der verschiedenen Sensoren und meist auch die jeweils gemessenen Maximal- und Minimalwerte. Üblicherweise ist das dann auch bereits der gesamte Funktionsumfang. Wer die Wetterdaten über einen längeren Zeitraum auswerten möchte, hat nur selten die Möglichkeit dazu. Aufpassen müssen Sie beim Kauf auch, wenn Sie an mehreren Orten Daten erheben wollen. Denn zusätzliche Empfänger sind häufig übermäßig teuer. Apropos Empfänger: Temperatur und Luftfeuchte gehören zum Standard. Die Messung der Windgeschwindigkeit oder auch Niederschlagsmenge sind dann wieder den teureren Stationen vorbehalten. Der Raspberry Pi bringt alle Voraussetzungen für die Kernkomponente einer Wetterstation mit.

50

Air Pi: Umweltdaten erfassen und veröffentlichen Das Projekt Air Pi (http://airpi.es) hat gleich aus mehreren Gründen für einiges Aufsehen gesorgt. Zum Einen, weil es einigen britischen Schülern initiiert wurde. Zum Zweiten, weil die Grundausstattung zuerst für knapp 78 Euro ohne den Raspberry angeboten wurde, auch wenn dieser Preis inzwischen nicht mehr gehalten werden kann. Vor allen Dingen aber deshalb, weil die vorgestellte Lösung nahezu alle Daten der Atmosphäre messen und protokollieren kann. Eine Liste der erforderlichen Komponenten inklusive Bauanleitung und Bezugsquellen finden Sie auf http://airpi.es. Demnächst soll auch ein kompletter Bausatz über die Website angeboten werden. Zur Zeit werden hier aber nur Vorbestellungen entgegengenommen. Der Preis für alle Komponenten zusammen soll bei umgerechnet etwa 110 Euro liegen. Dazu kommen dan noch die Kosten für den Raspberry Pi von etwa 35 Euro. Um Air Pi zu nutzen und zusammenzubauen, sollten Sie sich selbst als fortgeschrittener

Bastler einstufen. Außerdem brauchen Sie auch eine Portion Geduld. Denn bis Sie alle notwendigen Teile besorgt haben, dauert es schon ein paar Tage. Und Sie müssen in der Lage sein, Schaltpläne lesen zu können, und auch der Umgang mit dem Lötkolben darf Ihnen keine besonderen Schwierigkeiten bereiten. Air Pi misst bei Nutzung aller Boards und angeschlossenen Sensoren nicht nur die Lufttemperatur, sondern auch die Luftfeuchtigkeit, den Anteil an CO2 und Stickstoff in der Luft sowie die UV-Strahlung. Gerade diese vielen unterschiedlichen Parameter, die gemessen und protokolliert werden, erweitern das Einsatzgebiet über eine Wetterstation hinaus. Denn die Daten lassen auch Rückschlüsse über das Raumklima in den eigenen vier Wänden zu. Aipi verwendet den Raspberry Pi als zentrales Element. Die einzelnen Sensoren übermitteln die Messwerte unmittelbar an das Gerät. Zusätzliche Platinen müssen mit der zentralen Einheit verbunden werden, dabei soll das System aber trotzdem klein und handlich bleiben. Deutlich einfacher wird es, wenn der Ein-Pla-

Sonderheft Hacks 3/2014

PC-WELT

Quelle: kompf.de

Quelle: kompf.de

Raspberry Pi / Wetterstation

Mit dem Raspberry Pi erfasstee Daten werden für eine Langzeitaufzeichnung in eine Datenbankdatei geschrieben. Sie lassen sich dann mit einem Programm wie Rrdtool grafisch aufbereiten. tinen-Rechner lediglich als Datensammler und für die Auswertungen genutzt wird, die Daten selbst aber von einzelnen Empfängern erhoben und dann drahtlos an eine Steuereinheit übermittelt werden. Wer möchte, kann seine Messergebnisse auch in Echtzeit auf http:// airpi.es veröffentlichen.

USB-Wetterdaten-Empfänger nutzen In Elektronikmärkten und auch deren OnlineShops finden Sie Funkempfänger, die sich per USB-Anschluss mit einem PC verbinden lassen (à Kasten „Mehr Infos zu den Wetterstationen“). Die Empfänger erhalten die Daten per Funk von Sensoren und übermitteln diese dann an den PC. Nehmen Sie die Sensoren und den Empfänger entsprechend der mitgelieferten Dokumentationen in Betrieb. Verbinden Sie dann den Empfänger per USB-Kabel mit dem Raspberry Pi. Versorgen Sie den kleinen Computer anschließend mit Strom, und lassen Sie das Betriebssystem starten. Die nachfolgenden Kommandos beziehen sich auf Raspbian, das alle Grundlagen für den Betrieb mitbringt. Loggen Sie sich per SSH auf dem Raspberry ein oder schließen einen Monitor an, damit Sie sich als Benutzer auf dem Rechner anmelden können. Öffnen Sie eine Konsole, und geben Sie dort das Kommando ein: sudo dmesg Sie erhalten damit eine Rückmeldung der Geräte, die am USB-Port ermittelt worden sind. Suchen Sie dort nach einem Eintrag, der auf den angeschlossenen Funkempfänger hindeutet, zum Beispiel „Wetterdatenempfänger“ oder den Herstellernamen. Falls Sie hier keinen

PC-WELT

Sonderheft Hacks 3/2014

Eintrag finden, unterbrechen Sie die Verbindung erneut und stöpseln das Gerät erneut an, um zu sehen, ob es dann zu einer Meldung kommt. Schauen Sie auf den Seiten des Herstellers nach, ob es dort Hinweise gibt oder vielleicht sogar einen Treiber. Allerdings sollten tiefergehende Probleme eher die Ausnahme sein, da rein technisch ein solcher Empfänger recht einfach konstruiert ist. Sofern das Kommando zeigt, dass die Verbindung mit dem Raspberry funktioniert, brauchen Sie ein Programm, das in der Lage ist, die übertragenen Daten auszulesen. Hier bietet sich Socat an (www.dest-unreach.org/socat). Es fragt die Schnittstellen ab und gibt auf der Konsole die Ergebnisse aus. Installieren Sie die Software mit: sudo apt-get install socat Um an die Messwerte zu gelangen, müssen Sie die Schnittstelle abfragen.

Ein USB-Wetterdaten-Empfänger wie der abgebildete USB-WDE1 erhält seine Daten per Funk von einem Wettersensor, beispielsweise dem Funk-Außensensor ASH 2200 (rechts).

sudo socat /dev/ttyUSB1,b9600 STDOUT In diesem Beispiel ist der Empfänger mit der Schnittstelle USB1 verbunden. Als Rückmeldung erhalten Sie zum Beispiel: $1;1;;;0,9;;;17,6;;;;;75;;;59;;;;;;;;;0 Wenn auf den ersten Blick zunächst nichts zu passieren scheint, ist das kein Grund zur Besorgnis. Das Abfragen per Schnittstelle kann bis zur ersten Übertragung durchaus ein paar Minuten dauern. Das Ergebnis sieht auf den ersten Blick wenig aufregend aus, liefert aber die Grundlage für die weiteren Schritte. In Abhängigkeit der Software, mit der Sie die Daten auswerten oder aufbereiten wollen (à Kasten), wird der Funktionsaufruf in ein Script gepackt oder die Ausgabe in eine andere Datei umgeleitet, die sich dann automatisiert importieren lässt.

Mehr Infos zu den Wetterstationen Viele Anwender haben gute Erfahrungen mit dem Funkempfänger aus dem Hause ELV gemacht (USBWetterdaten-Empfänger USB-WDE1). Die Grundeinheit kostet weniger als 30 Euro, Außen- und Innensensoren liegen zwischen 30 und 50 Euro. Damit ist die gesamte Station dann teurer als Air Pi, aber auch viel schneller einsatzbereit. Eine Möglichkeit, aus den übermittelten Daten grafische Auswertungen zu schaffen, ist der Einsatz von Rrdtool (www.mrtg.org/rrdtool). Für Debian wird ein Binärpaket angeboten, das Sie also schnell installieren können. Auf der Seite des Projekts finden Sie eine Reihe von Tutorials, mit deren Hilfe Sie Schritt für Schritt lernen, wie Sie eine Datenbank anlegen und die Messwerte in regelmäßigen Abständen abfragen. Zur Auswertung der Messungen mit Air Pi und zur Steuerung benötigen Sie eine spezielle Software. Deren Quellcode wurde auf Github veröffentlicht und kann über https://github.com/tomhartley/AirPi eingesehen und heruntergeladen werden.

51

Raspberry Pi / Funksteckdosen

Funksteckdosen: Schalten & walten

Quelle: Thomas Springer

Ein Funkmodul für wenige Euro macht den Raspberry Pi zur heimischen Steuerzentrale, die über das Haus verteilte Funksteckdosen schaltet – bei Bedarf auch über das Netzwerk und mit dem Smartphone.

Von Thomas Springer

Funksteckdosen sind im Dreier- oder Sechserpack samt Fernbedienung in fast jedem Baumarkt erhältlich, oft schon für wenige Euro. Für sich alleine sind die Steckdosen begrenzt interessant: Die mitgelieferte Fernbedienung ist nie zur Hand, wenn man Sie braucht, und ist so klein, dass sie gerne zwischen den Sofaritzen verschwindet. Mit einem günstigen Sender und ein wenig Software machen Sie den Raspberry zur Schaltzentrale, die Steckdosen per Browser, Makro oder Handy von überall her steuert. Was Sie dafür benötigen, ist ein Funkmodul mit 433 MHz. Ein Set mit Sender und Empfänger kostet bei Ebay oder Amazon zwischen 1 Euro (aus China) und rund 4 Euro (aus Deutschland) und ist über eine Suche nach „RF Link Arduino“ schnell zu finden. Die Sets werden in erster Linie für den Arduino-MikroController verkauft, funktionieren aber mit einer entsprechenden Software-Bibliothek auch am Raspberry Pi.

52

Auswahl: Nicht jede Funksteckdose ist geeignet Funksteckdosen gibt es inzwischen nicht nur optisch, sondern auch technisch in großer Vielfalt. Fast alle Arten lassen sich auch mit dem Raspberry steuern. Am einfachsten und zuverlässigsten funktionieren Steckdosen, die sich über zehn Dipschalter einstellen lassen, die hinter einer kleinen Klappe mit kleiner Kreuzschlitzschraube verborgen sind. Steckdosen ohne Dipschalter, insbesondere die aktuell oft als Billigware verkauften selbstlernenden Dosen, lassen sich über den Raspberry oft nur nach längeren Versuchen ansteuern und erfordern je nach Hersteller Software-Anpassungen auf dem Raspberry Pi. Ein weiterer Nachteil der Billigware ist, dass viele Modelle nach einem Stromausfall oder auch nur einem Wechsel der Steckdose ihre Codierung vergessen und dann neu eingelernt werden müssen. Wir raten deshalb deshalb zu

Steckdosenmodellen, das sich mit zehn Dipschaltern programmieren lassen. Je nach Hersteller sind die Dipschalter mit 1 bis 10 oder mit 1 bis 5 und A bis D beschriftet – beide Versionen sind gleichermaßen nutzbar. Aktuell kostet ein Dreierset etwa bei Online-Versandhäusern rund 10 Euro (Beispiel: http://www. pollin.de, Artikelnummer 550666). Zunächst sollten Sie Fernbedienung und Steckdosen aufeinander abstimmen. Dazu wird an den fünf Dipschaltern der Fernbedienung und den linken fünf Dipschaltern der Steckdosen der Systemcode eingestellt, über den die Dosen erreichbar sind. Vorsicht: Die Verwendung von 00000 oder 11111 als Systemcode bietet gute Chancen, dass einer Ihrer Nachbarn denselben Code verwendet und damit unter Umständen Ihre Steckdosen schaltet. Funktioniert die Steckdose mit der Fernbedienung, kann die Einrichtung des Raspberry Pi als Schaltzentrale beginnen.

Sonderheft Hacks 3/2014

PC-WELT

Drei Kabel sollt ihr sein: Für die Ansteuerung des Senders zur Übertragung der Befehle an die Funksteckdosen genügt eine einzige Datenleitung des Raspberry Pi plus Spannungsversorgung..

Quelle: Thomas Springer

Quelle: Thomas Springer

Raspberry Pi / Funksteckdosen

Dankbares Einstiegsmodell: Die verbreitete Funksteckdosen-Variante mit zehn Dipschaltern ist das am einfachsten anzusteuernde und empfehlenswerte Modell zur Hausautomatisierung.

Prototyp: Schaltung am Breadboard entwerfen Zunächst muss der Sender mit dem Raspberry verbunden werden. Am einfachsten geht das über ein kleines Breadboard (Steckbrett) und einige Steckkabel. In den meisten ElektronikBastelsets sind nur beidseitig männliche Steckkabel dabei. Je nachdem, ob Sie ein Steckbrett verwenden oder den Empfänger direkt anschließen, brauchen Sie aber weiblich/männlich oder weiblich/weiblich. Tipp: Die meisten Steckkabel lassen sich durch Abknipsen des metallenen Aderendes in ein weibliches Ende improvisieren, das sich vorsichtig auf einen PIN-Anschluss aufstecken lässt. Den Sender stecken Sie mit seinen drei oder vier Pins am besten direkt quer auf das Steckbrett. Verbinden Sie die dann VCC (rot) mit Pin 2 (5 Volt) und Pin 6 (Erdung) des Raspberry Pis. Die Datenleitung zum RF-Sender erwarten fast alle Programme zur Steckdosensteuerung an Pin 11 (GPIO 17) des Raspberry. Die Antenne wird bei einigen Sendern über einen Pin geführt, bei anderen ist ein Anschluss auf dem Board. Die passende Länge errechnet sich über die Faustformel (Lichtgeschwindigkeit/Frequenz)/4. Eine optimale Länge für 433,92 MHz wäre 17,2 cm – in der Praxis tut es aber ein beliebiges Drahtstück mit einer Länge um die 17 cm, das mit dem Antennen-Pin verbunden oder mit auf der Platine eingehakt oder verlötet wird.

Wiring Pi: Vom Mikro-Controller Arduino inspiriert Um den Raspberry Pi mit einem RF-Sender zu verbinden, gibt es inzwischen eine Vielzahl von Programmen. So gut wie alle bauen auf der GPIO-Bibliothek von Gordon Henderson auf, der die Funktionalität der Arduino-Bibliothek „Wiring“ auf den Raspberry portiert hat. Die Bibliothek wird am einfachsten direkt über Git installiert (drei Zeilen):

PC-WELT

Sonderheft Hacks 3/2014

sudo apt-get install build-essential git-core cd ~ && git clone git://git. drogon.net/wiringPi cd wiringPi && ./build Damit ist die Grundlage zur Nutzung der GPIOPorts geschaffen. Ein einfaches, aber leistungsfähiges Projekt zur Ansteuerung von Funksteckdosen ist unter dem Namen „Raspberry Remote“ veröffentlicht. Auch hier können wir die Quelltextverwaltung Git zum Herunterladen des Programms verwenden (zwei Zeilen): cd ~ && git clone git://github. com/xkonni/raspberry-remote.git cd raspberry-remote Raspberry Remote besteht aus einem Kommandozeilenprogramm zum Schalten der Steckdosen sowie einem Serverteil, der auf einem frei wählbaren Port im Netz zuhört und Steckdosen auf Zuruf schaltet. Das Kommandozeilenprogramm wird mit sudo make send kompiliert. Mit „send“ lassen sich beliebige Steckdosen aus- und anschalten. Um eine Steckdose zu schalten, rufen Sie das Programm mit folgenden Parametern auf: sudo ./send Die Codes ergeben sich aus der Stellung der Dipschalter. Der fünfstellige Systemcode entspricht der Stellung der ersten Dipschalter an der Steckdose: 0 für aus, 1 für an. Stehen die-

se Schalter alle auf ein, wäre der Systemcode die 11111. Stehen nur der erste und der letzte Schalter auf 1, wäre der Systemcode 10001. Die Steckdosennummer ergibt sich aus den rechten fünf Dipschaltern, von denen nur einer auf 1 stehen darf. Die möglichen Gerätecodes sind 1,2,3,4 und 5, je nachdem, welcher der fünf rechten Dipschalter auf „on“ steht. Es darf nur einer der Schalter auf „on“ stehen. Der dritte Parameter gibt an, ob die Funksteckdose an („1“) oder ausgeschaltet werden soll („0“). Ein Beispielaufruf zum Einschalten der Dose sieht dann so aus: sudo ./send 10001 1 1 Damit sollte, sofern die Dipschalter entsprechend gesetzt sind, die Steckdose angehen. Der sendende Raspberry hat übrigens keine Möglichkeit zu erkennen, ob und wenn ja was wirklich passiert ist: Es gibt keinen Rückkanal, über den die Funksteckdose Vollzug oder eventuelle Fehler melden könnte. Die maximale Zahl schaltbarer Steckdosen ist 160. Sie ergibt sich aus den möglichen Dipschalterstellungen nach der simplen Formel: (2*2*2*2*2)*5 oder einfacher 2 hoch 5*5.

Schalten übers Netz: Automatisch per Script Die Steckdosen über eine SSH-Konsole schalten zu können ist ein nettes Spielzeug, für eine echte Anwendung aber etwas unpraktisch – weder kann man übers Netz schalten noch

Pilight Zusätzliche Funktionen für Funksteckdosen Neben dem hier vorgestellten Raspberry Remote gibt es eine ganze Reihe von Paketen, die teils eine Vielzahl verschiedener Steckdosentypen schalten, Unterstützung für Dimmer bieten oder eine komplexere Weboberfläche bieten. Wer einen Steckertyp ohne Dipschalter verwenden will, hat mit dem Paket „Pilight“ (http://www.pilight.org) eine komplexe und vielseitige Umgebung, die eine breite HardwareUnterstützung und in Verbindung mit einem Empfängermodul sogar einen Lernmodus bietet.

53

Raspberry Pi / Funksteckdosen

Belegung der GPIO-Pins: Diese hat sich zwischen den Raspberry-Pi-Revisionen und Versionen geringfügig geändert. Der hier vorgestellte Aufbau funktioniert aber mit allen Versionen des Raspberry Pi.

Schalten der Funksteckdosen über den Browser: Eine simple Weboberfläche zum Ein- und Ausschalten von Funksteckdosen ist auf dem Raspberry Pi in wenigen Minuten installiert. kann man externe Geräte einbinden. Interessanter wird es, wenn man den in Rasberry Remote enthaltenen Server startet. Dazu müssen Sie den Quellcode etwas anpassen. Verwenden Sie den Befehl nano ~/raspberry-re mote/daemon.cpp und ändern Sie die Zeile „nPlugs=10“ zu „nPlugs=1110“ Standardmäßig ist der Server im Netzwerk über den Port 11337 erreichbar. Wem Sie dies ändern wollen, tragen Sie eine andere Nummer hinter „Port“ im übersichtlichen Quellcode von daemon.h ein. Mit sudo make daemon wird der Hintergrundprozess (Daemon) dann kompiliert. Mit sudo ./daemon >/dev/null & starten Sie den Server als Hintergrundprozess. Bedient wird der Dämon über eine simple TCP-Netzwerkverbindung, zum Beispiel über Netcat oder ähnliche Programme. Um beispielsweise eine Steckdose anzuschalten, geben Sie auf der Kommandozeile an: echo -en "Codierung"|nc -w 1 Als IP geben Sie die IP-Nummer ihres Raspberry Pi an und als Port den TCP-Port, auf den der Server lauscht. „Codierung“ besteht aus dem Systemcode wie bei send, gefolgt von „0“ und der Dosennummer. In unserem Fall wäre das etwa echo -en "1000101"|nc -w 1 192.168.178.25 11337 wobei der Parameter „-w“ dafür sorgt, dass Netcat die Verbindung zum Dämon nach einer Sekunde selbsttätig wieder trennt. Damit ist die Funksteckdose also schon mal am Netz und kann von beliebigen Applikationen ein- und ausgeschaltet werden, sofern diese TCP-Socket-Verbindungen aufbauen können. Sinnvoll ist diese Art der Ansteuerung in erster Linie für

54

Script-Sprachen wie Python oder Perl, die man auf diese Weise zum Steuern von Funksteckdosen über das lokale Netzwerk oder das Internet verwendet. Es besteht jedoch ein gewisses Risiko, wenn man den Port des Dämons für das gesamte Internet freigibt. Ein Missbrauch könnte unter Umständen das Raspberry-PiSystem samt dem dahinterliegenden Netzwerk für einen Angreifer offenlegen. Wenn Sie das System also in einem fremden Netz oder dem Internet über TCP-Sockets erreichbar machen, sollten Sie unbedingt den Zugriff über IP-Tables oder ein VPN auf autorisierte Kommunikationspartner beschränken.

Universelles Schalten: Ein und Aus per Browser Die Socket-Verbindung des Dämons bringt die Funksteckdosen ans Netz, die Bedienung erfordert aber immer noch ein wenig Programmierung oder den Aufruf hässlicher Befehlszeilen auf der Konsole. Raspberry Remote hat auch hier Abhilfe: Im Verzeichnis „./webinterface“ finden Sie eine Weboberfläche, mit der man die Funksteckdosen in den Browser bringt. Die Weboberfläche benötigt einen Webserver wie Apache und PHP. Dies lässt sich mit dem Kommando sudo apt-get install apache2 php5 installieren, falls noch nicht vorhanden. Bringen Sie dann das Script-Verzeichnis in das Wurzelverzeichnis des Webservers: mv ~/raspberry-remote/ webinterface/* /var/www/funk und passen Sie dort die Konfigurationsdatei an: nano /var/www/funk/config.php Wenn der Dämon auf dem selben Raspberry Pi läuft wie der Webserver, setzen Sie $target=$_SERVER['SERVER_ADDR']

Laufen Webserver und Dämon auf verschiedenen Rechnern, geben Sie hier die IP-Nummer des Dämons an, den der Webserver ansprechen soll. Die Variable „$port“ setzen Sie auf die Portnummer, unter welcher der Dämon erreichbar ist. Unter „$config“ können Sie in einem Array beliebig viele Schaltaktoren definieren. Sie geben wie gehabt als Parameter den Systemcode, die Dosennummer und eine frei wählbare Textbeschreibung für diese Dose an. Nun können Sie über den Browser unter http:///funk das Kommando-Interface zum Schalten aufrufen. Mit der Weboberfläche ergibt sich die Möglichkeit, das Schalten auf anderen, tastaturlosen Geräten wie etwa einem Smartphone oder einem Tablet zu erledigen. Sie können dafür einfach ein Lesezeichen auf dem Desktop des Gerätes hinterlegen. Für kleinere Displays können Größe und Layout der Schalterquadrate im Quellcode leicht verändert werden, so dass bei Bedarf auch mehr Geräte auf das Handydisplay passen. Auch über das Webinterface kann nicht nur per Fingerzeig oder Mausklick, sondern auch ganz direkt geschaltet werden. Geben Sie dafür einfach gleich beim Aufruf die Parameter in der URL an. Ein Beispiel: http:///funk/index.php?group= 10001&switch=01&action=1 Die Parameter sind dieselben wie oben, „action=1“ heißt, dass die Steckdose eingeschaltet wird. Dafür gibt es dafür viele nützliche Anwendungen: So können Sie etwa den Strom an Peripheriegeräten wie Scanner, Drucker oder externer Festplatte einschalten, indem Sie die URL in einer Verknüpfung ablegen Tipp: Eine alternative Methode mit AndroidApp und Sprachsteuerung ist unter www.pcwelt. de/w89l beschrieben.

Sonderheft Hacks 3/2014

PC-WELT

f in A ll P C de e S -W n S o n el ie der t M au he a g c h f te a z in in de -A r pp Windows, WLAN, Sicherheit, Hardware

Der Trick-Guide

So geht's:

Jetzt am Kiosk oder online bestellen!

12,90 €

Leseproben, Infos und Bestellmöglichkeit unter:

www.pcwelt.de/sonderheft-windows

Telefon: 0711 / 72 52 277 E-Mail: [email protected] PC-WELT erscheint im Verlag IDG Tech Media GmbH, Lyonel-Feininger-Str. 26, 80807 München, Registergericht München, HRB 99187, Geschäftsführer: York von Heimburg. Die Kundenbetreuung erfolgt durch den PC-WELT Kundenservice, ZENIT Pressevertrieb GmbH, Postfach 810580, 70522 Stuttgart, Geschäftsführer: Joachim John

Raspberry Pi / Bildschirm

Displays am Raspberry Pi Quelle: Ladyada; Lizenz: Creative Commons

Ein Bild sagt mehr: Neben Bildschirmen und TV-Geräten mit HMDI- oder Composite-Video-Eingang versteht sich das Rasp­ berry Pi auch auf die Ansteuerung von kleinen Touchscreens und textorientierten LCDs.

Von David Wolski

Wer den Raspberry Pi zum ersten Mal in Betrieb nimmt und das ausgewählte LinuxSystem von der vorbereiteten SD-Karte startet, wird meist einen herkömmlichen Bildschirm für die ersten Schritte verwenden. Die Platine ist mit HDMI- und Composite-Video-Ausgang (S-Video) gut bestückt. Mit Composite Video kommen auch noch die einfachsten TV-Geräte zurecht – nicht ideal und hochauflösend, aber zumindest zur Konfiguration brauchbar. Zusammen mit USB-Tastatur und Maus an der Platine verwandelt sich der Raspberry Pi in einen PC-ähnlichen Mini-Computer.

Videoausgang: Günstige Minibildschirme Dieses PC-Setup ist anfangs äußerst nützlich, um das Raspberry Pi zu konfigurieren und Linux zu erforschen. Beim Einsatz des Raspberry Pi als besseren Mikro-Controller oder MiniServer ist ein Bildschirm und eine grafische

56

Oberfläche sowieso nebensächlich, da sich das Gerät ganz in Linux-Manier auch gut über das SSH-Protokoll über das Netzwerk warten und administrieren lässt. Trotzdem gibt es Situationen, in welchen ein Monitor – und sei es auch nur ein mickriges Video-Display mit niedriger Auflösung – nützlich ist. Etwa zum Debuggen, zur Überprüfung der Boot-Meldungen und als Terminal für Raspberry-Geräte, die nicht im Netzwerk hängen. Kleine HDMI-Monitore sind teuer, da sie meist als professionelle Feldmonitore für Videokameras und zur Bildkontrolle dienen. Diese Geräte für den professionellen Einsatz rangieren zwischen 180 und 300 Euro. Die billigste und einfachste Möglichkeit, ein Raspberry mit einem kleinen Monitor zu verbinden, bieten deshalb der Composite-Video-Ausgang und Kleinbildschirme um 4 Inch. Diese werden üblicherweise in Kraftfahrzeugen für Rückfahrkameras verwendet und sind Massenware. Die

Stromversorgung muss über ein externes 12-VNetzteil (DC) erfolgen. Die Bildqualität ist nicht überwältigend, aber fürs Debugging und für die Textkonsole brauchbar. Ein Gerät, das mit dem Raspberry Pi gut funktioniert, ist der Tao­ tronics TT-CM05 (http://amzn.to/1ffbHZz) zu knapp 28 Euro, ohne Netzteil.

Spezialbildschirme: Das Serial Peripheral Interface Neben den offensichtlichen Ausgängen mit Ports auf der Platine verfügt der Raspberry noch über zwei weitere Interfaces, die sich zum Ansteuern von Bildschirmen nutzen lassen: Das momentan noch nicht dokumentierte und brachliegende DSI, das als FlachbandkabelAnschluss auf Platinen der Revision 2 zu sehen und dort mit S2 beschriftet ist, sowie ein Serial Peripheral Interface Bus (SPI), der über die Stiftleiste der GPIO-Pins verwendet werden kann. Anders als DSI ist der SPI-Bus voll doku-

Sonderheft Hacks 3/2014

PC-WELT

Quelle: Adafruit Industries

Raspberry Pi / Bildschirm

Touchscreen mit vier Inch: Der Bausatz von Ada­fruit Industries ist auf den Raspberry Pi zugeschnitten und läuft mit einem angepassten Kernel als Eingabe- und Ausgabegerät unter Raspbian.

LCD mit 16 mal 2 Zeichen: Die Ansteuerung des Bausatzes von Adafruit Industries gelingt über das I2C-Interface, das über die GPIO-Pins der Stiftleiste des Raspberry Pi zur Verfügung steht.

mentiert, und es gibt bereits Mini-Displays, die sich darüber nutzen lassen. Ein Beispiel ist der resistive Touchscreen „PiTFT“ mit 2,8 Inch von Adafruit Industries, der sich auf der LinuxDistribution Raspbian mit einem gepatchten Kernel als Mausersatz nutzen lässt. Der Touchscreen wird als Bausatz geliefert und ist über Amazon Deutschland für knapp 50 Euro zu haben (http://amzn.to/1fffQgg). Es handelt sich um ein separates Board in der Größe des Raspberry Pi, das über verlängerte Stiftleisten direkt auf die GPIO-Pins gesteckt werden kann. Der Vorteil dieser Lösung ist, dass sie in einer Bau- und Konfigurationsanleitung von der Hardware bis zur Software minutiös in Englisch dokumentiert ist (www. pcwelt.de/4nee).

Recycling: Alte VGA-Displays am Raspberry Pi

Textausgabe: LCD-Modul statt Bildschirm Wenn die Platine des Raspberry Pi in einem Projekt zur Automatisierung, Messung oder für einen unbeaufsichtigten Netzwerk-Server verwendet wird, wäre ein großes Farbdisplay schlicht Overkill. Mit einem kleinen, monochromen, textorientierten LCD-Modul ist möglich, Statusmeldungen auszugeben, ohne dabei einen Bildschirm zu verwenden. Die Lösung ist günstig und platzsparend und dort ausreichend, wo es um Messwerte und Debug-Codes geht, die per Python-Script über zwei I2C-Pins an das Display gesendet werden können. Ein LCD setzt also immer ein paar Zeilen eigenen Code voraus, um die gewünschten Daten dort zu sehen. Ein guter, wenn auch nicht unbedingt preisgünstiger Einstiegspunkt ist auch wieder ein Bausatz von Adafruit Industries: Für 25 Euro gibt es bei Amazon Deutschland eine LCD-Platine speziell für den Raspberry Pi mit 16 x 2 Zeichen (http://amzn.to/1dyFidz). Zusammenbau und Inbetriebnahme erläutert die Seite www.pcwelt.de/3eqr.

PC-WELT

Sonderheft Hacks 3/2014

Ältere LCD-Monitore für den PC haben weder DVI-D noch HDMI als Eingang, sondern den inzwischen fast vom Markt verschwunden VGAEingang per 15-adrigen D-SUB-Stecker. Auch wenn es für viele Bastelprojekte nützlich wäre, einen ausrangierten VGA-Monitor mit diesem Anschluss für den Raspberry Pi abzustellen, so muss der Mini-Computer hier passen. Es hilft auch kein Adapterkabel, da HDMI ein digitales Signal für Audio/Video liefert und VGA ein analoger Anschluss ist. Was es allerdings gibt, sind Konverter-Boxen mit eigenem Netzteil, um HDMI nach VGA umzuwandeln. Die Investition dafür ist größer als bei einem simplen Adapterkabel, allerdings reißen Konverter-Boxen auch kein Loch ins Projektbudget.

Konverter-Box: Ein HDMI-zu-VGA-Konverter mit eigener Stromversorgung kann den Raspberry Pi mit älteren Monitoren und auch Beamern verbinden, die nur einen analogen VGA-Eingang haben.

Die Unterscheidung von aktiven KonverterBoxen zu Boxen mit externer Stromversorgung ist jedoch wichtig: Aktive Konverter ziehen Strom aus der HDMI-Buchse, die über die HDMI-Spezifikation von 50 mA hinaus geht. Der Raspberry Pi verkraftet maximal 200 mA, aber es besteht dann die Gefahr, dass sich die Diode D1 neben dem HDMI-Port auf der Raspberry-Platine verabschiedet. In Frage kommen deshalb nur Konverter mit eigenem Netzteil. Für rund 35 Euro gibt es von Ligawo einen HDMI-zu-VGA-Konverter, der mit dem Raspberry Pi funktioniert (http://amzn. to/1hNYqtg), und erfreulicherweise ist hier auch das benötigte 5-V-Netzteil mit im Lieferumfang enthalten. Das Audiosignal ist separat über eine analoge 3,5-Millimeter-Klinke herausgeführt.

Display-Parameter Auflösung und Features festlegen Wenn ein HDMI-fähiges Ausgabegerät an den Raspberry Pi angeschlossen wird, muss man sich um nichts kümmern: Die Auflösung wird automatisch erkannt, und das Audiosignal wird auch mitgenommen, wenn das Endgerät Audio-Features unterstützt. Anders sieht es aus, wenn am HDMI- oder Video-Composite-Ausgang des Raspberry Pi ein Display hängt, das vom Standard abweicht, oder wenn eine Konverter-Box verwendet wird. In diesen Fällen ist es oft nötig, die Anzeigeparameter des Raspberry Pi manuell anzupassen. Diese Parameter werden in der Konfigurationsdatei „/boot/config.txt“ festgelegt und beim Systemboot bereits ausgewertet. Die Datei lässt sich auf zwei Wegen bearbeiten: Entweder aus dem laufenden System auf dem Raspberry Pi heraus, mit einem Texteditor wie Nano in der Kommandozeile mittels sudo nano /boot/config.txt Oder Sie bearbeiten die Datei von Windows und Mac-OS X aus, denn „config.txt“ liegt auch auf dem sichtbaren Teil des Dateisystems auf der SD-Karte, die das Betriebssystem für den Raspberry Pi beherbergt. Eine Liste der Parameter für die HDMI- und Videokonfiguration liefert http://elinux.org/ Rpiconfig#Video. Bei problematischen HDMI-Displays hat es sich bewährt, immer erst mit dem Parameter „hdmi_safe=1“ zu booten. Eine vollständig dokumentierte Version der „config.txt“ gibt es unter http://elinux.org/images/c/ca/Raspi_documented_config.txt. Diese Parameter sind auch dann wichtig, um eine native HDMI-Auflösung und Bildwiederholfrequenz manuell zu setzen, falls diese nicht automatisch erkannt wird.

57

Raspberry Pi / Projekte

Quelle: University of Southampton

Projekte rund um den Raspberry Pi

Der erschwingliche und wandlungsfähige Ein-Platinen-PC hat eine Do-ityourself-Revolution losgetreten. Außergewöhnliche Projekte zeigen nützliche, exotische und abgehobene Anwendungen. Von David Wolski

Über den rein akademischen und didaktischen Bereich hinaus fand der Raspberry Pi seit seiner Vorstellung vor zwei Jahren schnell eine riesige Fan-Gemeinde. Für Elektronikbastler und Linux-Anwender stellt das Gerät genau das passende Puzzleteil für die Realisierung eigener Projekte dar. Über Breakout-Boards, welche die Pins des Raspberry Pi auf eine separate, bestückbare Platine herausführen, lassen sich auch ambitionierte Vorha-

58

ben umsetzen. Dort, wo ein ausgewachsenes Betriebssystem mit mehreren Programmiersprachen und Bildschirmausgabe gebraucht wird und ein programmierbarer Mikro-Controller wie der ebenfalls sehr erfolgreiche Arduino mit ihren Möglichkeiten eine Spur zu karg wären, hat sich der Raspberry Pi eine Nische erobert und eine echte Mini-PC-Revolution ausgelöst. Neben den bekannten Verwendungsmöglichkeiten als Player und winzi-

ger Linux-Server haben findige Bastler und Elektronikspezialisten geniale, kuriose oder schlicht extreme und abgehobene Einsatzbereiche gefunden.

USB-Scanner: Netzwerkfähigkeit ergänzen Scanner mit Netzwerkanschluss für die automatisierte Zustellung digitalisierter Dokumente an eine Mailadresse oder an Ordner auf

Sonderheft Hacks 3/2014

PC-WELT

Raspberry Pi / Projekte

Quelle: http://brewpi.com

Quelle: Eduardo Luís (http://eduardoluis.com)

Per Kopfdruck scannen und verschicken: Diese Scanner-Steuerung über das Raspberry Pi nimmt Dokumente über den USB-Port entgegen und leitet sie per E-Mail weiter.

Hobby-Brauerei: Ein Mikro-Controller behält die Sensoren der Fermentierung im Blick, und ein Raspberry Pi sorgt für die richtige Temperatur während des Brauens.

Brew Pi: Automatisiert Bier brauen Ein ausgefallenes Projekt, das mit Hilfe des Raspberry Pi realisiert wurde, ist die BrauVorrichtung Brew Pi: Es handelt sich um einen Aufbau, um für den Eigenbedarf Bier zu brauen und dabei den Fermentierungsprozess in einer streng temperaturgeregelten Umgebung auf 0,1 Grad genau zu kontrollieren. Brew Pi besteht aus einer Kombination von einem Arduino-Mikro-Controller, einem Raspberry Pi

PC-WELT

Sonderheft Hacks 3/2014

und mehreren Sensoren. Der Braubehälter befindet sich in einem modifizierten Kühlschrank mit regelbarer Temperatur. Ein LCD gibt die aktuellen Temperaturen aus, die zur Auswertung auch aufgezeichnet werden. Der Raspberry Pi dient hier als Kommandozentrale, zur Aufzeichnung der Logfiles und zur Ausgabe des Fortschritts über einen Webserver, währen der Arduino die Temperatursensoren ausliest und Heizung sowie Kühlaggregat steuert. Die Temperaturkontrolle läuft unabhängig nur auf dem Arduino, während der Raspberry

Pi zur Änderung und Überwachung des Brauvorgangs dient. Auf http://brewpi.com haben die Hobby-Braumeister hinter dem Projekt einen Webshop für Boards zum Raspberry Pi und Arduino aufgemacht. Ein englischsprachiges Wiki unter http://wiki.brewpi.com liefert dazu Teilelisten, Anleitungen mit Bauplänen und Vorschläge von erfolgreichen Anwendern, die ihre BrewPi-Setups vorstellen. Der komplette Aufbau erfordert die Modifikation eines Kühlschranks zum Heizen und Küh-

Brick Pi Schnittstelle zu Lego Mindstorms Mit Mindstorms hat Lego eine Produktserie im Programm, die einen spielerischen Einstieg in das Thema Robotik ermöglicht. Diese Lego-Bausätze bestehen aus Lego-Bausteinen, einem programmierbaren Controller, an den Sensoren und Motoren angeschlossen werden, sowie einer Entwicklungsumgebung für Windows und Mac-OS zur Programmierung über ein visuelles Menüsystem. Lego pflegt Mindstorms seit zehn Jahren und stellte im letzten Jahr vor dem Weihnachtsgeschäft mit EV3 die dritte Generation des Baukastensystems vor. Der Raspberry Pi wird mit dem Zusatzboard Brick Pi zu einem mächtigen, inoffiziellen Ersatz für den Controller von Lego. Brick Pi wurde von der kleinen US-Firma Dexter Industries nach einer erfolgreichen Finanzierungskampagne auf Kickstarter entwickelt und liefert Anschlüsse für bis zu fünf Sensoren und vier Motoren von Lego Mindstorms NXT und EV3. Das Board verbindet sich huckepack mit der Stiftleiste des Raspberry Pi und wird über ein gemeinsames Akku-Pack mit Strom versorgt. Für die Verbindung mit den Lego-Steinen gibt es ein passendes Gehäuse. Der Controller von Lego ist nicht nötig, die Ansteuerung der Lego-Robotik gelingt so allein mit dem Raspberry Pi, und als Programmiersprachen können Python 2, Scratch und C dienen. Die Projektwebseite http://www.dexterindustries.com stellt den Brick Pi und seine Fähigkeiten vor, und eine Preisübersicht zu den verschiedenen Sets gibt es auf http://www.dexterindustries.com/ BrickPi.html. Da beim Versand aus den USA noch Gebühren für den deutschen Zoll fällig werden, ist Amazon Deutschland eine bessere Quelle für den Kauf. Den Brick Pi gibt Lego Mindstorms mit dem Raspberry Pi als Schaltzentrale: Das es dort in der Basic-Variante ab 85 Euro Modul Brickpi vereinigt die Robotik-Plattform von Lego über eine (http://amzn.to/KqWOde). separate Aufsteck-Platine mit dem Raspberry Pi.

59

Quelle: Dexter Industries

einem zentralen Server sind nicht günstig. Diese „Push-Scanner“ sind für den Einsatz in Großraumbüros gedacht und rangieren in der Preisklasse ab 1000 Euro. Für den Hausgebrauch und für kleinere Büros ist das zu viel. Mit einem Raspberry Pi als Scanner-Server können auch gewöhnliche USB-Scanner mit Netzwerkfähigkeiten nachgerüstet werden, wie ein Selbstbauprojekt von Eduardo Luís zeigt. Auf seiner Webseite (www.pcwelt.de/ac4e) skizziert er den Aufbau seiner Scanner-Umrüstung, inklusive Pin-Belegung und den verwendeten Scripts in BASH und Python, um einen Scanner an den Raspberry Pi anzuschließen und einen Scan per Knopfdruck an eine E-Mail-Adresse zu schicken. Der verwendete USB-Scanner muss mit dem Backend „Sane“ kompatibel sein, das unter Linux für die Ansteuerung von Scannern zum Einsatz kommt und damit auch für den Raspberry Pi relevant ist. Als Distribution verwendet dieses Projekt den DebianAbleger Raspbian (auf Heft-DVD). Das eingescannte Bild wird mit Imagemagick konvertiert und mit Sendmail an eine Mailadresse verschickt, wobei sich die BASH- und PythonScripts auch so anpassen lassen, dass ein Scan stattdessen über SSH in ein Verzeichnis auf einem Server im lokalen Netzwerk oder im Internet kopiert wird. Damit die Scripts auf dem Raspberry Pi automatisch nach der Betätigung der separaten Scan-Taste aktiv werden, ist nur eine Ansteuerung einer der Pins auf der Platine nötig, Modifikationen am Scanner selbst entfallen.

Raspberry Pi / Projekte

RPi_USB_Webcams. Wichtig ist dabei, die Webcam an einen aktiven USB-Hub anzuschließen, da der kleine Raspberry die Kamera nicht ausreichend mit Strom versorgen kann.

Quelle: Simon Monk; Lizenz: Attribution Creative Commons

Player und Mediacenter: InfrarotFernsteuerung

Fernbedienung für den Raspberry Pi: Anstatt einen USB-Port mit einem IR-Receiver zu belegen, kann ein Sensor auch direkt an den GPIO-Pins der Platine angeschlossen werden.

Kameramodul aus einer USB-Webcam: Viele der Billigkameras verstehen sich auch mit dem Raspberry PI beziehungsweise mit der dort installierten Linux-Distribution Raspbian. len eines Braubehälters, und dies ist der anspruchsvollste Teil des Projekts.

Webcam: Überwachung und Bewegungsmelder Eine simple Webcam, die sich per USB mit dem Raspberry Pi verbindet, kann nicht nur als netzwerkfähige Überwachungskamera (à Artikel „Raspberry Pi als Überwachungs-System“, Seite 32) verwendet werden, sondern auch als Bewegungsmelder. Als Alarmsystem kann der Raspberry so dazu dienen, bei erkannten Bewegungen ein Bild per Mail zu verschicken, eine Videoaufzeichnung zu starten, oder um per Relais Lichter und akustische Signale zu steuern. Üblicherweise sind Webcams weder als Überwachungssysteme noch als Bewegungsmelder geeignet. Die USB-Spezifikation erlaubt lediglich Kabellängen von maximal fünf Metern, und die USB-Webcams lassen sich nur in der Nähe des PCs aufstellen. Zudem funkti-

60

oniert das Ganze nur, wenn die Kamera an einen PC angeschlossen ist, der natürlich auch permanent eingeschaltet ist. Mit einem Raspberry Pi für die Webcam wird der Aufbau dagegen praktikabel und ist für kleinere Projekte gut zu gebrauchen. Der Vorteil ist, dass die Linux-Distribution Raspbian (auf Heft-DVD) für den Raspberry Pi nicht nur alle Software-Komponenten liefert, um aus dem Mini-Computer einen Webcam-Server zu machen, der sich sicher über eine Internetverbindung mittels Passwortschutz und HTTPS aufrufen lässt. Mit dem Paket „motion“ gibt es zudem eine Software, um über Bewegungserkennung von angeschlossenen Webcams andere Aktionen auszulösen. Alex Nikolaidis beschreibt auf https://medium.com/@Cvrsor den einfachen Aufbau eines Alarmsystems mit einer zerlegten USB-Webcam, die zum Raspberry Pi kompatibel ist. Eine Liste geeigneter Webcams findet sich auf http://elinux.org/

Wenn der Raspberry Pi hauptsächlich als Player, Mediacenter oder Streaming-Client zur Verwendung kommt, braucht der Winzling natürlich ein passendes Eingabegerät. Um beispielsweise eine Infrarot-Verbindung anstatt einer Tastatur oder Maus zur Eingabe nutzen, ist nicht mal viel Aufwand nötig. Ein Set aus Infrarot-Fernbedienung mit IR-Receiver als USB-Dongle ist ab 11 Euro zu haben. Unter Verwendung der GPIO-Stiftleiste des Raspberry Pi ist auch nicht mal nötig, für den Receiver extra einen USB-Port zu belegen, denn ein IRSensor kann auch direkt an den GPIO-Pins angebracht werden. Auf der Betriebssystemseite kümmert sich, wie unter Linux üblich, die Software LIRC (Linux Infrared Remote Control) um die Auswertung der Signale, und das Mediacenter Raspbmc sowie viele andere Player sind auf die Bedienung über LIRC zugeschnitten. Auf dem Raspberry Pi muss LIRC über dessen Konfigurationsdateien noch für den Receiver, USB oder GPIO eingerichtet werden. Alle diese Schritte beschreibt der Projekteintrag von Simon Monk (www.pcwelt.de/9pua) für den Anschluss eines Infrarot-Receivers an die Stiftleiste. Die mitgelieferte Beispielkonfiguration bezieht sich auf eine bestimmte Fernbedienung. Wer eine andere verwendet, die unterschiedliche Codes sendet, braucht nicht zu verzagen: LIRC bietet mit dem Tool Irrecord ein Kommandozeilenprogramm, um die Codes der Fernbedienung schrittweise manuell auszulesen.

Wetterballon: Raspberry Pi in höheren Sphären Mit einer Serie von professionell aufgezogenen Projekten, den Raspberry Pi mit Hilfe eines Wetterballons in die Stratosphäre zu schicken, ist der Brite David Akerman bekannt geworden. Mit einem kleinen Team ließ er einen kälteisolierten Mini-PC mit 5-Megapixel-Kamera, GPS-Modul und zwei CB-Funk-Sendern im Gepäck unter einem mit Latex-Wetterballon vom südwestlichen England aus steigen. Zuvor genehmigte die UK Civil Aviation Authority den Flug, der es auf eine Höhe von 39 994 Metern schaffte. In einem späteren Flug Mitte 2013 erreichte der Versuchsaufbau sogar 43 639 Meter. Die Bordkamera war so vorkonfiguriert, per Script alle drei Minuten Bilder zu machen. Die hochauflösenden Bilder wurden auf der

Sonderheft Hacks 3/2014

PC-WELT

Quelle: Dave Akerman

Quelle: Dave Akerman

Raspberry Pi / Projekte

Blick über Südwest-England aus 40 Kilometern Höhe: An einem Wetterballon reiste der Raspberry Pi samt Kamera und CB-Funk-Transmitter in die Stratosphäre und wurde nach der Landung über GPS-Ortung geborgen.

Cluster: Raspberry Pi mal 64 An der englischen Universität von Southampton stemmte ein Team um Professor Simon Cox mit dem Raspberry Pi ein größeres Selbstbauprojekt und verband 64 Platinen des MiniPCs zu einem Cluster (http://www.pcwelt. de/4h9j). Jedes der Einzelsysteme (Nodes) startet von SD-Karte sein eigenes Betriebssystem, ein Debian Wheezy für ARM-Prozessoren. Damit aus dem Verbund ein Parallelrechner wird, ist der Cluster per Message Passing Interface (MPI) über Ethernet zusammengeschaltet. Der gesamte Cluster mit seinen einzelnen Netzteilen wird – anders als die üblichen Cluster mit dieser Anzahl an Nodes – ganz normal aus der Steckdose mit Strom versorgt. Das Gehäuse besteht aus Lego-Steinen und ist eine Konstruktion von Simon Cox’ damals sechsjährigem Sohn. Zusammen mit der nötigen NetzwerkHardware, um alle Platinen per Ethernet zu einem Cluster zu verbinden, lag der Materialaufwand bei umgerechnet 3000 Euro. Aufgrund der eher bescheidenen Rechenleistung der ARM-Prozessoren ist dieser Cluster natürlich kein Superrechner, und das Entwick-

PC-WELT

Sonderheft Hacks 3/2014

lerteam hat zur Ermittlung einer Leistungsangaben in Flops (Fließkommaoperationen pro Sekunde) den Benchmark Linpack, der üblicherweise bei Superrechnern zum Einsatz kommt, für den Raspberry Pi kompiliert. Auf einem einzigen Raspberry Pi liefert Linpack 65 000 Kiloflops. Wird ein komplexes Problem auf den gesamten Cluster verteilt, kommt das Gesamtsystem auf 1,14 Gigaflops. Zum Vergleich: Ein Intel Core i5 kommt in einem vergleichbaren Benchmark mit Linpack auf 90

Gigaflops. Das Flaschenhals des Rasbperry-PiClusters ist natürlich das Netzwerk, das auf 100 MBit begrenzt ist. Dafür ist der Cluster aber gut als Testplattform geeignet, um Programme für den tatsächliche Supercomputer der Universität zu entwickeln.

Lapse Pi: Zeitraffer-Steuerung Was passiert, wenn sich der Raspberry Pi und ein professioneller Fotograf mit Elektronikbegeisterung treffen, zeigt das Projekt von David

Kickstarter und Raspberry Pi Die Entwicklung von Ergänzungen, Modulen und Zusatz-Boards rund um den Raspberry Pi ist auch bei Kleinserien nicht ohne Grundkapital möglich. Für kleine Firmen mit nur einem oder zwei Entwicklern sind auch einige Tausend Euro eine stolze Summe. „Schwarmfinanzierung“ lautet das Zauberwort, um von einer losen Interessengemeinschaft potenzieller Anwender Geld zu bekommen. Zur größten Plattform für Schwarmfinanzierung ist in den letzten vier Kano: Bis auf den Bildschirm umfasst das über Kickstarter fiJahren Kickstarter (http://kickstarter.com) nanzierte Einsteigerset alles, um einen Computer mit dem entaufgestiegen. Spiele, Home-Entertainment haltenen Raspberry Pi zusammenzusetzen. Der Preis liegt bei und DIY-Projekte haben sich darüber teils 99 US-Dollar. mit enormen Erfolg Startkapital geholt. Schwarmfinanzierung funktioniert auch für den Raspberry Pi, und mehrere bekannte Ergänzungen für den Ein-Platinen-Computer haben das Startkapital über Kickstarter bekommen: das vorgestellte Zusatz-Board Brick Pi (http://www.dexterindustries.com/BrickPi) für Lego-Mindstorms beispielsweise, das dort umgerechnet über 90 000 Euro sammeln konnte. Mit über 300 000 Euro hat das transportable 9-Inch-Display HDMIPi (http://hdmipi.com), das Mitte 2014 ausgeliefert wird, auch sein Finanizerungsziel mehr als erreicht. Das Einsteigerset „Kano“ (http://www.kano.me) konnte sich ebenfalls über Kickstarter realisieren. Es kombiniert einen Raspberry Pi Modell B mit Gehäuse, simpler Gummitastatur plus Touchpad, Speicherkarte, WLAN-Dongle und Lautsprecher in einem unkomplizierten Bausatz, der sich bestens für Schulen eignet.

61

Quelle: kano.me

SD-Karte gespeichert, die niedrigen Auflösungen waren über den Funkkanal verfügbar. Bei der Suche der Nutzlast nach der Landung des Wetterballons half das GPS-Modul bei der Ortung. Beschreibungen des Aufbaus, vergangene Ballonreisen mit Bildern und Berichte über zukünftige Projekte liefert der Blogeintrag http://www.daveakerman.com/?p=1154. Die dokumentierten Ballonreisen nehmen in ihrer Komplexität zu. Das letzte Projekt war Ende 2013 vor der witterungsbedingten Winterpause die Reise des Raspberry Pi von England bis in die Ukraine auf 34 000 Metern Höhe. Danach ging die Nutzlast verloren, was allerdings einkalkuliert war.

Raspberry Pi im Höhenrausch: Das Gehäuse in der passenden Form einer Himbeere (englisch „Raspberry“) schützt die Elektronik gegen die rauen Minustemperaturen auf 4 000 Metern.

Quelle: Michael Castor (http://mkcastor.com)

Raspberry Pi / Projekte

Quelle: David Hunt (http://davidhunt.ie)

Zeitraffer und Dolly-Steuerung mit dem Raspberry Pi: Für beeindruckende Videos aus Einzelbildern lässt dieser Aufbau eine Kamera mit Motorsteuerung langsam über eine Schiene gleiten.

Quelle: http://contractorwolf.wordpress.com

Tablet mit dem Raspberry Pi: Als Display kommt ein kapazitiver Touchscreen mit 10 Inch Bildschirmdiagonale zum Einsatz. Das Gehäuse besteht aus Birke und Kohlefaser und der Rahmen ist passgenau aus Sperrholz gefräst.

Raspberry Pi als InternetRadio: Als Player für eine Liste von vorbereiteten Streaming-URLs dient MPD. Dieser kann in diesem Projekt auch über die beiden Taster Radiostationen wechseln.

62

Hunt. Das „Lapse Pi“ genannte Projekt dokumentiert David Hunt mit beeindruckenden Demovideos im Detail auf http://www.david hunt.ie/?p=2822. Ambitionierte Bastler finden dort auch Schaltpläne und Beispielcode zur Steuerung. Der Mini-PC kommt hier als programmierbarer Mikro-Controller zum Einsatz, um bewegte Zeitrafferaufnahmen zu steuern. Die Kamera sitzt dabei auf einem Dolly und wird mittels Keilriemen langsam und schrittweise entlang von Schienen gezogen. Dem Raspberry Pi kommen hier gleich mehrere Ausgaben zu: Es betätigt in Intervallen den Selbstauslöser der Kamera über die GPIO-Pins der Platine und steuert zusätzlich den Motor unter dem Dolly, um es langsam über die Schienen gleiten zu lassen. Da alles transportabel sein soll, erfolgt die gesamte Stromversorgung über ein Akku-Pack mit acht AA-Batterien, das direkt unter dem Dolly angebracht ist. Als Antrieb dient ein Elektromotor mit 12 V (DC) und hohem Drehmoment. Der Motor ist stark genug, um den gesamten Schlitten mit Kamera, Objektiv und Akku-Pack in einer Ebene über die Schienen zu ziehen. Für Steigungen ist die Motorleistung zwar nicht ausreichend – dies ist aber kein Hindernis, wenn der Schlitten mittels Seilzug ein Gegengewicht am höheren Ende der Schienen bekommt. Ein HDVideo von den Ergebnissen, die David Hunt mit dem Lapse Pi erzielte, ist auf Youtube zu bewundern (www.pcwelt.de/fmtk).

Pi Pad: Selbstbau-Tablet im Holzkasten Das Tablet „Pi Pad“ steckt in einem Gehäuse aus Sperrholz und Kohlefaser, um ein Raspberry Pi Modell B mit einem 10-Inch-Touchscreen und einem Akku zu 10 000 mAh zu kombinieren. Was dem Macher Michael Castor bei der Realisierung des ehrgeizigen Projekts zugute kam, ist seine hauptberufliche Anstellung in der Werkstatt des US-Magazines „Make“. Und so war es auch kein Problem, für den exakten Birkenholzrahmen des Tablets eine CNC-Fräse aufzutreiben. Die anderen verwendeten Komponenten sind teilweise angepasste Standardbaugruppen. So ist der kapazitive Touchscreen über LVDS (Low Voltage Differential Signaling) und einen Adapter mit dem Raspberry Pi verbunden. Damit der Raspberry Pi in das flache Gehäuse passt, musste noch der Ethernet-Port von der Platine gelötet werden. Ein Manko des Raspberry Pi ist, dass er keinen Verstärker für den Kopfhörerausgang auf der Platine besitzt, und das Audiosignal ist für Kopfhörer in belebten Umgebungen zu leise. Im Gehäuse steckt deshalb noch ein edler Fiio-E5-KopfhörerVerstärker. Der Akku hält bis zu sechs Stunden

Sonderheft Hacks 3/2014

PC-WELT

Quelle: Valkyrie Savage, Mark Fuge, Shiry Ginosar

Raspberry Pi / Projekte

Das Innenleben des Tablets: Es stecken nicht viele Komponenten im Gehäuse, aber die Tücke steckt im Detail. Der Raspberry Pi musste aus Platzgründen seine Ethernet-Buchse lassen. durch. Unter den Linux-Dsitributionen für den Raspberry Pi funktionieren nicht alle grafischen Programme mit Touchscreen, deshalb ist bisweilen noch der Anschluss einer Maus und die Verwendung einer Bluetooth-Tastatur nötig. Eine Teileliste und einige Bilder vom Zusammenbau finden sich auf der Webseite von Michael Castor (http://mkcastor.com).

Internet-Radio: Empfang mit dem Raspberry Pi Ein Aufgabe, die ein Raspberry Pi quasi nebenbei erledigen kann, ist das Abspielen von Internet-Radio-Streams. Mit etwas Bastelei ist es auch möglich, ein Abspielgerät für RadioStreams mit zwei Tasten zu bedienen, um zwischen vorbereiteten Radiostationen zu wechseln, wie das Projekt auf www.pcwelt.de/af0m zeigt. Der Bastler hinter dem Projekt nutzt ein Breakout-Board von Adafruit, das die GPIOPins an einem Flachbandkabel aus dem Gehäuse des Raspberry Pi heraus führt. Auf dem Raspberry läuft der Music Player Daemon (MPD) als Abspielprogramm und wird vom Music Player Client (MPC) gesteuert. PythonScripts lauschen auf Impulse an den Pins des Raspberry Pi, um per Tastendruck den Stream zu wechseln. Als Verstärker des schwachen Audiosignals dient eine fertig gekaufte, externe Lautsprecherbox wie sich auch für MP3Player verwendet wird.

PC-WELT

Sonderheft Hacks 3/2014

H2O IQ: Der Raspberry Pi im Garten Studenten an der University of California, Berkeley, haben den Raspberry Pi als Schaltzentrale und Webserver für ein automatisches Gartenbewässerungssystem zur Tröpfchenbewässerung eingesetzt (www.pcwelt.de/pads). Einzelne, von Solarzellen mit Strom versorgte

Feuchtigkeitssensoren sind in Kunststoffgehäusen aus dem 3D-Drucker untergebracht und funken den Feuchtigkeitsgehalt der Gartenerde an den Raspberry Pi. Als Funkprotokoll dient Xbee, das im zulassungsfreien Band um 900 MHz und 2,4 GHz liegt, beispielsweise auch in der Robotik und Haus-Atomatisierung verbreitet ist und als Modul fertig für die Bestückung vorliegt. In jedem der Gehäuse ist ein Servo für die Steuerung eines Bewässerungsventils untergebracht. Die Boards und die Schaltung dafür sind aus eigener Herstellung. Ein zentrales Raspberry Pi als BewässerungsComputer kann die Tröpfchenbewässerung so bei Bedarf automatisch in Gang setzen, und ein Webserver informiert den Gärtner über die Wasserbedarf des Gartens.

Gehäuse aus dem Drucker Den Raspberry Pi als nackte Platine zu betreiben, ist nur in frühen Stadien eines DIY-Projekts praktikabel. Früher oder später braucht die Platine ein passendes Gehäuse. Entweder ein selbst gebautes oder eine fertiges Case, das Aussparungen für alle Anschlüsse hat und sich damit universell verwenden lässt. Daneben gibt es auch Bausätze von Gehäusen für jeden Anspruch. Die mit Abstand einfachste Form ist die faltbare Verkleidung „Punnet“, die jeder selbst aus stabilem Karton oder Ein Gehäuse als PDF einfach ausdrucken: Aus Pappe lässt sich auch Blech herstellen kann. Eine Vorlage diese Einfassung namens „Punnet“ für den Raspberry Pi anferals PDF dazu gibt es auf http://www.ras tigen, um die Platine vorerst provisorisch zu verstauen. pberrypi.org/archives/1310 zum Download. Wer über die Möglichkeiten eines Laser-Cutters verfügt, kann das praktische Acryl-Gehäuse von Build-to-Spec (http://www.built-to-spec.com) selbst nachbauen. Die CAD-Daten gibt es dort in mehreren Formaten zum Download.

63

Quelle: Dexter Industries

Quelle: Michael Castor (http://mkcastor.com)

H2O IQ: Das grüne Gehäuse beherbergt Feuchtigkeitssensor, Funkmodul und servogesteuerertes Ventil zur Bewässerung Ein Raspberry Pi dient als zentraler Bewässerungscomputer.

Raspberry Pi / Programmieren

Raspberry mit Scratch & Python Der Raspberry Pi eignet sich für viele Aufgaben. Entwickelt wurde er jedoch als Lehr- und Lern-Computer. Alles, was man für den Einstieg in die Programmierung braucht, ist bei Rasp­ bian bereits dabei. Von Thorsten Eggeling

Programmieren lernen: Das hört sich erst einmal kompliziert an. Für viele ComputerNutzer gehört das in den Bereich der Informatik und damit zur Mathematik. Die hält zwar jeder für wichtig, zugleich gibt es aber auch starke Berührungsängste. Letztlich ist die Methode, mit der jemand an das Thema herangeführt wird, für den Erfolg entscheidend. Dieser Artikel stellt zwei Wege vor. Die Entwicklungsumgebung Scratch führt spielerisch im die Welt des Programmierens ein. Sie ist für Kinder und Jugendliche im Alter von acht bis 16 Jahren konzipiert, wird aber in allen Altersgruppen genutzt. Die Programmiersprache Python ist eher für ältere Jahrgänge geeignet. Über ein Python-Script lassen sich beispielsweise externe Geräte steuern, die mit dem Raspberry Pi verbunden sind. Wenn Sie Raspbian verwenden, sind Scratch und Python bereits mit dabei (à ab Seite 8).

Programmieren mit Scratch Scratch ist eine visuelle Entwicklungsumgebung, die seit 2007 von einer Forschergruppe am MIT entwickelt wird (http://scratch.mit.edu).

64

„Visuell“ bedeutet, dass sich die einzelnen Elemente eines Programms mit der Maus per Drag & Drop zusammensetzen lassen. Daraus ergibt sich eine grafische Darstellung des Programmablaufs. Programmcode müssen Sie nicht eintippen, daher können dadurch aber auch keine Fehler entstehen. Mit Scratch können Sie vor allem kleine Spiele und MultimediaAnimationen erstellen. Das Ergebnis spielen Sie auf dem Raspberry Pi oder einem anderen Gerät ab, für das Scratch verfügbar ist. Auf Heft-DVD finden Sie auch die Windows-Version des Programms. Sie können Ihre Projekte auf http://scratch.mit.edu veröffentlichen und so für die Community verfügbar machen. Dafür ist eine kostenlose Anmeldung erforderlich.

Scratch-Beispielprogramm analysieren Die Funktionen von Scratch verstehen Sie am schnellsten, wenn Sie sich ein fertiges Beispiel ansehen. Stellen Sie zuerst über das GlobusSymbol in der oberen Leiste die Sprache „Deutsch“ ein. Klicken Sie auf „Datei à Öffnen“ und dann auf „Beispiele“. Wählen Sie im Ord-

ner „Animation“ das Beispiel „Aquarium“. Das Scratch-Fenster ist in drei Spalten aufgeteilt. Links sehen Sie die Programmbausteine, die bei Scratch „Blöcke“ genannt werden. Über Schaltflächen wie „Bewegung“ und „Steuerung“ wählen Sie die unterschiedlichen BlockKategorien aus. In der mittleren Spalte ist das Script zu sehen. Dieses entsteht, wenn Sie Blöcke mit der Maus in diesen Bereich ziehen. Hier gibt es auch noch die Registerkarte „Kostüme“, auf der Sie das Aussehen der Figuren in einer Animation festlegen. Über die Registerkarte „Klänge“ können Sie eine Hintergrundmusik aufnehmen oder aus einer Datei laden. Die rechte Spalte zeigt die „Bühne“. Das ist der Hintergrund, auf dem sich unterschiedliche Objekte unterbringen lassen. Beim Aquarium sind hier einige Meeresbewohner enthalten. Zu jedem Objekt gehört ein eigenes Script – Kostüme oder Klänge, die Sie sehen, wenn Sie das jeweilige Objekt anklicken. Der Inhalt der mittleren Spalte ändert sich entsprechend. Über die grüne Flagge rechts oben starten Sie das Programm, und mit dem roten Knopf be-

Sonderheft Hacks 3/2014

PC-WELT

Quelle: http://blog.dawnrobotics.co.uk

Raspberry Pi / Programmieren

Roboterbau: Er erfordert einen gewissen handwerklichen Aufwand und etwas Bastelgeschick. Die Programmierung über Scratch ist jedoch nicht weiter kompliziert. enden Sie es wieder. Die Scripts sind fast selbsterklärend. Klicken Sie beispielsweise auf die Qualle „Creature 1“. Das Script beginnt mit „Wenn ... angeklickt“. In der Mitte des gelben Feldes sehen Sie das Symbol der grünen Flagge. Darunter steht der Block „setze Durchsichtigkeit-Effekt auf 35“. Wenn Sie die Animation über die grüne Flagge starten, wird die Eigenschaft „Durchsichtigkeit“ des Objekts auf den Wert „35“ gesetzt. Die zwei weiteren Blöcke bei „Creature 1“ bilden mit „wiederhole fortlaufend“ die eigentliche Animation. Eine Besonderheit gibt es noch bei „Bühne“. Hier sind drei Hintergrundbilder mit unterschiedlichen Wasserblasen definiert. Das Script wechselt jede Sekunde zu „nächster Hintergrund“ und sorgt damit für die Animation der Blasen.

Mit Scratch spielerisch lernen Für erste eigene Versuche ändern Sie das Aquarium-Beispiel. Öffnen Sie auch andere Beispieldateien und sehen Sie sich an, wie diese funktionieren. Wenn Sie einen Block auf einen freien Bereich ziehen, können Sie ihn über das Kontextmenü löschen. Ziehen Sie dann einen anderen Block an seine Stelle, und probieren Sie unterschiedliche Einstellungen aus. Oder Sie gehen auf die Registerkarte „Klänge“, klicken auf „Importieren“ und wählen einen der mitgelieferten Beispiel-Sounds aus. Damit dieser auch zu hören ist, setzen Sie den Block „spiele Klang ...“ in das Script ein. Auch wenn Scratch relativ einfach aussieht, lassen sich damit doch die Grundlagen von Programmiersprachen spielerisch erlernen. Auf jeden Fall sind Erfolge schnell zu erzielen, und das Ergebnis ist sofort auf dem Bildschirm

PC-WELT

Sonderheft Hacks 3/2014

Pfiffig: Über die GPIO-Pins des Raspberry Pi und ein Python-Script lassen sich externe Geräte steuern. Für den Anschluss genügt zur Not ein nicht mehr benötigtes IDE-Kabel.

zu sehen. Wer mehr will, kann Scratch auch für viele andere Aufgaben nutzen, beispielsweise zur Steuerung externer Geräte wie Motoren oder Roboter über die der GPIO-Pins (General Purpose Input/Output). Weitere Informationen finden Sie über www.pcwelt.de/3p2x und www.pcwelt.de/u4dn.

Ein Beispielprojekt in Python Bei Raspbian ist Python bereits vorinstalliert. Sie finden auf dem Desktop das Icon „IDLE“, das zum Python Integrated Development Environment mit Python 2.7.3 führt. „IDLE 3“ führt zur Python-Version 3.2.3. Bei unseren Versuchen haben wir letztere verwendet. Das Python-Beispiel (auf Heft-DVD) zeigt, wie Sie die GPIOs des Raspberry Pi ganz einfach mit Python und auch ohne Scratch steuern. Kopieren Sie die Datei „LED_blink.py“ in Ihr Home-Verzeichnis auf den Raspberry Pi. Im Archiv auf Heft-DVD sind außerdem die Belegungspläne für den P1-Stecker für die Revision 1.0 und 2.0 und ein Schaltplan zu finden. Das Programm steuert zwei LEDs, deren

Anoden (das längere Beinchen) Sie mit Pin 3 und Pin 5 des P1-Steckers (0/3,3 V) verbinden. Die Kathoden sind über einen Vorwiderstand mit Pin 6 (GND) verbunden. Zur Berechnung des Widerstands können Sie die Webseite www. spaceflakes.de/led-rechner verwenden, denn er hängt von den Leistungsdaten der LEDs ab. Wer über Lötkenntnisse verfügt (à „Löten leicht gemacht“, Seite 14), kann einen „fliegenden Aufbau“ etwa unter Verwendung eines alten IDE-Kabels durchführen. Besser ist allerdings ein Experimentierbrett (Breadboard), das die sichere Verbindung von Raspberry Pi und Bauteilen über Steckbrücken ermöglicht. Alle benötigten Bauteile erhalten Sie im Elek­ tronikfachhandel. Starten Sie „IDLE 3“, gehen Sie im Menü auf „File à Open“, und öffnen Sie das Script „LED_blink.py“. Starten Sie es über „Run à Run Module“. Wenn alles richtig verdrahtet ist, leuchten die LEDs abwechselnd 20 Mal im Sekundentakt. Weitere Infos zur Verwendung von GPIO-Pins finden Sie im Artikel „Funksteckdose mal Pi“ auf Seite 52.

Einstieg in Python Wer lieber tippt statt klickt, ist bei Python gut aufgehoben. Python ist eine Script-Sprache ähnlich wie PHP oder Javascript. Ein Interpreter ist für die Ausführung des Codes verantwortlich, der als einfache Textdatei vorliegt. Für Einsteiger ist die Sprache besonders geeignet, weil sie nur wenige Schlüsselwörter umfasst und der Code sich relativ übersichtlich gestalten lässt. Eine Besonderheit: Die Programmstruktur wird durch Einrückungen mit Leerzeichen oder Tabulatorzeichen gebildet. Andere Sprachen verwenden dazu Klammern oder eigene Schlüsselwörter. Einen guten Einstieg in Python bietet „Python – Das umfassende Handbuch“. Sie können den Inhalt kostenlos über http://openbook.galileocomputing.de/python abrufen oder herunterladen.

65

PC & Software / Wasserkühlung

Quelle: David Wolski

Wasser marsch!

Eine Wasserkühlung hält CPU und Grafikkarten mit hoher Abwärme nahezu lautlos auf angemessenen Temperaturen, die auch beim Übertakten aktuller High-End-Prozessoren einen stabilen Betrieb ermöglichen. Von David Wolski

Der Wirkungsgrad von X86-CPUs ist gering, die als Hitze abgegebene Verlustleistung dagegen enorm: Bis zu 84 Watt setzt ein Intel Core i7 4770 (Haswell) in thermische Energie um. Bei AMD liegen die vergleichbaren FX-Prozessoren (Bulldozer und Piledriver) im gleichen Bereich der Verlustleistung beziehungsweise tendenziell sogar höher. Wohin mit der Abwärme?

Effiziente Kühlung: Wasser ist besser Bei konventionellen Kühlungen erhitzt der Prozessor über die Chip-Abdeckung einen ausreichend dimensionierten Kühlkörper mit großer

66

Oberfläche in der Form von Kühlrippen. Über diese bläst ein Ventilator einen Luftstrom, um die Wärme möglichst schnell abzuführen. Luft ist in alltäglichen Umgebungen unbegrenzt vorhanden und lässt sich mittels Ventilator unkompliziert zuführen und abtransportieren. Das sind auch schon alle Vorteile einer Luftkühlung. Zu den Nachteilen: Luft hat eine geringe Wärmekapazität, also die Möglichkeit, thermische Energie zu speichern, und ist ein noch schlechterer Wärmeleiter. Alle das macht sich mit lauten Lüftern bemerkbar, die bei Prozessorlast hörbar aufdrehen. Wasser ist dagegen als Kühlmittel ideal und in einem geschlossenen Kreislauf zudem auch

für elektronische Bauteile sicher. Es hat die höchste bekannte Wärmekapazität, kann also mehr thermische Energie aufnehmen als die gleiche Menge irgend eines anderen Stoffs. Um einen Liter Wasser um ein Grad zu erwärmen, sind 4180 Joule nötig. Um die gleiche Energie mit Luft aufzunehmen, sind schon 1,18 Kubikmeter Raumluft nötig, die ein Ventilator erst mal herbeischaffen muss.

Moderne Prozessoren: Wasserkühlung noch zeitgemäß? Die erste Überlegung ist natürlich, ob eine aufwendige, teure Wasserkühlung bei modernen CPUs noch zeitgemäß ist, zumal Intel und

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Wasserkühlung

AMD die Leistungsaufnahme ihrer Prozessoren im Normal- und Idle-Betrieb in den vergangenen vier Jahren erheblich senken konnten. Jedoch werden auch die CPUs aktueller Generationen unter längerer voller Auslastung sehr heiß. In manchen Fällen sogar zu heiß. Das Die, also der nackte Halbleiter-Chip, wird in seiner Fläche kleiner. Das führt dazu, dass die Abwärme einer kleineren Fläche um so effektiver abgeführt werden muss. Klappt das nicht, dann neigen auch moderne CPUs zur Überhitzung, was beispielsweise bei den auf Leistung getrimmten Intel-Prozessoren der Haswell-Serie zu Hitzestaus unter dem Heatspreader führt. Effizient lassen sich die Prozessoren dieser Mikroarchitektur mit Luftkühlung nur mit niedriger Spannung und Taktrate betreiben, für Übertaktung gibt es bei der herkömmlichen Kühlmethode keinen Spielraum mehr nach oben. In diesem Fall sind Wasserkühlungen unschlagbar, zumal in einen leistungsfähigen Kühlkreislauf auch noch weitere Systemkomponenten wie Grafikkarte(n) mit eigenem Kühlkörper aufgenommen werden können. Und schließlich ist eine Wasserkühlung auch die ideale Lösung für beinahe lautlose High-EndPCs, die mit wenigen Lüftern auskommen sollen und trotzdem stabil und dauerhaft unter voller Auslastung arbeitet können.

Überblick: Aufbau einer Wasserkühlung Die Zweckgemeinschaft von Wasser und Elektronik mag nicht einleuchtend erscheinen. Schließlich fördert Wasserdampf die Oxidation metallischer Oberflächen und führt in großen Mengen sogar zur Kondensation. Zwei Dinge, die man im Computergehäuse nicht brauchen kann. In Frage kommen für Wasserkühlungen deshalb nur bewährte Einzelkomponenten, die mittels stabilen PVCSchläuchen über verschraubte Fittings – und nicht etwa mittels Aufsteck-Tüllen – miteinander verbunden sind. Ein sachgemäßer Aufbau hält jahrelang dicht und kommt mit einem Minimum an Wartung aus. Auf abenteuerliche Bastellösungen sollte man bei Wasserkühlsystemen lieber verzichten. Von fertig konfigurierten und befüllten Minikühlsystemen für die CPU raten wir ab, da diese keinen wirklichen Vorteil gegenüber einem guten CPU-Kühlkörper mit Ventilator bringen. Obwohl schon Einsteigersets um 200 Euro eine weit bessere Kühlleistung bringen als eine Luftkühlung, ist für das Resultat die Qualität der eingesetzten Komponenten genauso von Bedeutung wie ein gelungener Einbau des Kühlkreislaufs in den PC. Schon bei einem Einbau

PC-WELT

Sonderheft Hacks 3/2014

Blick ins Innere: Auch handliche Midi-Tower bieten noch genügend Platz für die Komponenten einer Wasserkühlung. Das größte Teil, der Wärmetauscher, wird außen an der Gehäuserückseite (hier nicht sichtbar) angebracht. sollten sie noch Spielraum für nachträgliche Änderungen lassen. Montieren Sie bist auf den CPU-Kühlkörper noch nichts fest, und führen Sie noch keine irreversiblen Modifikationen am Gehäuse durch. Am Anfang ist ein loser Aufbau mit großzügig langen Schlauchverbindungen leichter zu optimieren. Knicke in Schlauchleitungen, Winkelstücke und zu geringe Radien bei der Schlauchführung sind der Kühlleistung generell abträglich, da sie den Durchflusswiderstand erhöhen.

Der Kühlkörper: Abkühlung für Hitzköpfe Ein wasserführender Prozessorkühler ist kleiner als luftgekühlte, schließlich sind keine großflächigen Kühlrippen gefragt. Im Aufbau gleichen sich alle Kühlkörper: In einen massiver Metallblock, meist Kupfer oder Nickel, ist ein serpentinenförmiger Kanal gefräst, ein aufgeschraubter Deckel aus Kunststoff oder Metall schließt den Kühlkörper wasserdicht ab. Der Prozessorkühler wird stabil mit einer Rü-

Kosten kalkulieren Die Einzelkomponenten Wenn man nicht gerade den Großteil der Komponenten einer Flüssigkeitskühlung gebraucht erhält, ist diese Art der Prozessorkühlung die teuerste Methode. Es lohnt sich jedoch, wenn die Wasserkühlung über mehrere Jahre in Betrieb bleibt und mehrere Prozessorsprünge mitmacht. Qualitativ gute CPU-Kühlkörper für Wasserkühlungen lassen sich üblicherweise mit beliegenden Einbaurahmen leicht auf neuere und andere Prozessorsockel montieren, ohne dass dabei anderweitige Änderungen am Aufbau des Kühlkreislaufs anfallen. Trotzdem sind die Anschaffungskosten nicht ohne und liegen rund um den Faktor zehn höher als bei den herkömmlichen lauten Luftkühlungen. Die rechts unten stehende Kalkulation mit bewährten, empfehlenswerten Komponenten verschiedener Hersteller kommt auf fast 300 Euro. Bezugsquellen: Empfehlenswerte und dabei nicht überteuerte Kühlkörper aller Art hat EKWB (http:// www.ekwb.com) im Sortiment. Radiatoren und Kreiselpumpe (Eheim 1046, 220 V) 50 Euro passive Konvektoren bis hin zu Komplettsets Kühlkörper (EK Water Blocks EK-Supremacy) 66 Euro sind bei http://www.alphacool.com zu finden. Kühlkörper Grafikkarte (EK-VGA Supremacy) 50 Euro Für Kleinteile wie Fittings aller Art und ZubeFittings für Kühlkörper und Pumpe 16 Euro hör wie Ausgleichsbehälter ist der OnlineRadiator (Aktiv) 65 Euro Shop von Innovatek (www.webshop-innovatek. Ventilator (sehr leise, 120 mm) 12 Euro de) eine gute Quelle. Achten Sie bei der KomAusgleichsbehälter (Innovatek) 25 Euro bination von Teilen verschiedener Hersteller PVC-Schläuche (Baumarkt) 10 Euro auf passende Fittings (Schlauchanschlüsse).

67

PC & Software / Wasserkühlung

Flache Sache: Kühlkörper für Wasserkühlungen sind deutlich kleiner als Luftkühler. Hier der EK-Supremacy Copper des slowenischen Herstellers EKWB, noch ohne Schlauchanschlüsse. ckenplatte auf der Hauptplatine verschraubt, wozu immer die Demontage des PCs nötig ist. Teurer ist nicht immer besser: Es gibt überdesignte Kühlkörper mit Kapillaren, die um die 90 Euro kosten, aber wegen zu geringem Durchfluss eine schlechtere Kühlleistung bringen als einfache Kühlkörper. Ein Kühlkörper sollte immer Halterungen für mehrere Sockel bieten, am besten ohne Aufpreis.

Wärmetauscher, der die Form eines Radiators mit langsam drehenden Ventilatoren haben kann oder auch ein groß dimensionierter, passiver Konvektor ist, stellt sich ein Gleichgewicht zwischen Wassertemperatur und Umgebungstemperatur ein. Generell sind passive Konvektoren teurer und größer als aktive Radiatoren mit Ventilator, dafür aber auch absolut lautlos.

Wärmetauscher: Aktiv oder passiv

Pumpe: Bringt Bewegung in den Kühlkreislauf

Aufgenommene thermische Energie transportiert das erwärmte Wasser zum Wärmetauscher, der viel Wärme an die Umgebung abgeben soll. Der Wärmetauscher liegt deshalb gut belüftet außerhalb des Gehäuses und nicht im warmen Luftstrom des Netzteils. Über den

Bestens geeignet sind Keramik-Kreiselpumpen aus dem Aquaristik-Bereich, auch wenn diese vergleichsweise groß sind. Sie sind dem jahrelangen Dauerbetrieb gewachsen und laufen mit kaum wahrnehmbarer Lautstärke. Die Pumpenleistung liegt bei den üblichen Model-

Kühlflüssigkeit Welche Additive ins Wasser? Bei Additiven für Wasserkühlungen sind nicht nur die chemischen Eigenschaften wichtig, sondern auch die Umweltverträglichkeit. Geeignet ist Ethylenglykol (Trivialname: Glykol), ein zweiwertiger Alkohol mit der chemischen Bezeichnung 1,2-Ethandiol. Es wirkt als Korrosionsschutz und hat eine di-elektrische Wirkung, die den Wärmetransport verbessert. Glykole sind gesundheitsschädlich und dürfen nicht verschluckt oder eingeatmet werden, auch wenn sie einmal in den 80erJahren in gepanschten Wein aus Österreich verwendet wurden. Für den (sparsamen) Zusatz in Kühlmitteln für den PC ist Glykol aber zulässig. Andere, weit schädlichere und ungeeignete Kühlmittel und Zusätze gibt es im Versandhandel leider zuhauf. Produkte für den Automobilbereich sind unpassend, da sie für einen viel höheren Temperaturbereich geschaffen sind. Farbstoffe als Additive sind auch oft mehr als ungesund und sollten weggelassen werden. Wenn die Produktbeschreibung keine Substanzen nennt, dann fordern Sie beim Verkäufer einfach ein Sicherheitsdatenblatt an, das er nach EURichtlinie 91/155/EG bereitstellen muss. Kann gar kein Datenblatt geliefert werden, dann hat der Verkäufer oft keine Ahnung von seinem Produkt und dürfte es in der EU eigentlich auch gar nicht anbieten. In diesem Fall sollten Sie lieber die Finger von dem Produkt lassen.

68

Konvektor zur passiven Kühlung: Dieses System mit einem Intel Core i7 2600K (nicht übertaktet) wird allein von einem passiven Wärmetauscher an der Gehäuseseite auf Temperatur gehalten. len wie dem Eheim 1046 bei rund 600 LiterStunden Pumpenleistung bei 10 Watt Leistungsaufnahme. Aquariumspumpen für 220 Volt bringen ihr eigenes Stromkabel ohne Netzschalter oder Netzteil mit. Tipp: Es empfiehlt sich, den gesamten PC mit Pumpe über eine Steckerleiste ein- und auszuschalten, dann kommt es nicht vor, dass die Pumpe beim Rechnerstart versehentlich mal ausgeschaltet bleibt. Als Isolation gegen Vibrationen der Pumpe im Computergehäuse reicht eine dünne Lage Schaumstoff als Auflagefläche. Fest montiert werden muss eine Pumpe im Gehäuse nicht.

Ausgleichsbehälter: Zum Befüllen und Entlüften Ein Ausgleichsbehälter wird direkt vor das Saugstück der Pumpe montiert und ist damit eine Unterbrechung im Kühlkreislauf, die als Wasser-Reservoir zum Befüllen und zum Entlüften dient. Ein direkt an der Pumpe anliegender Ausgleichsbehälter hat den Vorteil, dass er

Nicht nur für die Aquaristik geeignet: 220-V-Kreiselpumpen wie diese Eheim 1046 sind mit ihrer Pumpleistung und Leistungsaufnahme um 10 Watt ideal für Wasserkühlungen und laufen beinahe geräuschlos.

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Wasserkühlung

Ausgleichsbehälter: Das Reservoir wird an die Pumpe montiert und mach nicht nur das Befüllen einfach, sondern auch das Entlüften. Unvermeidliche Luftbläschen verlassen so selbständig wieder den Kühlkreislauf.

Nur wenig Korrosion: Ein aufgeschraubter CPU-Kühlkörper, der sieben Jahre im Dauereinsatz war. Additive im destillierten Wasser reduzieren die Lösung von Metallionen in die Kühlflüssigkeit.

Halterungen: Gute Kühlkörper verfügen immer über mehrere Halterungen und Einbaurahmen, die auf verschiedene Sockel passen, um auch eine PC-Aufrüstung mitzumachen.

wegen seiner Reservoir-Wirkung nicht der höchste Punkt der Wasserkühlung sein muss: Auf der einen Seite kommt das gepumpte Wasser an und wird unterhalb des Wasserspiegels wieder von der Pumpe angesaugt. Dies erleichtert die Befüllung und Entlüftung ungemein. Denn anfangs wird die Pumpe immer auch Luft mit ansaugen, die aus dem Kühlsystem wieder heraus transportiert werden muss. Dies dauert je nach Länge der Schlauchleitungen zwischen 20 und 40 Minuten. Das Wasser transportiert die Luftbläschen zum Ausgleichsbehälter, wo sie an die Wasseroberfläche steigen und den Kreislauf so selbständig verlassen. Tipp: Befüllen Sie das Kühlsystem immer bei ausgeschaltetem Rechner – nur die Pumpe muss dazu laufen.

Korrosion der Metalloberflächen in den Kühlkörpern. Es lösen sich einige Ionen in die Kühlflüssigkeit, mit Additiven entsteht aber eine stabile Mischung, und eine weitere Korrosion findet nicht statt. Additive sind bei Verschlucken gesundheitsschädlich, und eine gewisse Sorgfalt beim Umgang damit ist angebracht. Tipp: Überprüfen Sie am Ausgleichsbehälter den Stand der Kühlflüssigkeit alle zwei bis drei Monate – und zwar bei eingeschalteter Pumpe, da sich nur dann der reale Füllstand zeigt. Auch bei völlig dichten Wasserkühlungen diffundiert mit der Zeit eine kleine Menge der Kühlflüssigkeit in die Umgebungsluft, und es ist hin und wieder ein Nachfüllen von wenigen Millilitern nötig.

ständlich sind. Da eine Wasserkühlung für den PC nicht mit Überdruck arbeitet und auch im Kreislauf keine Druckunterschiede bestehen, ist ein spontanes Abfallen oder gar Platzen der Schläuche ausgeschlossen. Solange die Schläuche und Verbindungen physikalisch unbeschädigt sind, halten sie auch dicht. Tipp: Bestens bewährt haben sich PVC-Schläuche mit 10 mm Außendurchmesser und 8 mm Innendurchmesser aus dem Baumarkt, wo es diese als Meterware gibt. PVC-Schläuche lassen sich mit etwas Kraftaufwand auch noch ohne zu reißen gut über Anschlüsse dehnen, die einige Millimeter breiter sind,

Kühlflüssigkeit: Destilliertes Wasser plus Additive Für den Großrechner Cray 2 von 1985 entwickelte 3M eine spezielle isolierende Kühlflüssigkeit, die elektronische Bauteile im direkten Kontakt umspülte. Bei geschlossenen Wasserkühlungen für den PC genügt aber destilliertes Wasser aus dem Baumarkt. Leitungswasser ist aufgrund des Kalkgehalts und der Mikroorganismen ungeeignet. Mikroorganismen wie etwa Schleimalgen, die sich als weiße Fäden in den Schläuchen einer Wasserkühlung zeigen, können aber auch bei destilliertem Wasser nach einigen Wochen auftreten, da das Befüllen natürlich keine völlig sterile Angelegenheit ist. Dagegen hilft schon ein Spritzer Haushaltsalkohol. Wer spezielle Additive aus dem Fachhandel einsetzt, etwa Innovatek Protekt, hält nicht nur Mikroorganismen fern, sondern vermindert auch die

PC-WELT

Sonderheft Hacks 3/2014

Richtig dicht: Schläuche und Verbindungen Alle Komponenten der Wasserkühlung sind durch Schläuche aus PVC oder Silikon miteinander verbunden. Silikon ist weicher als PVC und lässt beim Verlegen kleinere Radien zu, knickt aber auch leichter, was den Durchfluss bremst. Enge Radien sind aber in jedem Fall besser als Winkelstücke. Je nach Hersteller und Kühlsystem kommen Schläuche mit Innendurchmesser zwischen 5 mm und 10 mm zum Einsatz. Die verschiedenen Herstellersysteme sind deshalb nicht alle zueinander kompatibel, was sich aber mit passenden, separat erhältlichen Fittings (verschraubte Schlauchanschlüsse) ändern lässt. Bei einigen Kühlkörpern sind Fittings sowieso nicht inklusive. Wichtig ist darauf zu achten, dass keine einfachen Tüllen zum Aufstecken verwendet werden, da diese nicht dicht genug sind und bei der Montage außerdem zu um-

Weitere Kühlkörper: Grafik, Chipsatz, Festplatten Eine leistungsfähige Wasserkühlung kann auch nachträglich noch durch weitere Kühlkörper ergänzt werden. Besonders Grafikkarten sind ein optimaler Kandidat dafür, da hier auf kleinem Raum viel Abwärme der GPU abgeführt werden muss. Generell sind Grafikkühler, die nicht nur die GPU abdecken, sondern auch die DRAM-Chips, besser geeignet, aber auch deutlich teurer. Kühlkörper gibt es zudem auch für Mainboard-Chipsätze, Festplatten und für Spannungsregler der Hauptplatine. Behalten Sie aber aber nach jeder Modifikation die Temperatursensoren über das Bios beziehungsweise über das UEFI im Blick, ob die Kühlleistung des Systems noch für den Dauerbetrieb unter gnadenlos hoher Last ausreicht. Tipp: Gute Kühlkörper verfügen immer über mehrere Halterungen und Einbaurahmen für verschiedene Sockel, um auch Aufrüstungen mitzumachen und damit über Jahre verwendbar zu bleiben.

69

PC & Software / Apple-PCs

Linux auf dem Mac Sie möchten gern Ubuntu oder ein anderes Linux auf einem Apple-Gerät installieren? Wenn Sie auf einige Besonderheiten Rücksicht nehmen, ist das kein großes Problem. Der Artikel zeigt, wie’s geht. Von Stephan Lamprecht

Mit dem Mac-Mini baut Apple seit Jahren einen unter vielen Gesichtspunkten aufregenden Rechner. Der Computer ist extrem klein, sparsam beim Stromverbrauch und sehr leise. Ob im Wohnzimmer oder am Arbeitsplatz – der Mini macht eine gute Figur. Doch auch die mobilen Rechner von Apple sind hochwertig und können gut mit Linux betrieben werden. Wenn Sie bereits Erfahrung mit der Installation von Linux auf Windows-PCs gesammelt haben, müssen Sie allerdings umdenken. Denn eine saubere Einrichtung des alternativen Betriebssystems erfordert auf dem Mac etwas mehr Vorbereitung. Das, was den Mac besonders für Einsteiger geeignet scheinen lässt, verkompliziert etwas die Einrichtung von Linux. Wir zeigen Ihnen, wie Sie Ihren Mac zu einer Dual-Boot-Maschine mit Linux machen.

Vor der Installation: Auf jeden Fall ein Backup anlegen Mit der Installation eines zweiten Betriebssystems greifen Sie tief in das System ein. Auch wenn Sie sehr sorgfältig arbeiten, kann es zu Problemen oder Schwierigkeiten kommen. Legen Sie sich deshalb für den Fall eines Falles ein aktuelles und vollständiges Backup an.

70

Rufen Sie dazu Time Machine auf, und entscheiden Sie sich für eine aktuelle Sicherung. Kontrollieren Sie in den Optionen, dass Sie alle Verzeichnisse berücksichtigen. Wenn Sie zu einem späteren Zeitpunkt das System wiederherstellen müssen, bieten Ihnen die AppleWerkzeuge die Option an, genau diese Sicherung zu benutzen, um das System aufzubauen. Eine bewährte Alternative zu einem Backup mit Time Machine ist der Einsatz von Spezialprogrammen für das Klonen der Festplatte. Mit Carbon Copy Cloner oder Super Duper (à Kasten „Mehr Infos und Downloads“) legen Sie eine vollständige Kopie der Festplatte auf einem externen Datenträger an. Bei größeren Problemen können Sie während des Systemstarts in den Startoptionen den angeschlossenen externen Datenträger als Start-Volume auswählen. Sie besitzen somit eine arbeitsfähige Kopie des Systems zum Zeitpunkt des Klonens und können auch auf alle Systemwerkzeuge zugreifen.

Dual-Boot? Platz schaffen für die Linux-Installation Apple konfiguriert seine Systeme so, dass das Betriebssystem den vollständigen Platz auf der Festplatte belegt. Um beide Betriebssysteme

nutzen zu können, müssen Sie zuerst die Partition für OS X verkleinern. Alle notwendigen Schritte erledigen Sie auch unmittelbar mit dem Festplattendienst-Programm. Sie finden es am schnellsten, wenn Sie mit Spotlight nach „Festplatte“ suchen. Auf der linken Seite des Programmfensters klicken Sie den Namen Ihrer Festplatte an und im rechten Bereich danach „Partition“. Der Mac zeigt Ihnen nun eine grafische Darstellung der Belegung an. Durch Klicken und Ziehen am unteren Rand der kleineren Darstellung verringern Sie den Platz der aktuellen Partition. Über die Pluszeichen am unteren Rand legen Sie eine neue Partition an. Wichtig in diesem Zusammenhang ist nur, dass Sie bei der Wahl des Dateisystems darauf achten, ein auf FAT basiertes zu verwenden. Legen Sie am besten zwei zusätzliche Partitionen an. Eine große, auf der Sie später Linux installieren, und eine kleinere, die Sie als Swap-Partition (AuslagerungsPartition) nutzen. Als Faustregel für Swap hat sich die doppelte Größe des Arbeitsspeichers bewährt. Sie sollte also beispielsweise zwischen 8 und 16 GB groß sein. Erst wenn Sie die Änderungen bestätigen, werden die neuen Bereiche auf die Festplatte geschrieben. Starten Sie anschließend den Mac neu.

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Apple-PCs

Boot-Loader besorgen und auf dem Mac installieren Während der klassische Windows-PC auf Bios (Basic Input Output System) als Firmware setzt, nutzen der Mac und einige aktuelle WindowsRechner das Extensible Firmware Interface (EFI) als internes Programm, das nach dem Rechnerstart abläuft. Dies funktioniert allerdings nicht ohne weiteres mit dem von den meisten Distributionen nach wie vor eingesetzten Boot-Manager Grub. Als Apple-Nutzer müssen sich somit nach einer Alternative umsehen. Das Programm Refit etwa wird zwar nicht mehr aktiv weiterentwickelt, funktioniert aber immer noch bestens. Direkt auf der Seite des Projekts wird eine DMG-Datei angeboten, die Sie sich zunächst auf Ihr System herunterladen. Darin enthalten ist ein Installationspaket. Die aktuellen Versionen von OS X werden zunächst versuchen, Sie von der Installation abzuhalten. Klicken Sie mit der rechten Maustaste auf das Installationsprogramm, und starten Sie es mit „Öffnen“. Sie erhalten zwar wieder eine Warnung, wenn Sie das Kommando aber erneut ausführen, lässt sich die Software wie gewohnt starten. Durchlaufen Sie jetzt die Schritte des Installationsprogramms wie auf dem Bildschirm angezeigt. Bei den aktuellsten Versionen von Apples Betriebssystem müssen Sie wenigstens zweimal neu booten. Danach begrüßt Sie aber nicht mehr der Anmeldebildschirm Ihres Rechners, sondern der Boot-Manager stellt Ihnen die auf dem System installierten Betriebssysteme zur Auswahl. Damit haben Sie die vorbereitenden Arbeiten abgeschlossen.

Passendes Linux-Image suchen Aktuelle Linux-Distributionen sollten mit vielen Funktionen und technischen Raffinessen der Apple-Rechner unmittelbar nach der Einrichtung zurechtkommen. Oft genug sind es aber Kleinigkeiten, die sich zwischen den verschiedenen Versionen der Distributionen geändert haben und damit zu einer besseren oder schlechteren Zusammenarbeit mit der AppleHardware führen. Eine rege Gemeinschaft an Nutzern bewertet die verschiedenen Varianten gerade unter diesem Gesichtspunkt. Wie jeder andere Hersteller weist auch Apple seinen Geräten Modellnummern oder Baureihen zu, stellt diese aber in der Werbung und nach außen nicht so prominent dar. Finden Sie im ersten Schritt heraus, was für ein Gerät Sie im Einsatz haben. Dazu klicken Sie in der Menüleiste auf den Apfel und entscheiden sich danach für „Über diesen Mac“. Im nachfolgenden Dialog klicken Sie auf „Weitere Informationen“. Anschließend haben Sie Zugriff auf die

PC-WELT

Sonderheft Hacks 3/2014

Partitionen vorbereiten: Mit dem Festplatten-Dienstprogramm legen Sie am Mac-Rechner am besten vorab zwei FATPartitionen an, die Sie später für Linux nutzen und konvertieren.

Projekt Refit: In der DMGDatei des BootLoaders finden Sie die Installationsroutine, damit Ihr Mac auch andere Betriebssysteme akzeptiert. Seriennummer des Geräts und auch einen Hinweis auf die Modellreihe. Über eine Seite aus der Knowledge-Base von Apple finden Sie dann schnell zu einer Übersicht, auf der Sie die offizielle Modellbezeichnung ermitteln (http:// support.apple.com/kb/ht4132). Mit Hilfe dieser

Modellbezeichnung können Sie zum Beispiel im Wiki der Distribution, die Sie einsetzen wollen, nach zusätzlichen Hinweisen suchen, etwa zur Einrichtung weiterer Programmpakete, die das Zusammenspiel mit der Hardware weiter verbessern.

Mehr Infos und Downloads Eine wichtige Anlaufstelle mit zahlreichen Tipps für einzelne Gerätebestandteile sind die Seiten der Ubuntu-Gemeinschaft, die Sie über www.pcwelt.de/ri55 erreichen. Die genannten Programme oder Anpassungen an Konfigurationsdateien lassen sich zum Teil auch mit Gewinn unter anderen Distributionen nutzen. Unter www.bombich.com finden Sie die Software Carbon Copy Cloner, deren Einsatz sich vor dem Partitionen empfiehlt. Sie können damit eine Kopie des aktuellen Festplatteninhalts anlegen, vom dem aus Sie das System auch starten können. Im Falle eines Falles kehren Sie so viel leichter zum Zustand vor der Einrichtung von Linux zurück. Als Alternative setzen Sie Super Duper ein, das Sie über www.pcwelt.de/zjf2 erhalten. Auf der Seite http://refit.sourceforge.net finden Sie das Programm Refit als Binärdatei sowie zahlreiche Hinweise zu seinem Einsatz. Roderick Smith bietet seinen Boot-Manager Refind unter www.rodsbooks.com/refind an. Wenn Sie die Software dauerhaft nutzen wollen, ist die Abgabe einer kleinen Spende natürlich eine faire Geste.

71

PC & Software / Apple-PCs

Versuch geblockt: Die neueren OS-X-Versionen wollen Sie vor potenziell gefährlichen Downloads aus dem Internet schützen und verweigern zunächst die Installation des Programms. Beim zweiten Versuch klappt es dann aber. Laden Sie sich danach die ISO-Datei der gewünschten Distribution auf Ihren Mac. Starten Sie nach erfolgreicher Übertragung das Programm „Festplatten-Dienstprogramm“ und ziehen die ISO-Datei mit der Maus in den linken Abschnitt des Programmfensters. Markieren Sie den Eintrag und klicken anschließend auf die Schaltfläche „Brennen“. Sie werden vom Mac dazu aufgefordert, einen Datenträger einzulegen, und können jetzt die Start-DVD anlegen. Ist der Brennvorgang abgeschlossen, legen Sie die neue Start-DVD wieder in das DVD-Laufwerk ein. Regeln Sie die Lautstärke und die Helligkeit des Bildschirms sicherheitshalber auf den maximalen Wert. Starten Sie jetzt Ihren Mac neu.

Linux-Installation auf dem Mac Halten Sie beim Starten die Alt-Taste gedrückt. Ihr Mac sollte Ihnen in der Auswahl jetzt schon einmal den Start vom eingelegten Datenträger anbieten, auch wenn dieser mit „Windows“ beschriftet sein sollte. Sobald Sie diesen auswählen, rufen Sie das Einrichtungsprogramm von Ubuntu auf. Entscheiden Sie sich für die Installation, wird das Setup Ihnen anbieten, Ubuntu neben OS X zu installieren. Der Inhalt der Festplatte wird also korrekt erkannt. Umgehen Sie den Vorschlag des Systems, und wählen Sie in diesem Dialog den Eintrag „Etwas anderes“, um die Partitionen vollständig manuell anzulegen. In der Liste der Partitionen sollten Sie ohne große Mühe Ihre angelegten FAT-Einträge erkennen. Markieren Sie den größeren Eintrag, und klicken Sie auf den Schalter „Ändern“. Im nachfolgenden Dialog weisen Sie der Partition ein aktuelles Linux-Dateisystem wie Ext4 zu. Vergessen Sie dabei nicht, als Einhängepunkt das Zeichen „/“ einzutragen, damit Linux später auch weiß, wo es diesen Teil der Festplatte einbinden soll.

72

„Über diesen Mac“: Die notwendigen Informationen zu Ihrem Modell wie Herstellungsdatum, Prozessortyp und weitere Ke­nnziffern finden Sie über das eingebaute Werkzeug bequem heraus.

Markieren Sie die zweite und kleinere Partition. Bearbeiten Sie diese ebenfalls mit einem Klick auf „Ändern“. In der Liste „Formatieren als“ suchen Sie nach „Swap“. Während sich das Werkzeug nun um die Aufteilung Ihrer Festplatten kümmert, tragen Sie die weiteren Optionen der Installation ein. Wenn Sie Ubuntu schon einmal eingerichtet haben, kennen Sie die Schritte bereits. Sie müssen sich dabei für eine Tastaturbelegung entscheiden. Die Option „Deutsch-Macintosh“ ist hier im Zweifel die korrekte Auswahl. Zur Sicherheit probieren Sie noch eine Reihe von Sonderzeichen aus. Schließlich müssen Sie wenigstens einen Benutzer anlegen sowie ein möglichst sicheres Passwort für diesen Benutzer bestimmen. Nach einigen Minuten werden Sie vom System dazu aufgefordert, den Datenträger zu entfernen, und das System startet erneut. In Ihrem Boot-Manager wählen Sie mit den Pfeiltasten das Linux-Symbol aus. Unmittelbar nach dem ersten Systemstart sollten Sie die meisten Funktionen Ihres Mac auch unter Ubuntu nutzen können. Einige Anpassungsarbeiten sind aber häufig nicht zu vermeiden. Zu den Bauteilen, die leider erst den vollen Funktionsumfang nach einem manuellen Eingriff zeigen, gehört oft genug das WLAN-Modul. Sofern Sie über das Netzwerksymbol in der Menüleiste von Ubuntu keine Möglichkeit finden, WLAN zu aktivieren, wurde der Chipsatz wahrscheinlich nicht korrekt erkannt oder läuft nur im Zusammenspiel mit einem proprietären Treiber. Rufen Sie die „Systemeinstellungen“ auf. Dazu geben Sie unter Unity einfach den Begriff in das Suchfeld ein. Entscheiden Sie sich dort für „Software & Aktualisierungen“. Wechseln Sie im nachfolgenden Dialog in das Register „Zusätzliche Treiber“. Sie werden hier einen Hinweis auf mindestens einen Treiber für das WLAN-Modul finden. Markieren Sie das Optionsfeld davor und fahren Sie fort. Der Treiber

wird heruntergeladen und sofort eingebunden. Dazu ist eine vorübergehende Verbindung zum Internet per Ethernet notwendig. Wenn Sie jetzt auf das Netzwerksymbol klicken, werden Sie dort die Option „Funknetzwerk aktivieren“ finden und können so WLAN einschalten. Nur in seltenen Fällen ist es möglich, das integrierte Mikrofon zu verwenden. Gelegentlich gibt es ein Zwischen-Release, das diese Funktion zur Verfügung stellt, aber bereits beim nächsten Online-Update ist der Code an dieser Stelle wieder gebrochen. Direkt ohne weitere Eingriffe funktioniert dagegen in den meisten Fällen die Nutzung des kombinieren Lautsprecher-Mikrofon-Eingangs, der ebenfalls typisch für aktuelle Macbook-Modelle ist.

Linux wieder deinstallieren Wenn Sie zu einem späteren Zeitpunkt das Gastspiel von Linux auf Ihrem Mac wieder beenden wollen, ist das dank OS X problemlos möglich. Sie booten das Betriebssystem von Apple und rufen das bekannte Festplattendienstprogramm auf. Unter „Partition“ markieren Sie Ihre Linux-Partitionen mit der Maus und drücken auf das Minuszeichen am unteren Rand des Programmfensters. Nach einer Bestätigung werden die Partitionen entfernt. Suchen Sie in den Systemeinstellungen nach „Startvolume“, und legen Sie die Festplatte als Startmedium fest. Danach starten Sie den Mac neu. Mit dem Festplattendienstprogramm können Sie anschließend den freien Speicherplatz wieder dem Betriebssystem zuschlagen. Zum Schluss müssen Sie noch Refit deinstallieren. Dazu suchen Sie nach dem Ordner „efi“ auf dem System und entfernen diesen. Installation und Betrieb von Linux auf einem Mac sind noch immer nicht ganz trivial, aber auch nicht sonderlich kompliziert. Ganz ohne ergänzende Arbeiten werden Sie jedoch kaum auskommen.

Sonderheft Hacks 3/2014

PC-WELT

App-A u Abo in sgaben im klusive !

Stellen Sie uns auf die Probe! 3x PC-WELTplus zum Testpreis.

Als Abonnent erhalten Sie Ihre Ausgaben in der App gratis dazu.

Jetzt te sten: 3x PCWELTp lus inkl. Di gitalausgab en nur

14,99€

Satte

25%

gespar

t!

Und das ist drin im PC-WELTplus Testabo:

» 3x PC-WELTplus als Heft frei Haus mit je 3 Gratis-DVDs und 32 Extraseiten Spezialwissen. » 3x PC-WELTplus direkt auf Ihr Smartphone oder Tablet inklusive Videos, News-Reader, Bilderstrecken und interaktiven Links. Erhältlich für:

Leseproben, Infos und Bestellmöglichkeit unter:

www.pcwelt.de/testen Telefon: 0711/7252277 | E-Mail: [email protected] PC-WELT erscheint im Verlag IDG Tech Media GmbH, Lyonel-Feininger-Str. 26, 80807 München, Registergericht München, HRB 99187, Geschäftsführer: York von Heimburg. Die Kundenbetreuung erfolgt durch den PC-WELT Kundenservice, ZENIT Pressevertrieb GmbH, Postfach 810580, 70522 Stuttgart, Geschäftsführer: Joachim John

PC & Software / Programmieren

Software selbst gemacht

Quelle: © apops - Fotolia.com

Programmieren kann ein spannendes Hobby sein. Man lernt etwas dabei und produziert nebenbei auch noch nützliche Tools. Was Sie dafür benötigen, finden Sie auf der Heft-DVD.

Von Thorsten Eggeling

Heimwerkerarbeiten machen Schmutz und Lärm, außerdem benötigt man dafür jede Menge technischer Spezialgeräte. Aber es geht auch sauber und ohne schweres Werkzeug. Basteln Sie Ihre Software einfach selbst. Als Werkzeug genügt für den Anfang ein simpler Texteditor, wie er auf jedem PC zu finden ist. Wenn Sie Gefallen am Programmieren gefunden haben und mehr wollen, installieren Sie sich eine Software-Entwicklungsumgebung (IDE, Integrated Development Environment), mit der Sie auch die Programmoberfläche gestalten können. Auf Heft-DVD finden Sie mehrere davon.

Die beste Programmiersprache für eine Aufgabe finden Es gibt Programmiersprachen für jeden Zweck und in jeder Geschmacksrichtung. Die Grundlagen der Programmierung kann man mit jeder lernen, da die Prinzipien überall ähnlich sind. Die wichtigsten Schlüsselwörter haben Sie sich

74

wahrscheinlich in wenigen Stunden gemerkt. Schwierig wird es erst, wenn Sie komplexe Ideen umsetzen wollen und dafür auf bestimmte Funktionen des Betriebssystems angewiesen sind. Wenn es nur darum geht, ein paar kleine Helferlein für den Windows- oder Linux-Alltag zu erstellen, genügt eine Script-Sprache. Die Programme bestehen aus Textdateien, die von einem Script-Interpreter verarbeitet werden. Bei Windows sind das beispielsweise Stapelverarbeitungsdateien mit der Endung BAT oder CMD, die der Kommandozeileninterpreter ausführt. Die enthaltenen Befehle starten nachein­ ander Programme, verarbeiten deren Ausgaben oder versorgen sie mit Parametern, die die Programmausführung beeinflussen. Allgemeine Infos zur Verwendung von Batch-Dateien unter Windows finden Sie über www.pcwelt. de/xry4. Das Pendant unter Linux sind ShellScripts für die Kommandozeile. Infos dazu gibt es über www.pcwelt.de/hah3.

Mehr Möglichkeiten, aber auch einen höheren Lernaufwand haben Sie mit Programmiersprachen wie C# und Visual Basic (Microsoft-.Net) sowie Java, C, C++ oder Delphi. Damit erstellen Sie auch umfangreiche Programme für die Kommandozeile oder die grafische Oberfläche. Neben den klassischen Programmiersprachen für den Desktop gibt es noch PHP, Python und Perl. Auch hierbei handelt es sich um ScriptSprachen, die aber vor allem auf einem Webserver ausgeführt werden. Sie lassen sich aber auch lokal auf dem PC nutzen. Daneben gibt es noch Javascript, das zwar der Webserver ausliefert, aber der Javascript-Interpreter im Browser verarbeitet. Damit lassen sich die Elemente in einer Webseite ändern oder neu anordnen. Das ermöglicht dynamische Seiten mit wechselnden Inhalten etwa für Bildergalerien oder Datenbankabfragen. Weitere Infos und Programmierkurse zu allen genannten Sprachen finden Sie beispielsweise bei Wikibooks über www.pcwelt.de/hdwk.

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Programmieren

Tutorials und Infos zu Programmiersprachen gibt es im Internet auf vielen Websites und in Foren. Ein guter Startpunkt ist beispielsweise http://de.wikibooks.org.

Die Beispielanwendung „JavaScriptMiniQuiz.html“ zeigt, wie leicht sich eigene Programmierideen nur mit einem Texteditor und einem Browser umsetzen lassen.

Mit Javascript im Browser lauffähige Programme erstellen

Aufbau des JavascriptBeispielprogramms

Javascript in Verbindung mit HTML hat durch Smartphones und Tablets in den letzten Jahren an Bedeutung gewonnen. Hinter vielen Apps stehen Webdienste und Javascripts. Erfahrungen mit Javascript können Sie aber zuerst auf Ihrem Windows-PC sammeln. Alles was Sie dafür benötigen, ist ein Editor und ein Webbrowser. Bequemer geht es allerdings mit einem komfortableren Editor wie Notepad++ (auf Heft-DVD), der die Schlüsselwörter der jeweiligen Programmiersprache farblich hervorhebt („Syntax highlighting“) und so für mehr Übersicht sorgt. Noch mehr Funktionen liefert die kostenlose Entwicklungsumgebung Microsoft Expression Web 4 (www.pcwelt.de/qtyr). Javascript/HTML-Programme können Sie unter Windows oder Linux direkt im Browser ausprobieren. Windows bietet zudem HTML-Anwendungen (HTA-Dateien), die als eigenständige Programm laufen. Auf der Heft-DVD finden Sie unter dem Namen „Javascript-Quiz“ die Beispieldateien „JavaScriptMiniQuiz.html“ und „JavaScriptMiniQuiz.hta“. Beide enthalten fast den gleichen Code. Bei der HTA-Datei sind einige wenige Zusatzinfos für die Darstellung des Programmfensters und die Fenstergröße notwendig. Im Quellcode sind Kommentare enthalten, die die wichtigsten Funktionen erklären. Probieren Sie das Programm aber zuerst einmal aus, etwa indem Sie „JavaScriptMiniQuiz. html“ per Doppelklick im Browser öffnen. Sie sehen eine Frage und darunter vier mögliche Antworten. Wählen Sie eine aus, und klicken Sie auf „Antworten“. Sie erfahren dann, ob Ihre Wahl richtig war oder nicht. Die korrekte Antwort wird grün hervorgehoben. Weiter geht es per Klick auf „Nächste Frage“. Nach der vierten und letzten Frage erfahren Sie, wie viel Prozent der Fragen Sie richtig beantwortet haben.

Öffnen Sie die HTML-Datei in einem Editor. Sie enthält die typischen Elemente einer HTMLSeite zwischen den Tags „“, „“ und „“. Der Javascript-Code wird mit „“ eingeleitet. Am Anfang steht hinter „var dictionary“ eine kleine Datenbank mit den Fragen und Antworten. Hinter „ergebnis“ ist festgelegt, welche Antwort richtig ist. „[ '0','1','0','0' ]“ bedeutet, dass die zweite Antwort stimmt. Die Struktur sieht zwar etwas kompliziert aus, ist aber bei Javascript im Browser die einzige Möglichkeit Daten zu laden. Den Zugriff auf externe Dateien verhindert der Browser aus Sicherheitsgründen. Auf einem Webserver könnte man die Daten beispielsweise über PHP aus einer Datenbank lesen. Scrollen Sie an das Ende der Datei. Hier ist die Benutzeroberfläche in HTML definiert. Es gibt ein paar Platzhalter für die Ergebnisse in Divund Span-Tags und ein Formular für das Quiz.

PC-WELT

Sonderheft Hacks 3/2014

Die einzelnen Elemente lassen sich per Javascript über ihre ID ansprechen. Ein Beispiel: „“ ist der Platzhalter für die Frage. Mit der Javascript-Methode „document.getElementById("frage")“ erhält man eine Objektreferenz auf das Element mit der ID „frage“. Der Inhalt des HTML-Elements lässt sich dann über die Eigenschaft „innerHTML“ ändern. Die Zeile document.getElementById("frage"). innerHTML="Hier steht eine Frage" fügt den angegebenen Text zwischen den SpanTags ein. Auf diese Weise können Sie über Javascript den Inhalt einer HTML-Seite dynamisch ändern. Javascript-Code ausführen: Bei Javascript im Browser gibt es noch eine Besonderheit. Ein Script kann erst auf die HTML-Elemente zugreifen, nachdem der Browser diese komplett verarbeitet hat. Deswegen kommt am Anfang des Scripts die Methode „setInterval“ zum Einsatz. Darüber wird alle 10 Millisekunden ge-

Programmieren mit Microsofts .Net-Framework .Net (Dotnet) ist eine von Microsoft entwickelte Familie von Programmiersprachen. Es gibt Visualbasic.net, Visual C# („C Sharp“), Visual F# und einiges mehr. Die Entwicklungsumgebung Visual Studio Express bietet Microsoft kostenlos an. Mit Visual Studio Express 2013 für Windows entwickeln Sie Windows-Store-Apps. Dafür benötigen Sie Windows 8. Visual Studio Express 2013 für Windows Desktop läuft auch unter Windows 7. Damit erstellen Sie herkömmliche Windows-Programme. Sie können die Programme unter http://www.visualstudio.com/downloads kostenlos herunterladen. Nach der Installation müssen Sie sich bei Microsoft registrieren. Sie erhalten dann per E-Mail einen Produkt-Key, mit dem Sie das jeweilige Produkt dauerhaft nutzen können. Für Visual Studio bietet Microsoft eine Fülle von Informationen, die Sie im Programm über „Hilfe à Hilfe anzeigen“ abrufen können. C# und Visualbasic.net werden von vielen Programmierern weltweit genutzt, so dass Sie im Internet schnell Hilfe auch bei speziellen Problemen finden. Wenn Sie mit Vusual Studio erstellte Programme weitergeben, müssen Sie dafür sorgen, dass die jeweils nötige .Net-Laufzeitumgebung auf dem PC installiert ist.

75

PC & Software / Programmieren

Per Javascript kann der Browser nicht auf externe Dateien zugreifen. Die Daten für das Frage-Antwort-Spiel müssen Sie daher im Quelltext selbst in einer Variablen ablegen. prüft, ob der Browser die Seite fertig aufgebaut hat. Das ist dann der Fall, wenn die Eigenschaft „document.readyState“ den Wert „complete“ hat. Danach startet die Funktion „init()“, die dann die weiteren Programmfunktionen einleitet.

Variablen und Funktionen in Javascript Beim Umgang mit Javascript sollten Sie ein paar Grundregeln beachten. Die wichtigste davon: In Javascript wird grundsätzlich zwischen Groß- und Kleinschreibung unterschieden. Es muss genau „getElementById“ heißen, „getelementByID“ funktioniert nicht. Variablen müssen immer deklariert werden, beispielsweise „var anzFragen=0“. Die Namen der Variablen können Sie selbst bestimmen, Sie dürfen dabei aber keine reservierten Schlüsselwörter und keine Sonder- oder Leerzeichen verwenden. Erfolgt die Deklaration einer Variablen am Anfang des Scripts außerhalb einer Funktion, gilt die Variable für das ganze Script. Ist sie innerhalb einer Funktion deklariert, gilt sie nur hier. Javascript unterscheidet zwischen Variablen mit Zeichenketten oder Zahlen. Die Deklarationen var Frage="Was ist eine Variable?"; var y="42"; enthalten beide jeweils eine Zeichenkette. Fehlen die Anführungszeichen, lässt sich mit den Variablen auch rechnen: var y=42; var x=5; var z=y+x; „z“ enthält nach dieser Operation den Wert „47“. Bei Zeichenketten wirkt das „+“-Zeichen anders. Die Zeile var y="42"; var x="5"; var z=y+x; füllt die Variable „z“ mit der Zeichenkette „425“, verbindet also die Zeichen. Traditionell endet jede Befehlszeile mit einen Strichpunkt „;“. Das ist jedoch optional. Viele

76

Die meisten Browser enthalten Entwicklungswerkzeuge für Javascript und HTML. Sie können damit den Javascript-Code über einen Debugger zeilenweise ausführen.

Programmierer haben das jedoch beibehalten, um die Übersichtlichkeit zu verbessern. Sie müssen den Strichpunkt jedoch auf jeden Fall setzen, wenn mehrere Befehle in einer Zeile stehen und nicht durch einen Zeilenumbruch getrennt sind. Wenn Sie mehrere Werte in einer Variable speichern möchten, verwenden Sie ein Array wie für die Daten in der Beispieldatei „JavaScriptMiniQuiz.htm“. Ein einfaches Array kann beispielsweise so aussehen: var farben = ["rot", "grün", "blau"]; An das erste Element kommen Sie dann mit „farben[0]“ heran, an das zweite mit „farben[1]“. Die Zählung beginnt also bei „0“. Das müssen Sie beachten, wenn Sie anderweitig Zähler verwenden, etwa für „Fragen“ bei denen die Zählung mit „1“ beginnt. Funktionen: Damit der Programmcode übersichtlich bleibt, sollte Sie wann immer möglich Funktionen verwenden. Häufig benötigten Programmcode müssen Sie dann auch nur einmal eintippen und können ihn mehrfach verwenden. Die allgemein Form einer Funktion ist function Funktionsname() { Anweisungen }; In die runden Klammern setzen Sie Variablen für Parameter ein, das Schlüsselwort „return“ liefert einen Rückgabewert. Nach Aufruf von function Addieren (a,b) { return a + b }; mit var y = Addieren (40,2)); enthält die Variable „y“ den Wert „42“.

Javascript-Code entwickeln und im Browser prüfen Die grundlegenden Funktionen von Javascript sind schnell erlernt. Zum Nachschlagen können Sie beispielsweise http://de.selfhtml.org aufrufen. Hier finden Sie alles Wissenswerte

zu HTML und Javascript sowie zahlreiche Beispiele. Ein Entwicklungswerkzeug wie Microsoft Expression Web (www.pcwelt.de/qtyr) kann beim Lernen ebenfalls helfen. Die automatische Code-Ergänzung zeigt Ihnen die verfügbaren Methoden oder Eigenschaften an, wenn Sie einen Befehl eintippen. Alle aktuellen Browser bringen zahlreiche Entwicklungswerkzeuge mit, die Sie über die F12Taste aufrufen. In Firefox beispielsweise klicken Sie dann auf „Konsole“. In einem Javascript können Sie sich etwa über „console. log(x)“ den Wert der Variablen „x“ ausgeben lassen. Auf der Registerkarte „Debugger“ setzen Sie per Mausklick Haltepunkte vor eine Codezeile. Die Script-Ausführung stoppt dann an dieser Stelle, und Sie sehen die Werte der Variablen. Mit der F11-Taste können Sie den Code dann Zeile für Zeile abarbeiten und dabei jeweils die geänderten Werte beobachten.

Eigenständige Programme mit Lazarus entwickeln Lazarus ist eine Open-Source-Entwicklungsumgebung. Als Programmiersprache kommt Object Pascal zum Einsatz. Lazarus ist weitgehend kompatibel zum kommerziellen Delphi (www. embarcadero.com). Sie steht für Windows, Linux und Mac-OS X zur Verfügung. Die Windows- und Linux-Version finden Sie auf Heft-DVD. Wir empfehlen für Windows die 32-Bit-Version von Lazarus. Damit erstellte Programme laufen unter Systemen ab Windows XP. Wenn Sie Lazarus das erste Mal starten, öffnen sich mehrere Fenster. Das oberste Fenster zeigt die Menüleiste, Symbolleisten und mehrere Registerkarten. Unter den Registerkarten („Komponentenpalette“) sind Elemente zu sehen, die Sie in die Oberfläche Ihres Programms einbauen können, beispielsweise Schaltflächen, Eingabefelder oder Klickboxen. Der „Ob-

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Programmieren

Beim ersten Start von Lazarus öffnen sich mehrere Fenster. In dem zunächst leeren Formular bringen Sie die gewünschten Elemente des Programmfensters unter. jektinspektor“ auf der linken Seite zeigt Eigenschaften an, mit denen Sie das Aussehen oder die Funktion der Elemente bestimmen. Rechts davon ist ein Fenster mit dem Titel „Form1“. Dieses „Formular“ bildet später das Fenster Ihres Programms. In der Mitte sehen Sie den „Quelltexteditor“, in den Sie den Programmcode eintippen. Darunter gibt es noch das Fenster „Nachrichten“. Hier gibt Lazarus Informationen und Fehlermeldungen des Compilers aus.

Ein erstes einfaches Programm Klicken Sie auf der Registerkarte „Standard“ das Symbol für die Schaltfläche an („TButton“). Dann klicken Sie auf das Formular. Die Schaltfläche lässt sich an eine beliebige Position ziehen, und über die Anfasspunkte verändern Sie die Größe. Setzen Sie auf die gleiche Weise ein Texteingabefeld („TEdit“) in das Formular ein. Klicken Sie die Schaltfläche einmal an und ändern im Objektinspektor hinter „Caption“ die Beschriftung der Schaltfläche, etwa auf „Hallo Welt!“. Hinter „Name“ tragen Sie beispielsweise btnHallo ein. Klicken Sie auf das Text-Eingabefeld und löschen den Eintrag hinter „Text“. Hinter „Name“ tragen Sie edtHallo ein. Klicken Sie doppelt auf die Schaltfläche „Hallo Welt!“. Lazarus fügt in den Quelltexteditor automatisch die Zeilen

Das Unterprogramm „ReadMyXMLFile“ liest die Daten für Fragen und Antworten aus einer XML-Datei. Das Quiz lässt sich dadurch flexibel erweitern.

procedure TForm1. btnHalloClick(Sender: TObject); begin end; „procedure“ kennzeichnet in Pascal ein eigenständiges Unterprogramm. Daneben gibt es noch „function“, das für Unterprogramme mit Rückgabewerten verwendet wird. Danach folgt der Programmblock, der immer zwischen „begin“ und „end;“ steht. Achten Sie auf den Strichpunkt am Ende der Zeile. Er steht bei Pascal immer am Ende von Codeblöcken oder Anweisungen. Tragen Sie zwischen „begin“ und „end;“ folgende Zeile ein: edtHello.Text:=‘Hello World!‘; und starten Sie das Programm testweise (F9). Wenn Sie die Schaltfläche jetzt anklicken, setzt das Programm „Hello World!“ in das Texteingabefeld ein. An diesem einfachen Beispiel erkennen Sie den objektorientierten Ansatz von Pascal. Das Eingabefeld „edtHallo“ ist das Objekt und „Text“ ist eine Eigenschaft, die Sie zur Entwurfszeit auch über den Objektinspektor festlegen können. Weitere Eigenschaften sind beispielsweise „Width“ für die Breite des Objekts oder „Visible“, womit Sie die Sichtbarkeit festlegen. Als Hilfe für den Programmierer erscheint nach Eingabe des Punktes hinter einem Objektna-

men eine Liste mit allen verfügbaren Eigenschaften des jeweiligen Objekts (Property).

Ein Beispielprojekt für Lazarus Damit Sie den Unterschied zum JavascriptProgramm sehen, haben wir die gleiche Idee auch in Lazarus umgesetzt. Sie finden die Dateien unter dem Namen „Lazarus-Quiz“ auf der Heft-DVD. Öffnen Sie die Datei „MiniQuiz.lpi“ per Doppelklick. Über die F9-Taste kompilieren und starten Sie das Programm. Es funktioniert genau so wie das Javascript-Beispiel. Beenden Sie das Programm wieder, und sehen Sie sich den Quellcode im Editor an. Der wesentliche Unterschied ist im Unterprogramm „ReadMyXMLFile“ zu finden. Es liest die Fragen und Antworten aus der Datei „Fragen. xml“. Vom Aufbau her ähnelt die XML-Datei der Datenstruktur im Javascript. Die richtigen Antworten sind hier aber jeweils mit dem Attribut „R="1"“, die falschen mit „R="0"“ gekennzeichnet. Weitere Fragen-Antworten-Blöcke fügen Sie nach dem gleichen Muster einfach zwischen „“ und „“ ein. Im Quelltext finden Sie mehrere Kommentare, die die Abläufe beschreiben. Ausführlich Beschreibungen und zahlreiche Beispiele finden Sie unter http://wiki.lazarus.freepascal.org. Eine hilfreich Einführung in Object Pascal finden Sie auf www.delphi-treff.de.

Kostenlose Tools für die Software-Entwicklung Programm

Beschreibung

Geeignet für

Sprache

Seite

Javascript-Quiz

Beispielprojekt

Windows XP, Vista, 7,8

DVD



deutsch

75

Lazarus 1.0.14

IDE für Object Pascal

Windows XP, Vista, 7, 8, Linux

DVD

www.pcwelt.de/jjpz

deutsch

76

Lazarus-Quiz

Beispielprojekt

Windows XP, Vista, 7, 8, Linux

DVD



deutsch

77

Notepad++ 6.5.2

Texteditor

Windows XP, Vista, 7,8

DVD

www.pcwelt.de/302601 deutsch

75

Visual Studio Express 2013 für Windows

IDE für Windows-8-Apps

Windows 8.1

DVD

www.pcwelt.de/3zvp

deutsch

75

Visual Studio Express 2013 für Windows Desktop

IDE für Desktop-Anwendungen

Windows 7, 8, 8.1

DVD

www.pcwelt.de/3zvp

deutsch

75

Microsoft Expression Web 4

IDE für Webanwendungen

Windows XP, Vista, 7, 8

DVD

www.pcwelt.de/8xtu

deutsch

75

PC-WELT

Sonderheft Hacks 3/2014

Verfügbar auf Internet

77

PC & Software / Programmieren

Android-Apps im Eigenbau Mobile PCs in Form von Smartphones und Tablets werden immer wichtiger. Apps dafür lassen sich fast genauso leicht erstellen wie für den DesktopRechner. Von Thorsten Eggeling

Android ist ein kostenloses und quelloffenenes Betriebssystem, für das es auch kostenlose Entwicklungsumgebungen gibt. Wer selber Apps entwicklen möchte, findet die dafür nötigen Werkzeuge auf der Heft-DVD. Googles Entwicklungsumgebung Android Studio ist besonders gut für Einsteiger geeignet. Die Software gibt es für Windows, Linux und Mac-OS X. Die Windows- und Linux-Version 0.3.2 finden Sie auf Heft-DVD. Zusätzlich benötigen Sie das Java SE Development Kit (www. pcwelt.de/fi7x). Auf 64-Bit-Systemen installieren Sie die 32- und die 64-Bit-Version. Einen Java-Kurs für Einsteiger finden Sie beispielsweise unter www.programmr.com.

Erste Schritte in Android Studio Beim ersten Start von Android Studio sehen Sie einen Willkommensbildschirm. Klicken Sie hier zuerst am unteren Rand auf „Check for update now“ und installieren Sie das Update. Danach erstellen Sie über „New Project...“ eine neue App. Dabei unterstützt Sie ein Assistent. Hinter „Application name:“ geben Sie beispielsweise Hello World ein, und hinter „Module name:“ die Bezeichnung HelloWorld. Hinter

78

„Package“ gehört Ihre Entwicklerkennung, beispielsweise mein.name.helloworld. Die anderen Einstellungen können Sie belassen. Klicken Sie auf „Next“. Geben Sie hinter „Image file“ ein Icon für Ihre App an. Für erste Tests verwenden Sie einfach das vorgegebene Standard-Icon. Klicken Sie wieder auf „Next“. Für eine einfache App klicken Sie auf „Blank Activity“ und dann auf „Next“. In der Regel können Sie auch hier die Vorgabe übernehmen. Nach einem Klick auf „Finish“ erzeugt Android Studio das Projekt und zeigt dann das Hauptfenster.

Das Projekt bearbeiten Blenden Sie über die Tastenkombination Alt-1 das Fenster „Projekte“ ein. In der Baumansicht sehen Sie die Bereiche „HelloWorldProject“ und „External Libraries“. Klappen Sie den „HelloWorldProject“-Baum auf, navigieren Sie zu „HelloWorld à scr à main à java à mein. name.helloworld“, und öffnen Sie „MainActivity“ per Doppelklick. Sie sehen dann den zugehörigen Java-Code im Editor. Unterhalb von „main“ gibt es auch den Zweig „res à layout“. Darin liegt die Datei „fragment_main.xml“, die Sie ebenfalls per Doppelklick öffnen. Android

Studio schaltet dann zur Layout-Ansicht um. Hier gibt es eine Palette mit Elementen für die Benutzeroberfläche, einen KomponentenBaum und das Fenster für die Eigenschaften der Elemente. Bedienelemente hinzufügen: Setzen Sie weitere Elemente in das Layout ein. Klicken Sie in der Palette unter „Text Fields“ das Element „Plain Text“ an und dann im Layout auf die Stelle, an der Sie es einfügen möchten. Ein Rahmen hilft Ihnen bei der Positionierung. Im Fenster „Properties“ („Eigenschaften“) stellen Sie hinter „layout:width“ den Wert „match_parent“ ein. Dadurch geht das Textfeld über die gesamte Breite des Bildschirms. Darunter setzen Sie ein „Large Text“-Element. Tragen Sie in den Eigenschaften hinter „text“ beispielsweise Kein Name? ein. Sehen Sie sich das Feld hinter „id“ an. Darin steht der eindeutige Name dieses Elements. Android Studio sollte hier automatisch den Wert „@+id/textView2“ eingesetzt haben. Wenn nicht, müssen Sie Sie die ID entsprechend ändern. Ziehen Sie „Button“ mit der Maus in das Layout. Gehen Sie in den Eigenschaften auf „text“, und klicken auf die kleine Schaltfläche am rech-

Sonderheft Hacks 3/2014

PC-WELT

PC & Software / Programmieren

Android Studio: In der Design-Ansicht erstellen Sie die Oberfläche Ihrer App. Wählen Sie die gewünschten Elemente der Benutzeroberfläche in der „Palette“ aus, und fügen Sie sie per Mausklick in das Layout ein. ten Rand. Es öffnet sich ein Fenster, das Ihnen die vorhandenen String-Ressourcen anzeigt. Klicken Sie unten links auf „New Resource à News String Value“. Geben Sie hinter „Resource name:“ beispielsweise btn_ok ein und hinter „Resource value:“ den Wert „OK“. Schließen Sie beide Dialoge per Klick auf „OK“. Klicken Sie dann den obersten Text-View an. Hier sehen Sie hinter „text“ in den Eigenschaften „@string/hello_world“. Um den Text zu ändern, gehen Sie im Projektbaum auf „ HelloWorld à scr à main à res à values“ und klicken doppelt auf „strings.xml“. Ändern Sie den Wert in „Hello world!“ auf „Wie ist Ihr Name?“. Java-Code erstellen: Bis jetzt leistet die App noch nichts. Damit beim Klick auf die Schaltfläche „OK“ auch etwas passiert, müssen Sie einen Programmcode hinterlegen. Wechseln Sie über den Reiter „MainActivity.java“ zum Code-Editor. Fügen Sie hier innerhalb der Klassendefinition „public class MainActivity extends Activity“ den Code public void onClick(View v) { EditText myEditText = (EditText) findViewById(R.id.editText); TextView myTextView = (TextView) findViewById(R.id.textView2); myTextView.setText("Ihr Name ist: " + myEditText.getText());} ein. Dieser sucht – jeweils über die Methode „findViewById“ – die Elemente mit den Namen „editText“ und „ textView2“. Die letzte Zeile liest den Inhalt des Eingabefeldes „editText“ mit „getText“ aus und setzt den ermittelten Inhalt mit „setText“ in „textView2“ ein. Im Editor sehen Sie noch einige rote Markierungen, die Sie auf Fehler hinweisen. Das liegt daran, dass einige der nötigen Java-Klassen

PC-WELT

Sonderheft Hacks 3/2014

Mini-Quiz: Die Beispiel-App (auf Heft-DVD) zeigt, wie Sie Daten aus einer XML-Datei lesen und wie sich die Oberfläche der App dynamisch mit den Inhalten für Fragen und Antworten füllen lässt. Zum Testen können Sie einen Emulator verwenden.

noch nicht eingebunden sind. Klicken Sie mit der Maus in das rot markierte „View“, und drücken Sie die Tastenkombination Alt+Eingabetaste. Android Studio ergänzt dann die Klassen im oberen Bereich des Editors. Entsprechend verfahren Sie mit dem rot markierten „EditText“ und „Text-View“. Gehen Sie auf die Registerkarte „fragment_ main.xlm“ und dann im Layout auf die „OK“Schaltfläche. Im Fenster „Properties“ suchen Sie die Zeile „onClick“. Per Klick auf den kleinen Pfeil am Ende der Zeile öffnen Sie ein Menü, in dem Sie „onClick (mein.name.helloworld. MainActivity)“ auswählen. Damit haben Sie den On-Click-Event der Schaltfläche mit der Ereignisbehandlungsroutine „onClick“ verbunden.

Die eigene App ausprobieren Für einen Test der App verwenden Sie den Android-Emulator oder ein Android-Gerät. Den Emulator richten Sie über „Tools à Android à AVD Manager“ ein. Klicken Sie auf „New“, und tragen Sie die gewünschten Werte in den Dialog ein. Mindestens erforderlich sind die Angaben hinter „AVD Name“, „Device“ und „Target“. Klicken Sie auf die Schaltfläche „OK“, um

die Änderungen zu speichern, und noch einmal auf „OK“, um zu bestätigen. Gehen Sie im Menü auf „Run à Run 'HelloWorld-HelloWorld'“. Aktivieren Sie die Option „Launch Emulator“, wählen Sie unter „Android virtual Device“ den gewünschten Emulator aus, und klicken Sie auf „OK“. Es dauert dann eine Weile, bis der Emulator gestartet ist. Ihre App erscheint darin automatisch, sobald er bereit ist. Sie können die Beispiel-App jetzt testen, indem Sie einen Namen eintippen und dann auf „OK“ klicken. Um die App auf einem Android-Gerät zu testen, müssen Sie hier in den Einstellungen unter „Entwickler-Optionen“ ein Häkchen vor „USBDebugging“ setzen. Ab Android 4.2 sind die Entwickler-Optionen versteckt. Gehen Sie in den Einstellungen auf „Über dieses Telefon“ oder „Über dieses Tablet“, und tippen Sie dann siebenmal auf „Buildnummer“. Verbinden Sie das Gerät per USB-Kabel mit dem PC. Danach ist der Ablauf der gleiche wie beim Emulator. Klicken Sie auf „Run à Run 'HelloWorld-HelloWorld'“, wählen Sie unter „Choose a runnning device“ Ihr Android-Gerät aus, und klicken Sie auf „OK“.

Ein komplexeres Beispiel Auf Heft-DVD finden Sie die Beispiel-App „Mini-Quiz“ für Android Studio. Diese entspricht funktional dem Programmierbeispiel aus dem Artikel „Software selbst gemacht“ auf Seite 74. Der Aufbau ähnelt dem Javascript-Beispiel. Hier wie dort müssen die Elemente der Oberfläche mit „getElementById“ beziehungsweise „findViewById“ gesucht und dann angesprochen werden. Eine Besonderheit der Android-App sehen Sie in der Funktion „ReadXML“. Die App liest die Fragen und Antworten aus der XML-Datei „fragen.xml“, die als Resource eingebunden ist. Die Kommentare im Quelltext zeigen Ihnen, wie Sie die Datenbank-Datei auch aus dem Internet laden können.

79

Hardware-Hacks / Fritzbox

Foto: © AVM-Pressefoto

Fritzbox ausreizen

Nur für den Einsatz als Router ist die Fritzbox eigentlich zu schade. Erforschen Sie die Fritzbox über einen Fernzugang, und erweitern Sie die Funktionen mit alternativer Firmware. Von Thorsten Eggeling

Die Fritzbox von AVM (www.avm.de) ist der in Deutschland mit Abstand am weitesten verbreitete DSL-Router. Die AVM-Hardware steckt auch in Geräten von 1&1, etwa der Surf & Phone Box oder dem Homeserver, und in Routern der Telekom (Speedport). Das Gerät stellt – je nach Modell – den Zugang zum Internet über Kabel oder WLAN bereit und kann auch als Telefonanlage dienen. Als Betriebssystem kommt Linux zu Einsatz, der Quellcode der Open-Source-Komponenten wird von AVM veröffentlicht. Durch die große Verbreitung der AVM-Geräte gibt es eine besonders aktive Community, die sich mit den Interna der Fritzbox beschäftigt und Modifikationen entwickelt. Sie können dann beispielsweise Web-, Mail- oder Streaming-Server auf Ihrer Fritzbox betreiben oder beliebige anderer Programme ausführen. Wichtige Hinweise: Eingriffe in die Software der Fritzbox sind nicht ganz ohne Risiko. Wenn dabei etwas schiefgeht, funktioniert das Gerät

80

möglicherweise nicht mehr. Suchen Sie daher im Internet nach Erfahrungen anderer Benutzer mit dem von Ihnen verwendeten FritzboxModell. Denn nicht jede Modifikation funktioniert auch mit jedem Gerät. Beachten Sie außerdem, das Sie wahrscheinlich die Gewährleistung verlieren, wenn Sie Fritzbox-Hacks durchführen. Wir haben die Tipps in diesem Beitrag auf einer Fritzbox 7390 mit der zurzeit aktuellen Firmware-Version 84.06.01 (Fritz-OS 6.01) nachvollzogen. Bei anderen Modellen können die Menüpunkte anders beschriftet sein. Die prinzipielle Vorgehensweise ist jedoch bei allen Geräten ähnlich.

1

Daten-Backup und Vorsichtsmaßnahmen

Die Konfigurationsoberfläche der Fritzbox erreichen Sie im Browser standardmäßig über http://192.178.0.1 oder http://fritz.box. Gehen Sie im Menü der Fritzbox auf „System à Siche-

rung“, und klicken Sie auf „Sichern“. Speichern Sie die Datei auf der Festplatte. Sie können die Datei mit einem Kennwort sichern, damit sie niemand unerlaubt einsehen kann. Um die gesicherte Konfiguration wieder auf den Router zu bekommen, gehen Sie auf „System à Sicherung“ und auf den Reiter „Wiederherstellen“. Nach einem Klick auf „Durchsuchen“ wählen Sie die Sicherungsdatei aus. Der Router liest sie ein und startet anschließend neu. Recovery für die Fritzbox: Damit Sie die Sicherungsdatei wieder auf die Fritzbox bekommen, muss der Router natürlich erreichbar sein. Komplizierter wird es, wenn Sie das Konfigurationsmenü der Fritzbox nicht mehr aufrufen können. Nur in diesem Fall sollten Sie auf das Recovery-Tool von AVM zurückgreifen. Sie können das Programm über ftp://ftp.avm. de/fritz.box herunterladen. Suchen Sie dort das Verzeichnis für Ihr Fritzbox-Modell. Im Ordner Ihres Modells gehen Sie ins Verzeichnis „x_ misc/deutsch“ und laden die aktuellste Version

Sonderheft Hacks 3/2014

PC-WELT

Hardware-Hacks / Fritzbox

Der erste Schritt bei Experimenten mit der Fritzbox: Sichern Sie die aktuellen Einstellungen des Routers. Bei Bedarf können Sie die Sicherungsdatei mit einem Kennwort schützen. Bei Problemen stellen Sie die Einstellungen aus der Kopie wieder her. der dort aufgeführten EXE-Dateien, um den Download zu starten. Schließen Sie die Fritzbox per LAN-Kabel an einen Rechner an. Am Router stecken Sie das Kabel in den Port 1. Sonst darf keine Verbindung zur Fritzbox bestehen, entfernen Sie auch das Kabel vom DSL-Anschluss. Anschließend deaktivieren Sie auf dem Rechner alle Firewalls: Vergessen Sie nicht, sie nach erfolgreicher Wiederbelebung der Fritzbox wieder einzuschalten. Per Doppelklick auf die heruntergeladene EXE-Datei starten Sie nun den Recovery-Vorgang. Folgen Sie den Anweisungen auf dem Bildschirm. Nach Abschluss des Vorgangs konfigurieren Sie die Fritzbox neu, oder Sie verwenden die Sicherungsdatei für die Wiederherstellung.

2

Telnet-Zugang zur Fritzbox einrichten

Der Zugriff auf die Interna der Fritzbox kann per Telnet erfolgen. Dabei handelt es sich um ein Netzwerkprotokoll beziehungsweise Programm, worüber Sie eine Linux-Kommandozeile über das Netzwerk nutzen können. Um Telnet für die Fritzbox zu nutzen, müssen Sie den Telnet-Dienst des Routers aktivieren: Das erledigen Sie am einfachsten durch ein Telefon, das an der Fritzbox angeschlossen ist. Mit der Tastenfolge #96*7* startet Telnet, mit #96*8* beenden Sie den Dienst. Das funktioniert auch, wenn Sie kein Telefon an der Fritzbox angeschlossen haben. Sie müssen dann vorher eines im Konfigurationsmenü einrichten: Das erledigen Sie über „Telefonie à Telefoniegeräte à Neues Gerät einrichten“. Aktivieren Sie die Option „Telefon (mit und ohne Anrufbeantworter)“, und klicken Sie auf „Weiter“. Wählen Sie anschließend „FON 1“ und vergeben einen beliebigen Namen für das Telefon. Bei der anschließenden Frage der

PC-WELT

Sonderheft Hacks 3/2014

Kein Telefon an der Fritzbox: Erstellen Sie Telefonbucheinträge, um Telnet zu aktivieren und zu deaktivieren. Diese verwenden Sie dann in der Weboberfläche über die „Wählhilfe“.

Fritzbox, ob das Telefon klingelt, klicken Sie auf „Ja“. Nun tragen Sie noch eine Fantasienummer für die ausgehenden Gespräche des Telefons ein und wählen, dass das Telefon alle ankommenden Gespräche annehmen soll. Bestätigen Sie die Eingaben per Klick auf „Übernehmen“. Wechseln Sie anschließend zum Telefonbuch: Dort erstellen Sie einen Eintrag mit dem Namen „Telnet einschalten“ und der Rufnummer #96*7*. Ein weiterer Eintrag erhält den Namen „Telnet ausschalten“ und die Rufnummer #96*8*. Gehen Sie auf den Reiter „Wählhilfe“, setzen Sie ein Häkchen vor „Wählhilfe verwenden“ und wählen dafür das gerade eingerichtete Telefon aus. Damit Sie die Wählhilfe verwenden können, muss das Konfigurationsmenü der Fritzbox mit einem Passwort geschützt sein – das gehört ohnehin zu den

grundlegenden Sicherheitsregeln beim Umgang mit dem Router. Nun aktivieren oder deaktivieren Sie Telnet einfach, indem Sie auf die Nummer im Telefonbuch klicken. Wenn Sie eine ältere Fritzbox ohne Telefonfunktion besitzen, können Sie Telnet auch über eine Firmware-Modifikation nachrüsten (à Punkt 4 und 5).

3

Telnet-Fernzugang zur Fritzbox nutzen

Telnet verwenden Sie unter Windows am besten über das kostenlose Programm Putty (www. pcwelt.de/729799 und auf Heft-DVD). Es beherrscht auch verschlüsselte Verbindungen über SSH (Secure Shell). Kopieren Sie das Programm über die Oberfläche der Heft-DVD in ein beliebiges Verzeichnis, und starten Sie es. Geben Sie unter „Host Name (or IP address)“

Eigene Programme erstellen Nachdem Sie Freetz wie in à Punkt 4 und 5 beschrieben eingerichtet haben, können Sie auch einzelne Programme erstellen, ohne die Freetz-Firmware vorher zu flashen. Für ein kleines Beispiel legen Sie in einem Editor eine Textdatei mit folgenden vier Zeilen an: #include int main(int argc, char *argv) {printf("Hallo Fritzbox.\n"); return(0);} Speichern Sie die Datei unter dem Namen „hello.c“, und kopieren Sie sie auf die Netzwerkfreigabe der virtuellen Freetz-Maschine. Führen Sie hier folgende zwei Zeilen aus: export PATH=~/freetz-devel/toolchain/build/mips_gcc-4.7.3_ uClibc-0.9.33.2-nptl/mips-linux-uclibc/bin:$PATH mips-linux-gcc hello.c -o hello Die resultierende Datei „hello“ kopieren Sie auf den USB-Stick der Fritzbox. Öffnen Sie über Telnet ein Kommandozeile auf der Fritzbox, und wechseln Sie in das Verzeichnis „/var/media/ftp“ und hier in das Verzeichnis mit dem Namen des USB-Sticks. Starten Sie das Programm mit ./hello. Es gibt dann „Hallo Fritzbox.“ aus.

81

Hardware-Hacks / Fritzbox

Befehle eingeben: Im Telnet-Fenster arbeiten Sie auf der Linux-Kommandozeile. Mit dem Befehl cat /proc/sys/urlader/environment beispielsweise lassen sich Infos zur Fritzbox ausgeben.

Freetz-Source-Code: Die Freetz-Dateien laden Sie sich über svn aus dem Repositorium der Entwickler herunter (checkout). Im Trunk-Zweig sind immer die neuesten Versionen zu finden.

den Namen oder die IP-Nummer der Fritzbox ein. Standardmäßig ist das 192.168.178.1. Bei „Connection type“ wählen Sie die Option „Telnet“, und unter „Saved Session“ tippen Sie eine Bezeichnung ein, beispielsweise Fritzbox. Klicken Sie auf „Save“ und dann auf „Open“. Tippen Sie das Passwort ein, das Sie auch für die Weboberfläche der Fritzbox vergeben haben, und drücken Sie die Enter-Taste. Das Passwort wird – wie bei Linux-Terminals üblich – bei der Eingabe nicht angezeigt, und es gibt auch keine Sternchen als Hilfe. Sie sehen jetzt die Linux-Kommandozeile Ihrer Fritzbox. Mit cd können Sie hier in ein anderes Verzeichnis wechseln, und ls zeigt Ihnen den Inhalt eines Verzeichnisses an. Die Befehlseingabe schließen Sie immer mit der Enter-Taste ab. Eine Übersicht mit den wichtigsten Befehlen für Einsteiger finden Sie beispielsweise über www.pcwelt.de/n5hx. Über den Telnet-Zugang können Sie der Fritzbox ein paar Geheimnisse über ihr Innenleben entlocken: Der Befehl free beispielsweise zeigt den gesamten, den belegten und den freien Arbeitsspeicher des Routers in KByte an. Mit mpstat bekommen Sie heraus, wie hoch die CPU-Last ist, und top zeigt die laufenden Pro-

82

zesse an und wie viel Speicher und CPU-Zeit sie verbrauchen. Mit der Zeile cat /proc/sys/urlader/environment erhalten Sie eine längere Liste mit Angaben zu Ihrer Fritzbox. Welche Angaben in dieser Liste stehen, hängt vom Modell der Fritzbox ab. cat /proc/meminfo liefert Angaben zur Speichergröße und Belegung und cat /proc/cpuinfo zum Prozessor-Typ. Viel Sinnvolles können Sie über Telnet noch nicht erreichen. Dazu müssen Sie erst eigene Programme auf der Fritzbox installieren.

4

Entwicklungsumgebung Freetz einrichten

Freetz ist ein Entwickler-Framework für die Fritzbox. Damit erstellen Sie Firmware-Modifikationen oder eigene Programme für den AVMRouter. Freetz stellt eine Cross-Compiler-Umgebung für Linux bereit, mit der Sie Programme für die MIPS-CPUs der Fritzbox erzeugen. Das ist zwar unter jedem beliebigen LinuxSystem möglich, aber die nötigen Tools sind nicht leicht einzurichten. Deshalb ist es besser, das vorbereitete System Freetz-Linux (www. pcwelt.de/vso3) in Virtualbox (www.pcwelt. de/305969) zu verwenden. Sie finden beides

auf Heft-DVD. Nach der Installation von Virtualbox öffnen Sie die OVA-Datei von Freetz-Linux per Doppelklick. Es öffnet sich ein Virtualbox-Fenster, in dem Sie auf „Importieren“ klicken. Danach klicken Sie in der Konfigurations-Übersicht von Virtualbox auf „Netzwerk“. Stellen Sie hinter „Angeschlossen an“ den Eintrag „Netzwerkbrücke“ ein, und wählen Sie hinter „Name“ den aktiven Netzwerkadapter. Per Klick auf „Starten“ starten Sie den virtuellen PC. Als Benutzernamen und Passwort geben Sie für die Anmeldung jeweils freetz ein. Sie könnten jetzt im Fenster der virtuellen Maschine weiterarbeiten. Es ist jedoch komfortabler, dafür Putty zu verwenden. Die IP-Nummer des virtuellen PCs bekommen Sie über den Befehl ifconfig heraus. Konfigurieren Sie dann Putty wie in à Punkt 3 beschrieben. Setzen Sie aber diesmal unter „Connection type“ die Option „SSH“, und klicken Sie auf „Open“. Tippen Sie hinter „login as:“ den Benutzernamen freetz ein und als Passwort ebenfalls freetz. Danach aktualisieren Sie zuerst das virtuelle System mit den drei Zeilen sudo apt-get update sudo apt-get upgrade sudo apt-get install libacl1-dev libcap-dev nach der ersten Zeile geben Sie als root-Passwort (Administrator) freetz ein, die DownloadAbfrage bestätigen Sie mit der Enter-Taste. Nach diesen Vorbereitungen laden Sie den Freetz-Source-Code herunter. Da sich das System in einer fortlaufenden Entwicklung befindet, gibt es einen stabilen und damit bewährten Entwicklungszweig, in den allerdings Änderungen für neue Fritzbox-Modelle und Fritz-OS-Versionen noch nicht eingeflossen sind. Über http://freetz.org/browser/branches können Sie sich jeweils per Klick auf „freetzstable-2.0 “ und dann auf „FIRMWARES“ eine Liste der unterstützten Modelle und FirmwareVersionen von AVM anzeigen lassen. Sollte das Gewünschte nicht dabei sein, verwenden Sie den Entwicklerzweig http://freetz.org/browser/ trunk, den auch wir für die Fritzbox 7390 und Fritz-OS 6.01 eingesetzt haben. Wie immer bei neuer Software besteht hier allerdings die Gefahr, das nicht alles perfekt funktioniert und die Dokumentation bei http://freetz.org der Entwicklung hinterherhinkt. Der Download der Dateien erfolgt in diesem Fall über die Zeile svn checkout http://svn.freetz. org/trunk freetz-devel Wenn Sie die stabile Variante einsetzen wollen, verwenden Sie svn checkout http://svn.freetz. org/branches/freetz-stable-2.0

Sonderheft Hacks 3/2014

PC-WELT

Hardware-Hacks / Fritzbox

Konfiguration der Freetz-Entwicklungsumgebung: Sie erfolgt menügeführt. Unter „Packages“ wählen Sie, welche Programme Sie in die Firmware integrieren möchten. Wir beziehen uns jedoch in diesem Artikel auf den Trunk-Zweig der Freetz-Entwicklung.

5

Mit Freetz Programme für die Fritzbox erstellen

Nach dem Download geben Sie die zwei Zeilen cd freetz-devel make menuconfig ein. Es erscheint ein Konfigurationsmenü, durch das Sie mit den Cursor-Tasten steuern und mit der Enter-Taste bestätigen. Mit der Leertaste wählen Sie eine Option aus, und mit der Tab-Taste wechseln Sie zwischen Optionen oder Menüpunkten. Stellen Sie unter „Hardware type“ das Modell Ihrer Fritzbox und unter „Firmware version“ die Fritz-OS-Version ein. In der Zeile „Firmware language“ muss „de – deutsch“ stehen. Ändern Sie außerdem unter „Level of user competence“ die Einstellung auf „Expert“. Über „Packages à Packages“ wählen Sie Tools aus, die Sie in die Firmware einbauen wollen. Je nach Router-Modell stehen unterschiedliche Programme zur Auswahl. Da nur 8 oder 16 MB Platz für das Firmware-Image zur Verfügung stehen, müssen Sie die meisten Zusatzprogramme auf einen USB-Stick auslagern, den Sie an die Fritzbox anschließen. Wählen Sie für einen ersten Test beispielsweise nur den Dateimanager „Midnight Commander“ („mc“) und darunter bei „Configuration“ alle verfügbaren Module aus. Gehen Sie danach im Hauptmenü auf „External processing“, und aktivieren Sie hier „mc“ und alle Module unter „libraries“. Aktivieren Sie im Hauptmenü außerdem „Replace kernel“. Danach beenden Sie die Konfiguration mit „Exit“ und bestätigen das Speichern mit „Yes“. Zurück auf der Kommandozeile geben Sie make ein, um den Build-Prozess zu starten. Beim ersten Durchlauf kann das eine längere Zeit dauern, und Freetz muss noch etliche Da-

PC-WELT

Sonderheft Hacks 3/2014

Freetz-Firmware-Datei flashen: Das geht über den Update-Mechanismus der Fritzbox. Nach dem Neustart erreichen Sie die neuen Funktionen über den Menüpunkt „Freetz“.

teien herunterladen. Wenn Sie später weitere Pakete hinzufügen, geht es deutlich schneller. Zum Schluss liegen im Verzeichnis „images“ zwei neue Dateien: Die eine mit der Endung „.image“ ist die neue Firmware. Die andere trägt die Endung „.external“ und enthält die Dateien für den USB-Stick.

6

Neue Firmware auf die Fritzbox flashen

Geben Sie in die Adresszeile des WindowsExplorers beispielsweise \\192.168.178.33 ein, und bestätigen Sie mit der Enter-Taste. Ersetzen Sie die IP-Nummer durch die in à Punkt 4 per ifconfig für die virtuelle Maschine ermittelten Nummer. Damit verbinden Sie sich mit der Netzwerkfreigabe der virtuellen Maschine (Benutzername/Passwort: freetz). Wechseln Sie in den Ordner „freetz-devel\images“, und kopieren Sie die Dateien in ein beliebiges Verzeichnis auf Ihrem PC. Öffnen Sie im Browser die Weboberfläche der Fritzbox, und gehen Sie auf „System à Update“. Wechseln Sie auf die Registerkarte „Fritz!OS-Datei“, klicken Sie auf „Neues FRITZ!OS suchen“, und geben Sie die Datei mit der Endung „.images“ an. Klicken Sie

auf „Update starten“. Die Warnmeldung übergehen Sie mit „Update fortsetzen“. Wenn der Vorgang abgeschlossen ist, melden Sie sich erneut bei der Weboberfläche der Fritzbox an. Verbinden Sie einen USB-Stick mit der Fritzbox. Dieser sollte unter „Heimnetz à USB-Geräte“ angezeigt werden. Klicken Sie links unten auf „Freetz“. Zum Anmelden verwenden Sie den Benutzernamen admin und das Passwort freetz. Gehen Sie auf „System à Firmware-Update“, klicken Sie auf „externalDatei hochladen (optional)“ und wählen über „Durchsuchen“ die Datei mit der Endung „.external“ aus. Klicken Sie auf „Datei hochladen“. Loggen Sie sich über Putty auf der Fritzbox ein. Als Benutzername geben Sie root ein, das Passwort ist freetz. Sie werden danach aufgefordert, das Passwort zu ändern. Mit dem Befehl mc starten Sie den Dateimanager Midnight Commander vom USB-Stick. Wenn alles funktioniert, fügen Sie wie in à Punkt 5 beschrieben weitere Pakete hinzu und flashen die neue erstellte Image- und ExternalDatei. Bei einigen Paketen ist eine zusätzlich Konfiguration erforderlich. Anleitungen dazu finden Sie im Wiki von http://freetz.org.

Alternative Firmware für andere Router Alternative Firmware-Versionen für Router bringen auch alten Geräten neue Fähigkeiten bei und bieten Funktionen und Einstellungen, die sonst nur in deutlich teureren High-End-Geräten zu finden sind. Relativ weit entwickelt ist DD-WRT (www.dd-wrt.com), das sich auf zahlreichen Routern etwa von Asus, Buffalo oder Netgear einsetzen lässt. Ein weiteres System ist Open-WRT (https://openwrt.org). Diese Variante erinnert mehr an eine Linux-Distribution und bietet einen eigenen Paketmanager, um gezielt Fähigkeiten nachzurüsten. Eine Liste der unterstützten Router-Modelle gibt es auf der OpenWRT-Website. Tomato-USB (http://tomatousb.org) läuft auf vielen Routern mit Broadcom-Chipsatz von Linksys, Asus oder Buffalo. Die Tool ist ebenfalls modular aufgebaut und hat nachrüstbare Funktionen anhand von Zusatzpaketen mit an Bord. Ansonsten unterscheidet es sich im Wesentlichen nur durch eine andere Weboberfläche von den anderen Projekten.

83

Hardware-Hacks / Kamera-Hacks

Fotografie & DIY Fotoausrüstung ist teuer, und die Anschaffung lohnt sich für Hobbyfotografen kaum. Do-it-yourselfErgänzungen erzielen jedoch oft verblüffende Ergebnisse – und das gratis. Von David Wolski

Makro- und Nahaufnahmen brauchen ideale Lichtverhältnisse. Ein Aufsteckblitz oder gar der eingebaute frontale Aufhellblitz liefert keine akzeptablen Ergebnisse, sondern überbelichtete Bilder mit ungleichmäßiger Ausleuchtung. Für gelungene Nahaufnahmen bietet ein Lichtzelt gute Verhältnisse, indem es für eine weiches, schattenarmes Licht sorgt. Und mit wenig Aufwand und Materialien bauen Sie ein funktionales Lichtzelt einfach selbst. Sie benötigen dazu einen entsprechend groß dimensionierten Karton, dessen Kanten Sie mit Klebeband verstärken. Die Vorderseite des Kartons wird komplett entfernt, und die Grundfläche

84

Lichtzelt im Karton: Da es auf kurze Belichtungszeiten nicht ankommt, genügen hier normale Schreibtischlampen zur gleichmäßigen Ausleuchtung durch die Stoffwände.

Bei Produktbildern von Kleinteilen, etwa für eine Abbildung auf Ebay, ist jede Art von Schatten unerwünscht, und es kommt nur auf eine weiche, gleichmäßige Ausleuchtung an. Mit einem gewöhnlichen Blitzgerät oder mit dem eingebauten Aufhellblitz ist so etwas nicht zu machen. Die geniale Selbstbaulösung ist unansehnlich, aber umso effektiver: Ein weißer Kunstoffeimer dient zugleich als Lichtzelt und als Blitz-Diffusor für den internen Blitz der Kamera, um einen ähnlichen Effekt wie bei einem Ringblitz zu bekommen. Der Aufbau ist extrem einfach und besteht lediglich aus ei-

Quelle: David Wolski

Lichtzelt: Beleuchtung im Karton

Makrofotografie: Ministudio im Eimer

bleibt intakt, während Sie aus den drei senkrechten Seiten und der Oberseite mit einem Teppichmesser große Flächen ausschneiden. Ein weißes Leinentuch, etwa von einem alten Bettbezug, kommt über die ausgeschnittenen Flächen und kann mit einem Drahthefter oder Tacker befestigt werden. Für die seitliche Beleuchtung kommen normale Lampen in Frage, mit gleicher Farbtemperatur. Die Lichtstärke ist nicht entscheidend, da bei dieser Art von Studiofotografie die Belichtungszeit keine Rolle spielt. Ein sorgfältiger Weißabgleich ist für eine originalgetreue Farbwiedergabe aber in jedem Fall nötig, und es empfiehlt sich deshalb eine Aufnahme im RAW-Format.

Quelle: Ron Merlin (http://themerlinmenu.blogspot.com)

Für ambitionierte Hobbyfotografen ist professionelles Zubehör schlicht zu teuer, wenn es nicht täglich zum Einsatz kommt. Während Sie für Foto-Equipment tief in die Tasche greifen müssen oder lange nach echten Schnäppchen auf dem Gebrauchtmarkt suchen, gelingen bessere Bilder schon mit kleineren Selbstbauprojekten. Eine Charakteristik von Digitalfotografie ist, dass Sie Ergebnisse von Selbstbauprojekten sofort überprüfen können. Und gerade das macht dieses Gebiet so einladend für Experimente, die sich übrigens in vielen Fällen unabhängig vom verfügbaren Budget lohnen.

Makro-Fotostudio: Die leicht lichtdurchlässige Wand des Kunststoffeimers dient als Blitzdiffusor für den internen Aufhellblitz der Kamera.

Sonderheft Hacks 3/2014

PC-WELT

Hardware-Hacks / Kamera-Hacks

Gut gepolstert: Mit einem maßgeschneiderten Inlay mit einer Füllung aus Kunststoff und Karton können Sie jede Tasche zum sicheren Transport der Ausrüstung umbauen.

Quelle: Derek Wong (http://www.goingthewongway.com)

nem dünnwandigen Eimer, in dessen Boden Sie ein kreisrundes Loch schneiden, in welches das Objektiv der Kamera passt. Für die Ausleuchtung genügt schon der ausgeklappte Aufhellblitz einer DSLR, denn die Eimerwand verteilt das Licht gleichmäßig. Aufgrund des geringen Abstands zum Objektiv ist dieses MiniFotostudio natürlich nur für Makrofotografie mit entsprechender Optik geeignet.

Blitz: Die perfekte Bounce-Card Ein direkter Blitz führt in den meisten Fällen zu unansehnliches Bildern mit harten Schatten, konturlosen Motiven und dunklem Hintergrund – typische, tot geblitzte Party-Bilder, die anschließend niemand mehr sehen will. Ansehnliche Ergebnisse liefert nur ein indirekter Blitz, der auf Wand oder Zimmerdecke gerichtet wird. Die Ausleuchtung ist weicher und natürlicher, allerdings entstehen auf Gesichtern immer noch zu dunkle Schatten. Eine ideale Kombination zwischen indirektem Blitz und frontalem Licht liefert eine Reflektor-Karte (Bounce-Card), welche einen Teil des indirekten Blitzlichts nach vorne umlenkt. Bei Blitzgeräten gehört eine Bounce-Card nur bei teuren Modellen zum Lieferumfang, und einzeln sind die Reflektoren völlig überteuert. Mit wenig Material und Aufwand können Sie eine Bounce-Card leicht selbst bauen. Sie benötigen nur ein Stück weißes Moosgummi (circa 200 mm x 200 mm) und Klettband. Schneiden Sie das Moosgummi trapezförmig zu, und befestigen Sie es mit dem Klettband auf der Rückseite des Blitzgerät. Die Reflexionsfläche und damit die Stärke des frontalen Lichts können Sie so je nach Bedarf justieren. Die selbst gebaute Bounce-Card stellt damit jede fertig gekaufte in den Schatten und ist auch für teure Blitzgeräte eine ideale Ergänzung.

Unterwegs: Gepolsterte Transporttasche Beim Transport der Fotoausrüstung kommt es darauf an, dass die einzelnen Ausrüstungsteile nicht aneinanderschlagen und sich gegenseitig beschädigen. Um das Equipment sicher in einer Tragetasche unterzubringen, ist ein passendes gepolstertes Inlay nötig, wie es auch in Fototaschen als Polster und Abstandshalter dient. Wer mit einer Nähmaschine umgehen kann, braucht keine spezielle Transporttasche, sondern näht sich die passenden Inlays speziell für die eigene Ausrüstung selbst. Als Futter eignet sich Schaumstoff, der um stabilen Karton in der gleichen Größe gelegt wird. Der Karton hat die Aufgabe, das Inlay zu stabilisieren. Dieses Sandwich nähen Sie in ein absolut fusselfreies Gewebe ein und fixieren dazu alles mit langen Stecknadeln. Als Hülle eignen sich beispielsweise Nylon und Polyester-Baumwoll-Mischgewebe. Bei der Verarbeitung ist langsames Nähen wichtig, damit die Nadel nicht heißläuft und das Gewebe beschädigt. Zum Verbinden und Fixieren

des Inlays in der Tasche nähen Sie per Hand Klettband an geeigneten Stellen auf die einzelnen Polsterteile.

Schnurstativ: Kamera stabilisieren Ob Sie für eine Aufnahme ein Stativ brauchen, hängt nicht nur von der Belichtungszeit allein ab. Die Objektivbrennweite entscheidet, wann Sie Freihandfotos schießen können oder die Kamera stabilisieren müssen. Die Faustregel lautet: Wenn die Belichtungszeit länger als 1/Brennweite beträgt, ist ein Stativ nötig. Mit einem Schnurstativ können Sie die Kamera mit wenig Aufwand stabilisieren, um auch über den sicheren Bereich hinaus bei Freihandaufnahmen das Bild nicht zu verwackeln. Das Prinzip eines Schnurstativs ist einfach: Eine Schnur wird mit einer passenden Schraube am Objektivgewinde an der Kamera befestigt. Mit dem Fuß wird die Schnur gespannt, und der Gegenzug verringert von selbst Zittern und Wackeln, so dass Sie mit etwas Übung unverwackelte Bilder bis etwa 1/20 Sekunde Belichtungszeit bekommen.

Quelle: www.abetterbouncecard.com

Inoffizielle Firmware für Canon

Kleine Ergänzung, maximale Wirkung: Eine Bounce-Card (Reflektor-Karte) lenkt einen Teil des Blitzlichts nach vorne um und reduziert damit Schattenwurf bei indirekten Blitzen.

PC-WELT

Sonderheft Hacks 3/2014

Software-Modifikationen an der Firmware von Digitalkameras sind selten, da Hersteller den Code für freie Entwickler nicht dokumentieren. Eine Ausnahme ist das „Canon Hacker’s Development Kit“ (CHDK), das eine Firmware-Erweiterung für Canon-Kameras vom Typ Powershot und Ixus ist. Es wird temporär über die Speicherkarte geladen und ist kein permanenter Ersatz für die Hersteller-Firmware, die dabei völlig unberührt bleibt. Beachten Sie, dass laut Canon trotzdem die Herstellergarantie beim Einsatz der alternativen Firmware erlischt. Das Canon Hacker’s Development Kit erlaubt unter anderem Aufnahmen im RAW-Format, Serienbildfunktion für Belichtungsreihen, Live-Histogramme, Videofunktionen und Tethering über USB. Welche Kameras unterstützt werden, zeigt die Projekt-Webseite http://chdk.wikia.com/wiki/CHDK auf der rechten Seite unter „Supported Cameras“. Ein Eintrag bietet zu jedem unterstützten Modell weitere Informationen und gibt einen Download-Link zur passenden Version der alternativen Firmware an. Ein deutschsprachiges Forum zum Erfahrungsaustausch zu CHDK ist auf http://forum.chdk-treff.de zu finden, und ein von der Anwendergemeinde erstelltes Handbuch im PDF-Format können Sie über www.pcwelt.de/7aw3 abrufen.

85

Hardware-Hacks / Kamera-Hacks

Perfekte Auflage: Bohnensackstativ

Camera Obscura: Digitale Lochkamera

Der Name sagt schon alles über den Aufbau dieses genialen Hilfmittels aus. Das Bohnensack-Stativ ist ein weicher, aber stabiler Gewebebeutel mit etwa zwei Litern Fassungsvermögen, den Sie mit der bevorzugten Sorte von Hülsenfrüchten füllen. Das Funktionsprinzip ist wie bei den etwas aus der Mode gekommenen Sitzsäcken. Der Bohnensack dient der Kamera als stabilisierendes Kissen, um sie bei Aufnahmen mit länger als 1/60 Sekunde Belichtungszeit verwacklungsfrei auf dem Untergrund abzustützen. Da der Bohnensack flexibel ist, muss der Untergrund nicht eben sein. Drücken Sie die Kamera einfach so weit in den Sack, bis der Horizont im Sucher oder auf dem Kamerabildschirm gerade ist und die Kamera nicht wackelt. Da schon ein Druck auf den Auslöser bei langen Belichtungszeiten zur Verwacklung führt, hilft ein Fernauslöser oder ein weiterer Trick: Ohne Fernauslöser verwenden Sie einfach den internen Selbstauslöser der Kamera mit Timer.

Der einfachste Aufbau einer Kamera ist die „Camera Obscura“, die ohne Optik auskommt: In einem lichtdichten Kasten lässt lediglich ein winziges Loch gegenüber der fotoempfindlichen Fläche das Licht herein. Der kleine Durchmesser des Lochs begrenzt das einfallende Licht und erzeugt eine erkennbare Abbildung. Je weniger Lichtstrahlen hereinkommen, desto schärfer ist das Bild, denn bei einer Lochkamera wird das Licht nicht durch Linsen fokussiert. Zu einer Lochkamera lässt sich jede digitale Spiegelreflexkamera umbauen. Sie benötigen dazu nur einen lichtdichten Gehäusedeckel, Bohrmaschine, doppelseitiges Klebeband, Alufolie, Schere und eine Stecknadel. In den Objektivdeckel bohren Sie zunächst ein Loch, dass Sie von der Rückseite lichtdicht mit dem Doppelseitigen Klebeband und der Alufolie abkleben. Über das Loch in der Mitte darf sich nur Alufolie spannen. Möglichst zentriert stechen Sie behutsam in die Folie ein winziges Loch mit nur dem Bruchteil eines Millimeters als Durchmesser. Die Spiegelreflexkamera können Sie

86

Quelle: David Wolski

Gegen Zittern und Wackeln: Ein Schnurstativ wird einfach am Stativgewinde der Kamera befestigt und mit dem Fuß straff gezogen, um die Kamera zu stabilisieren.

Mit einem Gehäusedeckel zur Lochkamera: Wichtig für eine akzeptable Schärfe ist ein klar begrenztes, winziges Loch, dessen Durchmesser nur der Bruchteil eines Millimeters betragen darf. mit dem modifizierten Deckel nun als Lochkamera verwenden. Das winzige Loch entspricht etwa einer Blende von F/200, benötigt eine Belichtungszeit von mehreren Sekunden und geeignet ist hier nur der manuelle Modus der Spiegelreflexkamera. Es ist Experimentalfotografie, und für gute Bilder sind mehrere Versuche nötig – auch um das Loch klein genug zu stechen und so eine akzeptable Schärfe zu erhalten.

Quelle: Stephanie Zettl (http://www.zettlphoto.com)

Quelle: pcworld.com

Quelle: David Wolski

Abgelegt: Ein Bohnensack passt sich auf unebenem Untergrund der Auflagefläche der Kamera an und sorgt für verwacklungsfreie Aufnahmen – bei längeren Belichtungszeiten mit Selbstauslöser.

Camera Obscura: Eine optimal gelungene Aufnahme der professionellen Fotografin Stephanie Zettl mit einer digitalen Spiegelreflexkamera, die zur Lochkamera umfunktioniert wurde.

Sonderheft Hacks 3/2014

PC-WELT

PC-WELT

Impressum

ist eine Publikation des weltgrößten Computer­ zeitschriften-Verlags IDG und erscheint in vielen Ländern:

Impressum Verlag

IDG Tech Media GmbH Lyonel-Feininger-Straße 26 80807 München Telefon: 089/36086-0 Telefax: 089/36086-118 E-Mail: [email protected] Internet: www.pcwelt.de Chefredakteur Sebastian Hirsch (v.i.S.d.P. - Anschrift siehe Verlag) Gesamtanzeigenleitung (ad interim) Stefan Wattendorff Inhaber- und Beteiligungsverhältnisse Alleiniger Gesellschafter der IDG Tech Media GmbH ist die IDG Communications Media AG, München, eine 100%ige Tochter der International Data Group, Inc., Boston, USA. Aufsichtsratsmitglieder der IDG Communications Media AG sind: Patrick J. McGovern (Vorsitzender), Edward Bloom, Toby Hurlstone.

Weitere Informationen Redaktion Lyonel-Feininger-Str. 26, 80807 München E-Mail: [email protected] Chefredakteur: Sebastian Hirsch (verantwortlich für den redaktionellen Inhalt) Stellvertretende Chefredakteure: Christian Löbering (cl), Andreas Perband (ap) Chef vom Dienst: Andrea Kirchmeier (ak) Hardware & Testcenter: Thomas Rau (Leitung/tr), Sandra Ohse (so), Verena Ottmann (vo), Michael Schmelzle (ms), Dennis Steimels (ds), Friedrich Stiemer (fs), Ines Walke-Chomjakov (iwc) Software & Praxis: Christian Löbering (stellvertretender Chefredakteur/cl), Arne Arnold (afa), Daniel Behrens (dab), Birgit Götz (bg), Peter Stelzel-Morawietz (psm) Website-Management: Andreas Perband (stellvertretender Chefredakteur/ap), Hans-Christian Dir­scherl (hc), Panagiotis Kolokythas (pk), Benjamin Schischka (bs) Redaktionsassistenz: Manuela Kubon Freie Mitarbeiter Redaktion: Jürgen Donauer, Thorsten Eggeling, Stephan Lamprecht, Thomas Springer, David Wolski Titelgestaltung: Schulz-Hamparian, Editorial Design / Thomas Lutz Freier Mitarbeiter Layout/Grafik: Alexander Dankesreiter Freie Mitarbeiterin Schlussredaktion: Andrea Röder Freier Mitarbeiter Video: Christian Seliger

Freier Mitarbeiter Digitale Medien: Ralf Buchner

Anschrift für Anzeigen: siehe Verlag Erfüllungsort, Gerichtsstand: München

PC-WELT bei Facebook: www.facebook.com/ pcwelt (Andreas Perband (ap) v.i.S.d.P., Benjamin Schischka (bs)

IGS Anzeigenverkaufsleitung für ausländische Publikationen: Tina Ölschläger (-116)

PC-WELT bei Twitter: http://twitter.com/ pcwelt (Andreas Perband (ap) v.i.S.d.P., Panagiotis Kolokythas (pk) PC-WELT im Appstore: www.pcwelt.de/ ipadapp News-App der PC-WELT (kostenlos): www.pcwelt.de/iphoneapp, www.pcwelt.de/ pcwapp Einsendungen: Für unverlangt eingesandte Beiträge sowie Hard- und Soft­ware übernehmen wir keine Haft­ung. Eine Rücksendegarantie geben wir nicht. Wir behalten uns das Recht vor, Bei­träge auf anderen Medien herauszugeben, etwa auf CDROM und im Online-Verfahren. Copyright: Das Urheberrecht für an­ genommene und veröffentlichte Manuskripte liegt bei der IDG Tech Media GmbH. Eine Verwertung der urheberrechtlich geschützten Beiträge und Abbildungen, insbesondere durch Vervielfältigung und/oder Verbreitung, ist ohne vorherige schriftliche Zustimmung des Verlags unzulässig und strafbar, soweit sich aus dem Urheberrechtsgesetz nichts anderes ergibt. Eine Einspeicherung und/oder Verarbeitung der auch in elektronischer Form vertriebenen Beiträge in Datensysteme ist ohne Zustimmung des Verlags unzulässig. Bildnachweis: sofern nicht anders angegeben: Anbieter

Verlagsrepräsentanten für Anzeigen Europa: Shane Hannam, 29/31 Kingston Road, GB-Staines, Middlesex TW 18 4LH, Tel.: 0044-1-784210210. USA East: Michael Mullaney, 3 Speen Street, Framingham, MA 01701, Tel.: 001-2037 522044. Taiwan: Cian Chu, 5F, 58 Minchuan E Road, Sec. 3, Taipei 104 Taiwan, R.O.C., Tel.: 00886-225036226. Japan: Tomoko Fujikawa, 3-4-5 Hongo BunkyoKu, Tokyo 113-0033, Japan, Tel.: 0081358004851.

Anzeigen Anzeigenabteilung Tel. 089/36086-210, Fax 089/36086-263, E-Mail: [email protected] Gesamtanzeigenleitung (ad interim): Stefan Wattendorff (-212) Objektleiterin SalesPC-Welt: Christine Nestler (-293) Senior Key Account Manager: Thomas Ströhlein (-188) Senior Key Account Manager: Thomas von Richthofen (-355) Account Manager Mobile: Anton Eder (-410) Handelsvertreter: Hartmut Wendt (-168) Manager Ad-Management Print: Thomas Weber (-728) Digitale Anzeigenannahme – Datentransfer: Zentrale E-Mail-Adresse: AnzeigendispoPrint@ pcwelt.de. FTP: www.idgverlag.de/dispocenter Digitale Anzeigenannahme – Ansprechpartner: Andreas Frenzel (-239) E-Mail: [email protected], Walter Kainz (-258), E-Mail: [email protected] Anzeigenpreise: Es gilt die Anzeigenpreisliste 30 (1.1.2013). Bankverbindungen: Deutsche Bank AG, Konto 666 22 66, BLZ 700 700 10; Postbank München, Konto 220 977-800, BLZ 700 100 80

Vertrieb Leitung Marketing & Vertrieb: Matthias Weber (-154) Auflagenkoordination: Michael Lesar (-656) Vertrieb Handelsauflage: MZV GmbH & Co. KG, Ohmstr. 1, 85716 Unterschleißheim, Tel. 089/31906-0, Fax 089/31906-113 E-Mail: [email protected], Internet: www.mzv.de Produktion: Jutta Eckebrecht (Leitung), Michael Lesar (-656) Druck: Mayr Miesbach GmbH, Am Windfeld 15, 83714 Miesbach, Tel. 08025/294-267 Haftung: Eine Haftung für die Richtigkeit der Beiträge können Redaktion und Verlag trotz sorgfältiger Prüfung nicht übernehmen. Die Veröffentlichungen in PC-WELT erfolgen ohne Berücksichtigung eines eventuellen Patent­ schutzes. Auch werden Warennamen ohne Gewährleistung einer freien Verwendung benutzt.

Verlag IDG Tech Media GmbH Lyonel-Feininger-Str. 26, 80807 München Tel. 089/36086-0, Fax 089/36086-118, E-Mail: [email protected], Internet: www. pcwelt.de Geschäftsführer: York von Heimburg Verlagsleitung: Jonas Triebel Veröffentlichung gemäß § 8, Absatz 3 des Gesetzes über die Presse vom 8.10.1949: Alleiniger Gesellschafter der IDG Tech Media GmbH ist die IDG Communications Media AG, München, die 100%ige Tochter der International Data Group Inc., Boston, USA, ist. Vorstand: York von Heimburg, Keith Arnot, David Hill Aufsichtsratsvorsitzender: Patrick J. McGovern ISSN 2193-9225

PC-WELT-LESER-SERVICE Haben Sie PC-Probleme? Besuchen Sie einfach unser Forum im Internet unter www. pcwelt.de/forum, und schildern Sie dort Ihr Anliegen. Häufig kennen andere PC-WELT-Leser die Lösung für Ihr Problem!

PC-WELT

Kontakt zur Redaktion Wir haben E-Mail-Adressen für Sie eingerichtet, falls Sie uns etwas mitteilen wollen. Allgemeine Leserbriefe und Anregun-gen zum Heft: [email protected], zu pcwelt.de: [email protected]

Sonderheft Hacks 3/2014

PC-WELT-Kundenservice: Fragen zu Bestellungen (Abonnement, Einzelhefte), zum bestehenden Abonnement / PremiumAbonnement, Umtausch defekter Datenträger, Änderung persönlicher Daten (Anschrift, E-Mail-

Adresse, Zahlungsweise, Bankverbindung) bitte an Zenit Pressevertrieb GmbH, PC-WELT-Kundenservice Postfach 810580 70522 Stuttgart

Tel: 0711/7252-277 (Mo bis Fr, 8 bis 18 Uhr), Fax: 0711/7252-377, Österreich: 01/2195560, Schweiz: 071/31406-15, E-Mail: [email protected], Internet: www.pcwelt.de/shop

87

Hardware-Hacks / DIY-Tipps

Quelle: © mipan - Fotolia.com

Es muss nicht immer gleich ein ehrgeiziges Wochenend-Projekt sein: Viele nützliche Do-it-yourself-Tipps zu Elektronik, Computer und Smartphones bieten bei minimalem Aufwand maximalen Nutzwert. Von David Wolski

Im täglichen Umgang mit PC, Kabel, Peripherie und Unterhaltungselektronik sind es eher die kleinen Probleme, die stören und an den Nerven zerren. Und obwohl HardwareHersteller stets am Bedienkomfort ihrer Geräte arbeiten, bleiben viele Tücken des Alltags ungelöst – auch weil sich die meisten Anwender inzwischen daran gewöhnt haben. Trotzdem kein Grund, sich damit abzufinden, wenn sich mit wenigen Handgriffen oder machbaren Miniprojekten bessere Lösungen finden lassen. Es gibt eine Menge kleinerer, aber dennoch enorm praktische Selbstbau-Ideen, Knif-

88

fe und verblüffend einfache Tipps, die Sie ohne Lötkolben und ohne eingerichtete Hobbywerkstatt umsetzen können.

Schreibtisch: Papierklemmen als Kabelhalter Viele Kabel um und unter dem Schreibtisch sollen möglichst unsichtbar bleiben. USB- und Ladekabel sind dagegen besser griffbereit in der Nähe der Tischkante aufgehoben, weit weg von Kabelknäueln unter dem Tisch. Nur haben Kabel die Eigenschaft, sich von selbst zurückzuziehen, wenn sie nicht mit Geräten verbun-

den sind. Eine Do-it-yourself-Lösung aus zweckentfremdetem Büromaterial hindert häuft benötigte Anschlusskabel daran, sich wieder unter den Tisch zu verziehen, ohne dabei aber störend auf dem Schreibtisch zu liegen. Alles was Sie dazu brauchen, sind handelsübliche Vielzweckklemmen aus Stahlblech, auch Foldback-Klammer genannt, wie sie in Büros mit hohen Papieraufkommen oft zum Einsatz kommen, um Papierstapel zu bändigen. Die Klemmen werden einfach an der Tischkante festgezwickt und die benötigten Kabel lose in die Metallbügel gehängt. USB-

Sonderheft Hacks 3/2014

PC-WELT

Foto: © xxxxxxxxxxxxxxxx - Fotolia.com

Handliche Miniprojekte

Hardware-Hacks / DIY-Tipps

Gut abgehangen: Häufig benötigte Anschlüsse wie USB- und Ladekabel rutschen gerne vom Schreibtisch. Mit dieser improvisierten Halterung bleiben die Kabel in Reichweite. und Ladekabel sind so immer griffbereit an Tischkante oder Schreibtischrückseite verstaut. Falls der Tisch eine weiche, empfindlichere Holz- oder Furnieroberfläche hat, dann legen Sie ein passend zurecht geschnittenes Stück Karton unter, damit die Klemmen keine Abdrücke hinterlassen.

Audiokabel: Knickschutz aus Kugelschreiberfedern Kopfhörer und Ladekabel haben bei schlechter Verarbeitung eine hässliche Eigenschaft: Die Kabel knicken gerne an der Verbindung zum Stecker und leiden so über kurz oder lang an Wackelkontakten, da die Lötstellen dem rauen Büroalltag nicht gewachsen sind. Mit einem Kniff können Sie die die empfindliche Stelle entlasten und die Lebenserwartung des Anschlusskabels erheblich verlängern. Ein Knickschutz am Übergang zwischen Kabel und Stecker verteilt die Last besser und verzögert den Verschleiß an dieser Stelle. Der Clou: Einen tauglichen Knickschutz haben Sie höchstwahrscheinlich bereits auf dem Schreibtisch liegen: Für die üblichen Audiokabel und Ladekabel sind Federn aus Kugelschreibern geeignet, da diese genau die richtige Länge und Stärke für eher dünne Kabel haben. Fädeln Sie das Kabel in die Feder und achten Sie darauf, dass die dichteren Windungen über das hintere Stecker­ende reichen, damit kein neuer Knick entsteht.

Smartphone: Halterung aus Papierklemme Bürobedarf kommt ebenfalls bei diesem MiniProjekt zum Einsatz. Wieder lässt sich mit einer Vielzweckklemme aus Stahlblech eine universelle Halterung bauen. Diese nimmt Smartpho-

PC-WELT

Sonderheft Hacks 3/2014

Einfacher, effektiver Knickschutz: Eine aufgefädelte Feder aus einem Kugelschreiber dient als Knickschutz und schützt empfindliche Kabel vor Verschleiß am Übergang zum Stecker.

nes, Player, Navi und andere Kleingeräte huckepack und kann fast überall stabil befestigt werden. Die Teileliste für die Universalhalterung ist überschaubar: Sie brauchen eine ausreichend dimensionierte Vielzweckklemme, ein kurzes Gummiband sowie ein Nylonseil. An Werkzeugen benötigen Sie eine Kombizange, eine Flachrundzange (gerade Telefonzange), etwas Stoff und ein Feuerzeug. Mit etwas Geschick ist das Projekt in wenigen Minuten fertig. Zerlegen Sie die Klemme, indem Sie die eingespreizten Griffe

aus vernickeltem Stahldraht aus ihrer Halterung nehmen. Mit den Zangen biegen Sie den Draht nun gleichmäßig und symmetrisch ein, damit eine sanfte S-Form entsteht und die Griffe am Ende abgewinkelt sind. Hier ist etwas Kraft und Sorgfalt nötig, um ein ansehnliches Ergebnis zu bekommen. In diese Mulde kommt später das Gerät. Um die Nickeloberfläche mit den Zangen nicht zu beschädigen, legen Sie einen dickeren Stoff beim Biegen unter. Setzen Sie die Klammer wieder zusammen, und nehmen Sie das ge-

Neodym-Magnete aus alten Festplatten Super-Magnet: Ein Neodym-Magnet aus einer alten IBM-Festplatte in Aktion. Diese Art von Magnet besitzen eine magnetische Flußdichte von 1 bis 1,5 Tesla und tragen das 1000-fache ihres Eigengewichts.

Die Fundstelle: Neodym-Magnete finden sich in Festplatten unter der Abdeckung des Aktuator-Arms, der mit Torx-Schrauben befestigt ist.

Magnete sind praktisch für Pinnwand, Experimente und als Sammelstelle für lose metallische Kleinteile wie etwa Schrauben. Grundsätzlich können Magnete nie stark genug sein, nur sind superstarke Neodym-Magnete nicht gerade billig. Aus alten Lautsprechern lassen sie sich auch nur mühevoll ausbauen, da sie im Chassis unter dem Membranantrieb fest verklebt sind. Ohne Winkelschneider kommen Sie an die Magnete nicht heran. Aber vielleicht haben Sie ja ein paar alte defekte 3,5-Zoll-Festplatten? Noch nicht wegwerfen, denn es lohnt sich ein Blick ins Innere. Dort finden Sie ein oder auch zwei hochwertige Neodym-Magnete, die nur auf ihre Entdeckung warten. Zum Entfernen der Schrauben ist ein Torx-Set nötig. Die Magnete sind meist auf vernickelte Halterungen aufgeklebt und lassen sich ablösen, indem Sie die Halterungen mit einer kräftigen Zange leicht verbiegen. Vorsicht im Umgang mit Neodym-Magneten: Sie sind stark genug, um schmerzhafte Quetschungen zu verursachen, sollten Finger zwischen zwei Magnete geraten.

89

Hardware-Hacks / DIY-Tipps

Einfachste Mittel: Mit einer Vielzweckklemme (Foldback-Klammer), Gummiband und Nylonseil ist ein universelle Smartphone-Halterung schnell und sauber zusammengebaut. wünschte Gerät als Maß, um die Griffe abschließend mit der Flachrundzange in Form zu bringen. Damit die Griffe das eingesetzte Gerät nicht verkratzen, brauchen Sie eine Hülle. Diese stellt ein kurzes Stück dünnes Nylonseil zur Verfügung, aus dem Sie den inneren Faden herausziehen, damit nur noch die Hülle übrigbleibt. Das Nylongeflecht stülpen Sie über die Haltegriffe und verschmelzen die Nylonfasern an den Enden durch eine kurzzeitiges Erhitzen bis zum Flammpunkt mit dem Feuerzeug. Die jetzt gepolsterten Haltegriffe setzten sie wieder in die Klammer ein. Nun fehlt nur das Gummiband, mit dem Sie beide Griffe verbinden, damit ein Zug entsteht. Fertig – die vollendete Halteklemme lässt sich übrigens auch vortrefflich im Auto einsetzen, um Kleingeräte an Lüftungsschlitzen des Armaturenbretts festzuklammern.

Smartphones: Mit Gummiband gut im Griff Hüllen für Smartphones gibt es in allen Formen und Farben, aber nicht alle erfüllen ihren Zweck. Anstatt das Gerät vor Kratzern und Verschmutzung zu schützen, geht es oft nur um die Optik. Zudem haben Hüllen oft gerade dort Aussparungen, wo empfindliche Anschlüsse für Ladekabel oder Head-Set liegen. Einfach und effektiv können Sie das Smartphone mit einem breiten Gummiband schützen, das Sie über den Rand spannen. Die Tasten bleiben durch den Gummi hindurch verwendbar, und zum Aufladen lässt sich das Band leicht abnehmen, während das Smartphone in der Jackentasche vor Fusseln und Staub geschützt ist.

Kopfhörer: Anatomisch passgenau Zwar sind Kopfhörer zum Aufsetzen gerade wieder im Trend, allerdings auch klobig und unterwegs unpraktisch. Beim Sport oder auf Reisen sind Im-Ohr-Kopfhörer die bessere Wahl. Damit die Stöpsel in jedes Ohr passen, liegen den besseren Modellen Gummistöpsel in zwei verschiedenen Größen bei. Wenn auch diese nicht passen oder schlicht zu unbequem sind, können Sie perfekt angepasste Aufsätze ganz einfach selbst herstellen: Nehmen Sie statt den mitgelieferten Stöpseln Wachsohr-

Gut im Griff: Als temporäre Abdeckung eignet sich zum Schutz vor Fusseln und Staub ein breites Gummiband. Idealerweise ist das Band etwas breiter als der Rand des Smartphones.

90

Universelle Klemme im Einsatz: Die Halterung umfasst Smartphones und Kleingeräte sanft, aber fest und eignet sich auch vortrefflich für das Auto. stöpsel, beispielsweise das bekannte Oropax. Die Masse ist leicht zu formen, verklebt nicht und bietet besten Tragekomfort, da sie sich dem Ohr perfekt anpasst.

Verkabelung: Regenrinne als Kabelkanal Ein lästiges Dauerthema sind verschlungene Kabelwülste, die sich unter jedem gut bestückten Schreibtisch winden und zu nervigen Stolperfallen werden. Wer oft andere Geräte anschließen muss, braucht Kabel und Steckerleiste in Reichweite in und nicht unter dem Schreibtisch. Als oben offener Kabelkanal, der sich an der Rückseite eines Tischs platzsparend, stabil und weitgehend unsichtbar anbringen lässt, leisten schmale Kunststoff-Regenrinnen gute Dienste. Zu finden sind passende Rinnen in Baumärkten, wo sie als Meterware verkauft werden. Um die Regenrinne als Kabelkanal zu verwenden, sollte eine Seite zur Befestigung mit Schrauben um 90 Grad abge-

Bester Tragekomfort: Bequem und perfekt für den eigenen Gehörgang sind Stöpsel für In-Ear-Kopfhörer aus Oropax. Die fallen auch beim Joggen nicht aus den Ohren.

Sonderheft Hacks 3/2014

PC-WELT

Hardware-Hacks / DIY-Tipps

Gut gegen Kabelsalat: Dachrinnen aus Kunststoff mit lassen sich ohne großen Aufwand als offener Kabelkanal für die Schreibtischrückseite umfunktionieren.

Schematischer Aufbau eines kapazitiven Kopplers: Zwei Kondensatoren mit wenigen Nanofarad (nF) ergeben einen hohen Widerstand für den Brummstrom, gewährleisten jedoch weiterhin die Abschirmwirkung gegen hochfrequente Störungen.

winkelt sein. Passende Kunstoffklammern sorgen für eine bessere Stabilität des improvisierten Kabelkanals, damit er auch bei Belastung gerade bleibt.

Filter gibt es fertig konfektioniert mit passenden Anschlüssen für verschiedene Antennenkabel im Fachhandel und im Versand ab etwa 3 Euro, beispielsweise unter dem Stichwort „Mantelstromfilter“ bei www.amazon.de, www. conrad.de und www.pearl.de. Mit etwas Geschick können Sie einen Filter aber selbst bauen Der Schaltplan zeigt den schematischen Aufbau. Als Behälter eignet sich eine Kunstoffdose, in die das Kabel zusätzlich zur Zugentlastung mit Heißkleber befestigt wird.

Audio: Mantelstromfilter gegen Brummen Ein recht häufiges Phänomen beim Anschluss des PCs an das TV-Gerät oder an die Stereoanlage ist ein deutliches Brummen im Hintergrund, das den Hörgenuss stört. Auch ein Wechsel der Kabel schafft keine Abhilfe. Schuld an dem nervigen Nebengeräusch ist meist eine Erdschleife, die über TV- und Hi-Fi-Geräte mit Antennenanschluss entsteht. Denn die Abschirmung des Antennenkabels hat ein anderes Massepotenzial als die anderen Geräte, etwa Tuner, Receiver, TV und Videorecorder. Abhilfe schafft eine Unterbrechung dieser Schleife, indem die Abschirmung des Antennenkabels elektrisch entkoppelt wird. Am einfachsten gelingt dies mit einem Mantelstromfilter. Er unterbricht als Zwischenstück jeweils die Abschirmung (Mantel) und das Koaxialkabel des Antennen- oder Satellitenkabels mit Kondensatoren von wenigen Nanofarad Kapazität. In den meisten Fällen genügt dies schon, um das Brummen verstummen zu lassen. Den

Ausgebrummt: Ein Mantelstromfilter wird zwischen Endgerät und Antennenkabel geschaltet und sorgt für eine Trennung der Brummschleife. Hier ein gewinkeltes Modell für 75-Ohm-Antennenkabel, das direkt an das Endgerät gesteckt wird.

PC-WELT

Sonderheft Hacks 3/2014

eine leere Kartonrolle, so wie sie von Toilettenpapier und Küchenrollen übrig bleibt. Der Karton ist stabil genug, um auch widerspenstige Kabel aufzurollen. Ordnungsfreaks können zudem noch Kabelart und Länge am unteren, sichtbaren Ende der Kartonrolle vermerken.

Lagerung: Kabel ohne Knäuel aufbewahren Unbenutzte Kabel haben die Eigenschaft, sich auch in der Schublade zu einem Knäuel zu verheddern. Ein Trick bringt Ordnung in die Kabelsammlung, um Kabel platzsparend und vor allem ohne Knoten zu lagern und zu sortieren. Das Ganze ist mit minimalen Aufwand möglich: Legen Sie dazu das Kabel locker zusammen, und stecken Sie es anschließend in

Von der Rolle: Kabel lassen sich mit Hilfe von leeren Kartonrollen gut und übersichtlich ganz ohne Kabelsalat verstauen, ohne sich zu verheddern.

Netzwerk Kabel und Buchsen beschriften Einleuchtend beschriftete Kabelmarker, am Verschnürt und bebesten zusätzlich noch mit Farbcodierung schriftet: Kabelbinversehen, sorgen für Ordnung an Router, der mit Etikett fasSwitches und Netzwerkgeräten. Zwei Prosen mehrere dukte haben sich in der Praxis gut bewährt Netzwerkkabel zu und sind eine große Hilfe für kleines Geld, einem Strang zuum die Verkabelung von Anfang an hübsch sammen und bieten übersichtlich zu halten. auch noch Platz für Cablebugs: Die bunten, eckigen PlastikhülNotizen. sen lassen auf Netzwerkkabel bis 7 Millimeter aufklemmen und mittels Etiketten beschriften. 40 Stück kosten rund 10 Euro, plus Versandkosten, etwa bei Amazon (http://amzn.to/17JOjjS). Kabelbinder plus Etiketten: Selbstbau-Lösungen aus Tesafilm für die Beschriftung halten oft nicht lange. Besser sind fertige Kabelbinder, die Sie mit einem wasserfesten Marker beschriften können. Die stolze Menge von 100 Stück ist schon ab 4 Euro plus Versand zu haben (http://amzn.to/ZNlq4t).

91

Hardware-Hacks / DIY-Beamer

Quelle: G & P Optoelectronics

Beamer im Eigenbau

Günstige Beamer mit HD-Auflösung, guter Bildqualität und minimalen Betriebskosten sind Mangelware. Da hilft nur selber bauen. Mit einem Bausatz ist dies ein machbares Projekt für ein langes Wochenende. Von David Wolski

Beamer erscheinen als komplexe Geräte mit einem hohen Anteil an Elektronik und hochpräziser Optik. Nicht gerade die einfachsten Voraussetzungen für die Umsetzung in einem Selbstbauprojekt. Und trotzdem versuchen sich Bastler seit Jahren am perfekten DIY-Beamer, mit beachtlichen Erfolgen. Der Bausatz eines HD-Beamers (HD Ready) von G&P Optoelectronics aus Erlangen zeigt, dass der Eigenbau aus einzelnen Komponenten kein

92

Ding der Unmöglichkeit ist. Die Ergebnisse können mit Kaufgeräten konkurrieren und stellen Billiggeräte in den Schatten. Gering fallen die Folgekosten aus, und der Bedienkomfort ist dank Fernbedienung und OnScreen-Menü auch passabel. Das Set kostet inklusive Versand in EU-Länder 299 Euro, und versierte Bastler können dank detaillierter Anleitung den Beamer schon nach wenigen Stunden Bauzeit in Betrieb nehmen.

Konkurrenzfähig: Ein Beamer als Bausatz Gute Geräte sind teuer, billige Beamer leiden oft unter starker Vignettierung und machen sich mit lauten Lüftergeräuschen bemerkbar. Natürlich lässt sich ein guter HD-Beamer für einige Hundert Euro auch gebraucht auftreiben. Allerdings kommen dann meist hohe Betriebskosten hinzu. Beamer sind mit einer speziellen Lampeneinheit ausgestattet, die

Sonderheft Hacks 3/2014

PC-WELT

Hardware-Hacks / DIY-Beamer

jeweils nur zu einem Hersteller und zu einer Modellserie passen. Die verwendeten HalogenMetalldampflampen (HQI,Quecksilber-QuarzJodid) haben eine Lebenserwartung von rund 6000 Stunden. Dann muss die komplette Einheit ausgetauscht werden, was etwa alle zwei Jahre nötig ist. Je nach Gerät sind dafür zwischen 150 bis 400 Euro fällig. Allerdings haben einzelne Lampen einen weit geringeren Preis – sogar in meist besserer Qualität. Eine Halogen-Metalldampflampe mit 150 Watt kostet beispielsweise zwischen 30 und 50 Euro. Bei einem Selbstbau-Beamer dagegen können Sie die einzelne Lampe bequem selbst wechseln und dank größerem Gehäuse für eine optimale Kühlung mit großzügig dimensionierten, leise laufenden 80-mm-Lüftern sorgen.

Überblick: Planung und Aufwand Die eigene Konstruktion eines DIY-Beamers von null auf ist auch bei reicher Erfahrung mit Elektronikprojekten keine einfache Aufgabe. Denn eine wesentliche Voraussetzung ist theoretisches und praktisches Wissen in Sachen Optik, Abwärme/Kühlung und Materialeigenschaften. Viele Details lassen sich schlicht und einfach nur durch intensive Experimente klären. Bis dann alle Teile zusammengesucht und schließlich optimal aufeinander abgestimmt sind, können Dutzende Arbeitsstunden nötig sein. Würden Komponenten dann jedoch nicht gut zusammenpassen, bliebe das Ergebnis trotzdem weit hinter den Erwartungen zurück. Empfehlenswert ist daher auch für erfahrene Bastler der Start mit einem Bausatz, etwa mit dem hier vorgestellten Komplettset von G&P Optoelectronics. In dessen Konstruktion und Aufbau stecken bereits mehrere Jahre Erfahrung, und viele Bauteile wurden speziell für diesen Bausatz angefertigt. Für die Umsetzung brauchen interessierte Bastler neben etwas Ehrgeiz nur grundlegende Fähigkeiten im Umgang mit Lötkolben und die üblichen Mittel, die in jedem gut sortierten Werkzeugkasten zu finden sind. Ein durchschnittlicher Bastler benötigt etwa 16 bis 17 Stunden, um den Beamer zu montieren. Beim Zusammenbau der Optik ist natürlich eine ruhige Hand und sehr präzises Arbeiten gefragt, denn hier kommt es auf den Millimeter an. Die Anbieter des Bausatzes liefern nicht nur eine detaillierte, gut bebilderte Anleitung, sondern leisten bei Problemen sogar kostenlosen Support per Mail.

Das kann ein Selbstbau-Beamer Ein gelungener DIY-Beamer bietet eine ähnliche Leistung und vergleichbare Abbildungs-

PC-WELT

Sonderheft Hacks 3/2014

Selbstbau-Beamer: Zwar sieht man dem Gehäuse an, dass es ein DIY-Projekt ist, die Leistung kann sich aber mit Kaufgeräten messen und stellt Geräte in der gleichen Preisklasse natürlich in den Schatten.

leistungen wie ein gutes Gerät aus dem Laden – mit kleinen Abzügen beim Bedienkomfort sowie bauartbedingt mit deutlich größeren Abmessungen des Gehäuses. Denn für den Selbstbau-Beamer wurde der grundlegende Aufbau des Beamers auf die nötigsten Teile reduziert. Das hält sowohl den finanziellen Aufwand als auch die Bauzeit niedrig. Außerdem werden nur solche Komponenten verwendet, die üblicherweise im gut sortierten Fachhandel verfügbar sind. Dies ist jedoch überhaupt kein Nachteil, weil sich damit die Betriebskosten niedrig halten lassen. Die gesamte Qualitätskontrolle liegt in den Händen des Hobby-Elektronikers, deshalb ist natürlich beim Arbeiten größtmögliche Sorgfalt nötig. Im Bausatz befinden sich trotz der geringen Kosten relativ hochwertige Komponenten, während ansonsten bei gekauften Geräten der

Hersteller, um die gesamte Kosten- und Gewinnsituation zu berücksichtigen, immer auf die geringstmöglichen Material- und Fertigungskosten achten muss. Der Beamer-Bausatz von G&P Optoelectronics bietet mit seinem internen Display eine HDReady-Auflösung mit 1280 x 768 Pixeln. Die Reaktionszeit von weniger als 5 ms erlaubt nicht nur die Projektion von Filmen, sondern macht den Beamer auch für Spiele geeignet. Außerdem sind die Bildränder klar abgegrenzt und die Ecken gut ausgeleuchtet. Hier liegen sonst bei billigen und unausgereiften DIY-Beamern die typischen Schwachstellen. Mit einem Arbeitsgeräusch von etwa 21 dBA (Flüstern) ist der Beamer zudem sehr leise. Die Leistung der Leuchteinheit mit 150 Watt reicht für abgedunkelte Räume, die aber nicht mit Jalousien völlig verdunkelt sein müssen.

Bausatz von G&P Optoelectronics Bei den Teilen des vollständigen HD-Beamers-Bausatzes von G&P Optoelectronics (www.beamer-selbstbau.de) haben die beiden Entwickler die exakte Abstimmung der Komponenten bereits vorgenommen und über Jahre immer wieder verbessert. Alle Einzelteile passen gut zusammen, und auch ein vorbereitetes Gehäuse ist bereits inklusive. Die Kosten liegen bei 299 Euro inklusive Versand innerhalb der EU. Damit kostet der Bausatz etwas mehr als ein kompletter Selbstbau-Beamer aus Einzelteilen wie etwa gebrauchten Overhead-Projektoren. Jedoch spart der Komplettbausatz langwierige Nachforschungen sowie die notwendigen praktischen Experimente. Denn die Bausatzkomponenten sind bereits erprobt und aufeinander abgestimmt worden. Mit etwas Erfahrung genügt ein Wochenende zum Zusammenbau. Native Auflösung: 1280 x 768 Pixel Signaleingänge: HDMI, DVI, RGB (VGA), Composite (Cinch), S-VHS (S-Video), Klinke (Audio) Reaktionszeit:
View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF