Posts mit dem Label Raspberrypi werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Raspberrypi werden angezeigt. Alle Posts anzeigen

Donnerstag, 28. Februar 2013

Kopflose Himbeertorte

Also wenn Chris einen Raspberry Pi hat brauch ich natürlich auch einen ;-)

Und heute isser gekommen. Die SD-Karte für das Betriebssystem habe ich schon seit gestern - allerdings hatte ich erst ziemlich gegrübelt, welche Bestellung ich da ganz vergessen hatte, als ich das Paket von der Post abgeholt hatte. Ich glaube diese Sendung bricht alle Rekorde in Sachen Verpackung-zu-Inhalt-Verhältnis:



OK - ein Reicheltkatalog war auch noch drin, aber ich fand es trotzdem beeindruckend!
Aber zurück zum Thema: Also der Raspberry Pi ist da - freu! Außer der SD-Karte hatte ich sonst nix bestellt dafür, denn meine Bastelkiste ist gut gefüllt und sollte alles weitere beinhalten. Falsch gedacht! Das Kleingedruckte hatte ich, wie immer, nicht gelesen und so war kein Mikro-USB Kabel auf Lager. Was kein Problem gewesen wäre. Wenn nicht auch mein dummes Auto in der Werkstatt gewesen wäre. Grumpf! Aber inzwischen ist das Auto repariert und das Stromkabel plus Netzteil gekauft. Also frisch ans Werk :-)

Headless installation

Nu wäre die ganze Angelegenheit keinen Blog-Eintrag wert, denn Chris hat ja bereits eine schöne RasPi Vorstellung abgeliefert, aber ich dachte mir, ich gehe das mal von einer anderen Seite an: Es soll um embedded Computing gehen - und da stören Tastatur, HDMI, GUI etc. doch nur ;-)
Also heute mal eine reine Shell-Veranstaltung, inklusive Installation. Das ist natürlich nicht neu und wer es wissen will findet im Web tausende von entsprechenden Anleitungen, d.h. es ist schon alles gesagt - aber noch nicht von mir ;-)

Distribution

Das OS-Image das ich verwende ist ein simples Raspbian, welches sich mittels dd auf die oben erwähnte 16 GB SD-Karte geschrieben habe. Warum 16GB? Weil ich für zukünftige Anwendungen einfach genug User-Space haben wollte und die Dinger super billig sind, auch wenn man eine mit vernünftiger Geschwindigkeit nimmt. Da der Rasp Pi ja wie gesagt noch nicht da war, hatte ich vorab Zeit zum rumspielen und habe zunächst die root-Partition ein wenig vergrößert (gparted sei dank) der restliche freie Platz ist dann in eine eigene Partition gewandert, die ich dann vermutlich als /home einbinden werde:

  pi@raspberrypi ~ $ sudo fdisk -l /dev/mmcblk0
 
  Disk /dev/mmcblk0: 15.8 GB, 15811477504 bytes
  4 heads, 16 sectors/track, 482528 cylinders, total 30881792 sectors
  Units = sectors of 1 * 512 = 512 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disk identifier: 0x00014d34

          Device Boot  Start       End    Blocks Id  System
  /dev/mmcblk0p1        8192    122879     57344  c  W95 FAT32 (LBA)
  /dev/mmcblk0p2      122880   6264831   3070976 83  Linux
  /dev/mmcblk0p3     6264832  30881791  12308480 83  Linux

Jungfernfahrt

Also die SD-Karte in den Raspberry Pi rein, Ethernet Kabel anschließen und zuletzt Mikro-USB-Kabel in die Ladewarze und den Pi. Nach ca. einer Minute hab ich es nicht mehr ausgehalten und bin auf Suche nach dem neuen Mitglied des Netzes gegangen:

  hal:~$ nmap -sP 192.168.0.10-50

  Starting Nmap 6.00 at 2013-02-28 18:29 CET
  Nmap scan report for hal.fritz.box (192.168.0.10)
  Host is up (0.00014s latency).
  Nmap scan report for arronax.fritz.box (192.168.0.21)
  Host is up (0.0028s latency).
  Nmap scan report for 192.168.0.24
  Host is up (0.030s latency).
  Nmap scan report for 192.168.0.33
  Host is up (0.00087s latency).
  Nmap done: 41 IP addresses (4 hosts up) scanned
  in 2.42 seconds

