Computer

Das Betriebssystem Linux ist aus meiner täglichen Arbeit mit dem PC nicht mehr wegzudenken. Dabei haben mich sowohl die Möglichkeiten als auch die Philosophie von Linux immer fasziniert und in ihren Bann gezogen, auch wenn ich oftmals auf "leichtes" Unverständnis stieß.

"Software is like sex: it's better when it's free."
(Linus Torvalds)

Linux

Was ist Linux?

Linux ist ein scheinbar junges Betriebssystem für Computer, das 1991 von Linus Torvalds auf einem i386 entwickelt wurde. Da er mit seinem Betriebssystem das alte Unix nachprogrammierte, reichen die Wurzel bis zum Anfang der siebziger Jahre zurück. Das aus verschiedenen Teilen bestehende Betriebssystem wird von Softwareentwicklern auf der ganzen Welt weiterentwickelt. Es befindet sich schon seit Jahren auf der Überholspur und stellt heute eine echte und vor allem kostengünstige Alternative zu Windows dar. Linux ist für viele ein Betriebssystem, an das sie sich nicht recht heranwagen, da es Gerüchten zufolge, der Umgang mit komplizierten Befehlen notwendig ist. Längst vorbei sind die Zeiten, in denen Linux nur von Informatikern installiert und über komplizierte Kommandos bedient werden konnte. Der Umgang mit Befehlen kann in der Regel durch die Verwendung von verschiedenen Administrationstools umgangen werden. Trotzdem haben erfahrende Nutzer auch weiterhin die Möglichkeit, die von den grafischen Tools verwendeten Befehle direkt und damit schneller einzusetzen. Die Einsatzbereiche von Linux sind vielfältig, so läuft es z.B auf Desktop-Rechnern, Servern, Mobiltelefonen, Routern, Multimedia-Endgeräten und auf Supercomputern. Wobei bei Supercomputern Linux mit 75% die Top-500 der Supercomputer weltweit anführt. Linux verlangt von seinem Benutzer das er bereit ist ständig dazuzulernen, dafür bekommt er die volle Kontrolle über sein System. Was die Applikationen unter Linux betrifft, so reicht die Auswahl frei verfügbarer Programme vom Office-Paket über Datenbanken.
Mehr Infos zu Linux und der Entwicklung findest du hier Wiki Linux.


Tipp

Firefox-Browser sicher einstellen

Firefox bietet von Beginn an ein gewisses Maß an Sicherheit. Mit meinen Ratschlägen erhöhst Du die Sicherheitsstufe noch weiter und verfeinerst den Schutz vor Tracking, Fingerprinting und Überwachung.


Auch heute entscheiden sich viele langjährige Computernutzer am liebsten für Mozilla Firefox, wenn es um die Wahl eines Webbrowsers geht. Daran ändert sich nichts an der weltweiten Vorherrschaft von Google Chrome und darauf basierenden Browsern wie Microsoft Edge. Die Gecko-Engine von Firefox stellt eine der wenigen verbleibenden Alternativen dar, die nicht auf Chrome-Technologie basiert.


  • Direkt nach der Installation bietet Firefox in seiner Standardkonfiguration bereits einen soliden und sicheren Browser. Die Entwickler von Mozilla haben verschiedene Wege vorgesehen, um ihn individuell anzupassen. Die einfachste Möglichkeit, seine Konfiguration zu ändern, besteht darin, über das Hamburger-Menü mit den drei horizontalen Strichen oben rechts auf die Einstellungen zuzugreifen, dann „Einstellungen“ auszuwählen und zu „Suche“ zu wechseln. Anstelle von Google verwendest Du bei der Standardsuchmaschine die Alternative DuckDuckGo. Diese Suchmaschine speichert die von Dir eingegebenen Suchbegriffe nicht und leitet keine Daten weiter. Das gleiche gilt für die Suchmaschine Startpage . Wenn Du diese verwenden möchten, scroll bis zum Ende der Seite und klicke auf Weitere Suchmaschine hinzufügen. Wähle aus der Liste Startpage aus und installiere es.
  • Scrolle anschließend zu Firefox-Vorschläge und entferne die Markierungen vor Vorschlägen von Firefox sowie von Sponsoren (diese Optionen sind nicht in allen Versionen von Firefox verfügbar).
  • Gehe jetzt links zum Abschnitt Datenschutz & Sicherheit. Bei „Verbessertem Schutz vor Aktivitätenverfolgung“ änder die Einstellung von „Standard“ auf „Streng“. In diesem Fall blockiert Firefox in normalen Fenstern sogenannte Inhalte zur Aktivitätenverfolgung und geht entschiedener gegen Fingerprinter vor. Es handelt sich um spezielle Skripte, die von Tracking-Unternehmen verwendet werden, um Nutzer über verschiedene Webseiten hinweg auszuspionieren. Klicke anschließend auf die Schaltfläche Alle Tabs neu laden, um die Änderungen auf bereits geöffneten Firefox-Tabs anzuwenden.
  • Bei den Datenschutzeinstellungen für Websites aktiviere die Option „Websites anweisen, meine Daten nicht zu verkaufen oder weiterzugeben“. Allerdings funktioniert diese Einstellung nur, wenn die Anbieter der Websites, die man besucht, sich daran halten.
  • Scrolle jetzt zu den Punkten „Datenerhebung durch Firefox und deren Verwendung“ und entferne an diesen Stellen alle Häkchen. Kommen wir zu DNS über HTTPS aktivieren mit, das Du am Ende findest. Ich empfehle, die Einstellung „Maximaler Schutz“ zu wählen, da Du damit genau steuern kannst, welche DNS-Anbieter Dein Browser nutzt. Dies ist eine bedeutsame Entscheidung, weil der Browser bei jedem Aufruf einer Seite den konfigurierten DNS-Server kontaktiert. Auf diese Weise ist es dem Betreiber möglich, Dein Surfverhalten zu beobachten.
  • Bei der Konfiguration „Maximaler Schutz“ offeriert Firefox standardmäßig auch den US-DNS-Anbieter Cloudflare.