Da isser ja! :-))

Also mal freundlich anklopfen:

  hal:~$ nmap 192.168.0.33
 
  Starting Nmap 6.00 at 2013-02-28 18:31 CET
  Nmap scan report for 192.168.0.33
  Host is up (0.0098s latency).
  Not shown: 999 closed ports
  PORT   STATE SERVICE
  22/tcp open  ssh
 
  Nmap done: 1 IP address (1 host up) scanned 
  in 0.19 seconds

Gut - ssh ist aktiv. Gleich mal einloggen:

  hal:~$ ssh pi@192.168.0.33
  pi@192.168.0.33's password:
  Linux raspberrypi 3.6.11+ #371 PREEMPT 
  Thu Feb 7 16:31:35 GMT 2013 armv6l  The programs included with the Debian 
  GNU/Linux system are free software;
  the exact distribution terms for each
  program are described in the individual 
  files in /usr/share/doc/*/copyright.  Debian GNU/Linux comes with ABSOLUTELY 
  NO WARRANTY, to the extent permitted by 
  applicable law.
  NOTICE: the software on this Raspberry Pi
  has not been fully configured. 
  Please run 'sudo raspi-config'

Das sieht sehr gut aus! Ist allerdings auch gelogen, denn ich Wahrheit hab ich erstmal eine ganze Weile damit verbracht herauszufinden, wieso mich das Mistding so oft rauswirft und einen reboot braucht. Letztlich war es natürlich das Qualitätsnetzteil von LogiLink. Mit einem anderen, dessen Herstellungskosten vermutlich über 20 Cent lagen ging es dann stabil.
Die Konfiguration per ssh lief dann wirklich problemlos inklusive Systemupdate via Internet. Ein bisschen zusätzliche Software hab ich auch gleich noch installiert. Hab mich gleich zuhause gefühlt: scheint im Großen und Ganzen ein ganz normales Debian System zu sein.
D.h. ich habe nun einen zigarettenschachtelgroßen Mini-LINUX-Server, der sich brav per ssh fernwarten lässt :-)))))))))))))))))))

Wenn sich damit nichts verrücktes machen lässt, dann weiß ich auch nicht womit!

WLAN einrichten

Bekanntermaßen hat der Raspberry Pi kein eingebautes WLAN. Also habe ich aus der Bastelkiste einen USB-WLAN Stick im nano-Format hervorgekramt. Konkret war es war ein TP-Link TL-WN-725N:


Das Einstöpseln hat er erstmal kurz übel genommen und mit einem Reset quittiert - vermutlich ist auch diese Power-Supply noch zu schwachbrüstig...
Auf alle Fälle erkennt er ihn:

  pi@raspberrypi ~ $ lsusb
  Bus 001 Device 002: ID 0424:9512 Standard Microsystems Corp.
  Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root 
   hub
  Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
  Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor
   Corp.RTL8188CUS 802.11n WLAN Adapter

Also hab ich mal eine runde /etc/network/interfaces editiert und mein heimisches WLAN konfiguriert (habe ich schon mal erwähnt, dass ich eine persönliche Feindschaft mit network-manager pflege und ihn umgehe, wann immer ich kann?). Hier also der relavente Abschnitt:

  iface wlan0 inet dhcp
        wpa-driver wext
        wpa-ssid philnet
        wpa-proto WPA2
        wpa-psk XXXXXXXXXXXXXXXXXXXXXXXXXXX # WiFi key

Daumen drücken und ausprobieren:

  pi@raspberrypi ~ $ sudo ifup wlan0
  Internet Systems Consortium DHCP Client 4.2.2
  Copyright 2004-2011 Internet Systems Consortium.
 
[...] 

  Listening on LPF/wlan0/64:70:02:29:fb:23
  Sending on   LPF/wlan0/64:70:02:29:fb:23
  Sending on   Socket/fallback
  DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 6
  DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 20
  DHCPREQUEST on wlan0 to 255.255.255.255 port 67
  DHCPOFFER from 192.168.0.1
  DHCPACK from 192.168.0.1
  Stopping NTP server: ntpd.
  Starting NTP server: ntpd.
  bound to 192.168.0.39 -- renewal in 400508 seconds.

Heureka! Wir haben WLAN Anschluss. Das war echt einfach - und das war's auch für heute.

Samstag, 14. Juli 2012

Die etwas andere Himbeere: Raspberrypi

Und so melde ich mich aus einer langen Blog-Abstinenz wieder zurück: mit einer Himbeere der anderen Art, "Raspberrypi". Seit einigen Monaten ist der Hype um diese Frucht ungebrochen und nach langer Wartezeit konnte ich einen von Farnell element 14 bekommen. Kurz gesagt ist der Pi eine Linuxbox in Kreditkartenformat - ein vollwertiger Computer mit hohem Bastelpotential. Der Preis ist unschlagbar: 40€ für Bestellung aus UK inklusive allem.

Der Pi ist eigentlich als Billigcomputer gedacht, um Kindern den Einstieg in die Programmierung, auch in ärmeren Ländern, einfach und kostengünstig zu ermöglichen. Die Erfinder und Gründer der Raspberrypi-Foundation hatten dabei aber die Maker-Community unterschätzt. Da der Pi GPIO Pins und die einschlägigen Schnittstellen (UART, I2C, SPI) zusätzlich zu HDMI und USB direkt herausführt kann das 32bit leistungsstarke Board auch für aufwendigere Embedded-Projekte super eingesetzt werden. Die Rechenleistung, vor allem der GPU, ist sehr viel leistungsstärker als die eines 8 Bit Micros.

Aber zunächst mal die Fotos:



 

Kurzer Überblick über die technischen Daten (in diesem Post geht es um Modell B):



Model AModel B
SoCBroadcom BCM2835 (CPU, GPU, DSP, and SDRAM)
CPU:700 MHz ARM1176JZF-S core (ARM11 family)
GPU:Broadcom VideoCore IV, OpenGL ES 2.0, 1080p30 h.264/MPEG-4 AVC high-profile decoder
Memory (SDRAM):128 Megabytes (shared with GPU)256 Megabytes (shared with GPU)
USB 2.0 ports:12 (via integrated USB hub)
Video outputs:Composite RCA, HDMI
Audio outputs:3.5 mm jack, HDMI
Onboard storage:SD, MMC, SDIO card slot
Onboard network:None10/100 Ethernet (RJ45)
Low-level peripherals:8 × GPIO, UART, I²C bus, SPI bus with two chip selects, +3.3 V, +5 V, Ground
Power ratings:500 mA (2.5 W)700 mA (3.5 W)
Power source:5 volt via MicroUSB or GPIO header
Size:85.60 × 53.98 mm (3.370 × 2.125 in)
Operating Systems:Debian GNU/Linux, Fedora, Arch Linux


Zusätzlich führt das Broadcom SOC auch Anschlüsse für ein TFT-Panel und einen CMOS-Kamerachip heraus (die zwei Flexprint-Buchsen). Sowohl ein passendes TFT als auch ein leistungsfähiges Kameramodul wird es als Zubehör zu kaufen geben. Es gibt auch bereits ein Erweiterungsport mit einem AVR drauf, um zusätzlich HW-Schnittstellen und ADCs und DACs bereitzustellen (Gert-Board).

Hier ein kleines Video, in dem ihr den Raspberry in Aktion sehen könnt:



Aktuell habe ich Debian Squeeze laufen (mit Sofware floating-point support - trotzdem erstaunlich flott und usable; komplexere Webseiten sind etwas lahm). Es ist eine "Raspian"-Distribution mit HW-Floating-Point-Unterstützung des SoC in Vorbereitung, die um einiges performanter laufen soll. Auch Übertaktung bis auf ca. 900 MHz wurde bereits erfolgreich durchgeführt.

Ok, das war's fürs Erste :-). Bin gespannt auf eure Kommentare - und ich kann nur sagen: Diese Himbeere rockt und hat eine  fruchtige Zukunft vor sich!