Zusätzlich zu den genannten Einstellungen existieren einige kostenlose Add-ons für Firefox, die mit geringem Aufwand eine zusätzliche Absicherung und Härtung des Webbrowsers vornehmen. Das Wesentliche ist uBlock Origin. Es entfernt nicht nur unerwünschte Werbebanner, sondern blockiert auch Tracking-Skripte und sogar Drive-by-Downloads, durch die Malware heimlich auf andere Computer gelangt. Um uBlock Origin zu installieren, klicke auf das Hamburger-Menü und wähle Erweiterungen und Themes. Wähle in der linken Navigation den Punkt „Erweiterungen“ aus und tippe im Suchfeld oben die Wörter uBlock Origin ein. Klicke auf den Eintrag mit dem gleichen Namen, dann auf Zu Firefox hinzufügen, anschließend auf Hinzufügen und schließlich auf OK. Die Erweiterung tritt sofort in Kraft. In Zukunft werden Werbung und versteckte Tracking-Skripte automatisch von uBlock Origin herausgefiltert. Das Resultat wird bei jedem Webseitenaufruf als kleine Ziffer über dem Erweiterungssymbol in der Adressleiste angezeigt. Detailliertere Informationen werden durch einen Klick auf das Symbol angezeigt.


Die Alternative zu Google

DuckDuckGo

Wer keine Spuren bei der Online-Suche hinterlassen will, sollte besser auf eine alternative Suchmaschine zurückgreifen. Ich nutze zur Recherche im Internet die Suchmaschine DuckDuckGo, die sich den Datenschutz der Nutzer auf die Fahnen geschrieben hat. DuckDuckGo speichert nach eigenen Angaben keine persönlichen Daten. Auch Cookies oder Searchlogs finden sich bei der Google-Alternative nicht.


Der Suchindex ist sicher kleiner als der von Google, dafür gibt es weniger Spam- und Linksammlungen in den Ergebnislisten. Die Funktionalität meiner neuen Lieblingssuchmaschine gefällt mir sehr gut. DuckDuckGo zeigt manchmal eine Zero-Click-Box an, welche verschiede Erklärungen des Begriffes aus unterschiedlichen Quellen anbietet. Oft steht in der Infobox auch schon das, was gesucht wird. Schön sind die anpassbaren Voreinstellungen, in denen der Nutzer die Suchmaschine nach seinem Geschmack konfigurieren kann. Nach der Umstellung der Option "Region" auf Deutschland werden regional angepasste Ergebnisse auf Deutsch angezeigt. Auch das Aussehen ist anpassbar. Alle Einstellungen werden mithilfe von anonymisierten Cookies auf der heimischen Festplatte gespeichert oder in der Cloud als Datei mit Schlüssel abgelegt. Sichert der Benutzer die persönlichen Sucheinstellungen in der Cloud, kann er bequem die individuellen Einstellungen an jedem beliebigen Computer im Internet wieder herstellen.


Die !Bang Suchsyntax macht DuckDuckGo so interessant. Zum Suchen auf der deutschen Wikipedia-Seite gibt man ein !wde vor, ein !g durchsucht Google und ein !a sucht gezielt bei Amazon. Ein \ vor dem Suchbegriff springt direkt zum ersten Suchergebnis. Entwickler können mit DuckDuckGo z.B. über !csharp array gezielter nach Code-Dokumentationen suchen als mit der Google-Suche.

Interessierte sollten sich folgende Seiten ansehen: 


    DuckDuckGo die Suchmaschine mit Suchergebnissen in deutscher Sprache
    Goodies eine Zusammenfassung aller Funktionen
    !Bang Syntax lange Liste aller möglichen !Bang Suchbefehle 


Mein neues Spielzeug: Der Raspberry Pi

Der Raspberry Pi ist ein kleiner Einplatinencomputer mit ARM11-Prozessor. In Linux Kreisen sorgt die scheckkartengroße Platine schon seit einiger Zeit für Aufsehen und ist mit knapp 40 Euro recht erschwinglich. Eigentlich wurde er entwickelt und hergestellt, um bei Kindern die Freude am Programmieren zu wecken. Zur besseren Einschätzung der Leistung des Raspberry Pi, erst mal ein paar Technische Eigenschaften der Version B:

  • Broadcom BCM2835 700 MHz ARM1176JZFS-Prozessor
  • 512 MB RAM
  • SD-/SDHC-Kartenslot (dienst als Laufwerk für das System)
  • 10/100 BaseT-Ethernet-Buchse (Modell B)
  • HDMI-Videobuchse
  • RCA Composite Video-Buchse
  • 2x USB 2.0-Buchse (Modell B), 1x USB 2.0-Buchse (Modell A)
  • Stromversorgung über microUSB-Buchse
  • 3,5-mm-Jack für Audioausgang
  • Stiftleiste für GPIO
  • Platz für Stiftleiste zum Anschluss einer Kamera
  • Größe: 85,6 x 53,98 x 17 mm

Als Betriebssystem, für den Raspberry Pi, habe ich eine ARM Version vom Debian-Derivat Raspbian “wheezy” installiert. Wie ich das Linux-System installiert habe, wird weiter unten beschrieben. Die Verwendungszwecke für den Winzling sind natürlich vielfältig, ich denke darüber nach, ob ich mein Zuhause damit etwas mehr automatisieren kann oder den “kleinen Linux Zwerg” als eine Art Datenserver einzusetzen und alle meine mobilen und stationären Geräte damit zu verbinden. Darüber könnte ich dann auch meinen Drucker als Netzwerkdrucker betreiben. Natürlich habe ich noch viele andere Ideen in meinem Kopf, man könnte z.B. die Gartenbewässerung automatisch steuern oder das Garagentor mit Siri öffnen. Anfangen werde ich mit einem kleinen Projekt um ein paar Hardwarenahe Programme zu schreiben. Interessant ist hier natürlich die Hardwareschnittstelle über die GPIO-Ports.

Anleitungen

  1. Die Linux Installation
  2. Wlan konfigurieren
  3. Installieren der WiringPi Bibliothek

Projekte

  1. Eine LED mittels GPIO-Pin ansteuern

Die Linux Installation

Raspbian-Image auf SD-Karte installieren

Hier beschreibe ich die Linux Installation, sowie die notwendige Konfiguration, nach dem ersten Bootvorgang des Raspberry PI. Ich habe mich für die Raspbian Distribution von Debian entschieden. Raspbian basiert auf Debian "wheezy" und wurde speziell für die Raspberry Pi Hardware optimiert. Das Raspbian Image wird auf eine SD-Karte mit mindestens 2GB Speicherkapazität installiert.

Raspbian herunterladen.

Das Raspbian Image kann über den folgenden Link geladen werden:

Nach erfolgreichem Download des ZIP-Archives sollte überprüft werden, ob es fehlerfrei und vollständig übertragen wurde.

Das Image auf die SD-Karte schreiben.

Die Installation von Raspbian unter Windows ist sehr einfach: Man benötigt dazu das Programm: Win32DiskImager.

  1. Image entpacken
  2. Win32DiskImager starten
  3. Mit einem Klick auf das Ordnersymbol öffnen wir den Explorer und suchen unser Image
  4. Zielquelle wählen (Laufwerksbuchstabe von dem SD Card-Reader/Writer)
  5. Mit "Write" Schreibvorgang starten
  6. Den Win32DiskImager beenden und die Speicherkarte aus dem Card Reader entnehmen.

Unter Linux ist es auch sehr einfach:

  1. Image entpacken
  2. Mit dem Kommando df -h nachsehen welche Discs gemountet sind
  3. SD Karte in Ihren SD Card-Reader/Writer einstecken
  4. erneut mit df -h nachsehen welche Discs gemountet sind
    Die neu hinzu gekommene Disc ist ihre SD Karte.
  5. Kommando als root user eingeben: unmount /dev/sdd1 /* Kann auch anders heißen Das unmounten ist notwendig damit Daten mit nachfolgendem Kommando auf die Disc geschrieben werden können.
  6. Kommando als root user eingeben:
    dd bs=1M if=~/<ordner>/*.img of=/dev/sdd Das dd Kommando hat keine Fortschrittsanzeige und es kann ein wenig dauern.
  7. Kommando eingeben: sync Damit alle Daten sicher auf die SD Karte geschrieben wurden und die SD Karte entnommen werden kann.

Das Schreiben des Images für MAC-User geht am besten so:

  1. Image entpacken
  2. Starten sie df -h vom Terminal
  3. SD Karte in Ihren SD Card-Reader/Writer einstecken
  4. erneut mit df -h nachsehen welche Discs gemountet sind
    Die neu hinzu gekommene Disc z.B. /dev/disk1s1 ist ihre SD Karte.
  5. Unmounten dieser Disc damit ein überschreiben möglich ist. Kommando: diskutil unmount /dev/disk1s1
  6. Den Disk Namen für das raw device ermitteln: /dev/disk1s1 --> /dev/rdisk1 (aus disk wird rdisk, s1 wird weggelassen)
  7. Kommando: sudo dd bs=1m if=~/Downloads//*.img of=/dev/rdisk1
  8. Kommando eingeben:
    diskutil eject /dev/rdisk1

Der erste Start.

Nun die vorbereitete SD Karte in den Raspberry Pi stecken. Hiernach die Tastatur und Maus mit den USB-Anschlüssen des Raspberry Pi verbinden. Jetzt fehlt noch der Monitor. Entweder schließen wir ihn über den HDMI-Anschluss an ein HDMI-fähiges Wiedergabegerät oder wir benutzen den Composite Videoausgang. Wenn Sie den Raspberry Pi mit einem LAN Kabel an ihr Netzwerk angeschlossen haben, dann wird er versuchen über DHCP eine IP Adresse zu bekommen. Hat der Raspberry Pi Verbindung mit dem Internet, besteht schon beim ersten Start die Möglichkeit das Betriebssystem zu aktualisieren. Als letztes verbinden wir das Netzteil mit der micro-USB_Buchse. Wenn alles funktioniert blinken die LEDs auf der Leiterplatte und der Bildschirm füllt sich mit Meldungen. Nach einer Weile erscheint dann das Konfigurationsmenü "Raspi-config" für die Ersteinrichtung. Es hilft dabei, die wichtigsten Einstellungen des Systems vorzunehmen. Das Menü wird mit der Tastatur bedient. Mit der Pfeil-unten-Taste erreicht man den nächsten Menüpunkt und mit der Pfeil-oben-Taste gelangt zum vorhergehenden Punkt zurück. Die Select-Schaltfläche selektiert man durch Drücken der Tabulator- oder Pfeil-rechts-Taste. Mit der Leer- oder Returntaste wird der Menüpunkt zu aktiviert.

raspi-confi-menü

Wir fangen mit dem Punkt "expand_rootfs" an. Das Image des Betriebssystems ist es für eine SD-Karte mit 2 GB Speicher ausgelegt. Benutzt man eine größere Speicherkarte, kann der restliche verfügbare Speicherplatz der Systempartition hinzugefügt werden. Der eigentliche Prozess dieser Anpassung läuft beim nächsten Hochfahren ab.

Über den Menüpunkt "configure_keyboard" kann man die Tastaturbelegung auswählen. In den meisten Fällen reicht es aus, als Tastatur German und dann Generic 105-key (Intl) PC zu wählen.

Über den Punkt "change_locale" bestimmen wir Zeichensatz und Sprache des Systems. Wir setzen die Locale auf "de_DE.UTF-8 UTF-8" indem wir den Punkt mit der Leertaste markieren. Durch einem Druck auf die TAB-Taste gelangen wir auf die Schaltfläche "Ok" und wählen nun nochmal "de_DE.UTF-8" aus. Es dauert ein wenig, bis die Einstellungen gändert sind.

Mit "change_timezone" wählen wir die richtige Zeitzone. Wir nehmen Europa (Europe) Und in Europa natürlich Berlin.

"ssh" bietet die Möglichkeit den Raspberry Pi von einem anderen Rechner aus zu bedienen. Wir sollten diese Möglichkeit einschalten.

Mit der Schaltfläche "finish" verlassen wir das Hauptmenü. Beim erneuten Start des Raspberry Pi wird "Raspi-config" nicht automatisch mehr ausgeführt. Es kann aber im Terminal immer wie folgt aufrufen werden:

pi@raspberry:~$ sudo raspi-config

Nun sollte erst einmal das System auf den neusten Stand gebracht werden. Durch die Eingabe von:

pi@raspberry:~$ sudo apt-get update && sudo apt-get upgrade

wird die Datenbank des Paketmanagers auf den neuesten Stand gebracht und veraltete Pakete werden durch neue ersetzt. Es empfiehlt sich diesen Schritt, in regelmäßigen Abständen, durchzuführen.

Wlan konfigurieren


Nun möchte ich den Raspberry PI über Wlan in das Netzwerk einbinden. Hierfür verwende ich einen EDIMAX EW-7811UN USB-Wlan Adapter. Hierfür lasse ich die kabelgebundene Netzwerkverbindung bestehen, um mich per SSH mit dem Raspberry Pi zu verbinden.

Die Installation

  • Zuerst wird der USB-Adapter an die USB-Buchse des Raspberry Pis angesteckt und danach wir fahren den Pi hoch.
  • Nach dem Einloggen geben wir den Befehl
    pi@raspberry:~$ sudo lsusb 
    
    ein, welcher alle am USB angeschlossenen Geräte auflistet. Der letzte Eintrag ist der Wlan USB-Stick. Er zeigt, dass hier der Edimax EW-7811UN-Adapter mit einem RTL8188CUS-Chipsatz von Realtek angeschlossen ist.
  • Der Edimax EW-7811UN-Adapter sollte vom Kernel automatisch erkannt und das entsprechende Treibermodul geladen werden. Die Präsenz des passenden Gerätetreibers wird durch Eingabe von lsmod festgestellt. Das Kernel-Modul heißt 8192cu und nach diesem wird mit folgendem Kommando gesucht.
    pi@raspberry:~$ sudo lsmod | grep -i 8192cu
    
  • Bei geladenem Modul sollte der USB-Adapter beim Aufruf von iwconfig als WLAN-Schnittstelle aufgeführt werden.
  • Um nun eine Verbindung mit unserem WLAN herzustellen, müssen wir die Datei /etc/network/interfaces editieren mit:
    pi@raspberry:~$ sudo nano /etc/network/interfaces
    
    Hier suchen wir etwaige Einträge die mit der Bezeichnung "wlan0" bezeichnet sind und passen den Inhalt an.
    auto lo
    iface lo inet loopback
    iface eth0 inet dhcp

    auto wlan0
    allow-hotplug wlan0
    iface wlan0 inet dhcp
    wpa-ap-scan 1
    wpa-scan-ssid 1
    wpa-ssid "WLAN-NAME"
    wpa-psk "WLAN-SCHLÜSSEL"
  • Die IP-Nummer wird durch diese Einstellungen automatisch zugewiesen. Den Raspberry PI mit
    pi@raspberry:~$ sudo poweroff
    
    ausschalten und die kabelgebundene Netzwerkverbindung trennen. Beim Neu-Start wird automatisch die Wlan Verbindung hergestellt.

Installieren der WiringPi Bibliothek


Für die Ansteuerung der GPIOs, wird die Bibliothek WiringPi gebraucht, sie kann in C, C++, Python, Java und PHP eingebunden werden. Voraussetzung für eine Installation der WiringPi Bibliothek ist das Paket git-core. Git ist ein dezentrales Versionsverwaltungssystem, es unterscheidet sich als dezentrales System von den traditionellen Programmen wie CVS und Subversion. Wir testen das Vorhandensein von git-core durch die Eingabe von:

pi@raspberry:~$ sudo git -version

Erhalten wir eine Meldung dass das Paket nicht vorhanden ist, installieren wir es durch:

pi@raspberry:~$ sudo apt-get install git-core

Jetzt sind die Voraussetzungen für eine Installation der WiringPi Bibliothek erfüllt. Wir laden den Quellcode von GitHub herunter und kompilieren ihn anschließend. Dies erledigen wir durch die folgenden drei Punkte:

  1. Wir clonen den Quellcode auf den Raspberry Pi.
    pi@raspberry:~$ sudo git clone git://git.drogon.net/wiringPi
    
  2. Und wechseln in das neu erstellte Verzeichnis wiringPi.
    pi@raspberry:~$ cd wiringPi
    
  3. Abschließend kompilieren und installieren wir wiringPi.
    pi@raspberry:~$ sudo ./build
    

WiringPi ist nun erfolgreich installiert, falls alle Schritte ohne Fehler durchgeführt werden.

Eine LED mittels GPIO-Pin ansteuern

Der Raspberry Pi bietet einige GPIO's (General Purpose Input/Output), die über die Steckerleiste 'P1' nach außen geführt sind. Die GPIO Pins sind als 3,3V Signale ausgeführt und nicht TTL kompatibel. Dabei übernehmen bestimmte Pins neben der einfachen Ansteuerung auch bestimmte Funktionen wie die Kommunikation per I2C, UART oder SPI.

P1: GPIO-Belegung:

wiringPi
Pin
BCM
GPIO
Name Pinleiste Name BCM
GPIO
wiringPi
Pin
3.3v 1 | 2 5v
8 R1:0/R2:2 SDA0 3 | 4 5v
9 R1:1/R2:3 SCL0 5 | 6 0v
7 4 GPIO7 7 | 8 TxD 14 15
0v 9 | 10 RxD 15 16
0 17 GPIO0 11 | 12 GPIO1 18 1
2 R1:21/R2:27 GPIO2 13 | 14 0v
3 22 GPIO3 15 | 16 GPIO4 23 4
3.3v 17 | 18 GPIO5 24 5
12 10 MOSI 19 | 20 0v
13 9 MISO 21 | 22 GPIO6 25 6
14 11 SCLK 23 | 24 CE0 8 10
0v 25 | 26 CE1 7 11
wiringPi
Pin
BCM
GPIO
Name Pinleiste Name BCM
GPIO
wiringPi
Pin

P5: Erweiterungsanschluss nur auf Revision 2 Leiterplatten:

wiringPi Pin BCM GPIO Name Pinleiste Name BCM GPIO wiringPi Pin
5v 1 | 2 3.3v
17 28 GPIO8 3 | 4 GPIO9 29 18
19 30 GPIO10 5 | 6 GPIO11 31 20
0v 7 | 8 0v
wiringPi
Pin
BCM
GPIO
Name Pinleiste Name BCM
GPIO
wiringPi
Pin

Der Raspberry Pi dient als Basis für einen minimalen Versuchsaufbau, der zum Ziel hat eine LED blinken zu lassen, sozusagen ein blinkendes "Hello World". Der ganze Versuchsaufbau eignet sich gut als Einstiegsprojekt, da es die Grundlagen der Hard- und Software behandelt. Ich habe eine LED und einen 330 Ohm Widerstand mit den Pin 11 (= GPIO 17 = WiringPi Pin 0) und den Pin 14 (Masse) verbunden.

LED

Das erste Programm

Es wird ein möglichst einfaches aber garantiert funktionierendes Programm benötigt, welches in den Editor Nano eingegeben oder hinein kopiert wird.

pi@raspberry:~$ sudo nano blink.c

Der Quellcode:

#include <wiringP.h>

int main () {

// WiringPi-Api

wiringPiSetup () ;

// Schalte GPIO 17 (=WiringPi Pin 0) auf Ausgang
// Achtung: WiringPi Layout anwenden (siehe Tabelle oben)
pinMode (0, OUTPUT) ;

// Dauerschleife
for (;;)
{


// LED an

digitalWrite (0, HIGH) ;

// Warte 500 ms
delay (500) ;

// LED aus
digitalWrite (0, LOW) ;

// Warte 500 ms
delay (500) ;

}
}

Das kleine C-Programm lässt eine LED an einem Raspberry Pi blinken. Die LED wird alle 500 ms an bzw. ausgeschaltet. Die Bibliothek wiringPi.h muss installiert sein.

Nun wird das Skript kompiliert:

pi@raspberry:~$ gcc -Wall -o blink blink.c -lwiringPi

und mit Root-Rechten gestartet:

pi@raspberry:~$ sudo ./blink