Raspberry-PI

Aus FunkFeuer Wiki
Wechseln zu: Navigation, Suche

Openwrt @ Raspberry PI

Sollte euch dieses Gerät zusagen, weil

  • klein
  • mittelmäßiger Stromverbrauch für die möglichkeiten die geboten werden
  • 2x USB (1x Modell A)
  • 1x Ethernetport (Kein Port bei Modell A)
  • HDMI output
  • Audioport
  • Analoges Videosignal
  • GPIO Port´s
  • ...

dann solltet ihr [RPI-Hardware] besuchen & Kaufen (wenns verfügbar sind...) ;-)

Dokumentation

  • Debian in einer Virtuellen Umgebung installieren (z.b Debian 6.0 Squeeze)
  • Notwenige Tools installieren
  • Openwrt Sourcen holen (SVN)
  • Kernel, Pakete, usw Konfigurieren
  • Image auf eine SD-Karte kopieren (am einfachsten unter UNIX ;-)
  • RPI starten und Experimentieren

Tools laden (-> ROOT USER)

apt-get update
apt-get install emdebian-archive-keyring
Datei: /etc/apt/sources.list Bearbeiten und "deb http://www.emdebian.org/debian/ squeeze main" am ende Hinzugüfen & Speichern
apt-get install g++-4.4-arm-linux-gnueabi
apt-get install --no-install-recommends bzip2 bison flex g++ gawk gcc gettext git guile-1.8 libncurses5-dev libpng12-dev libssl-dev locales make patch python rsync subversion tcl8.4 unzip xsltproc zlib1g-dev sed wget cvs git-core coreutils texi2html texinfo libsdl1.2-dev docbook-utils python-pysqlite2 diffstat help2man make build-essential desktop-file-utils chrpath libncurses5 libxml-simple-perl pkg-config libxml-simple-perl guile-1.8 cmake xsltproc fastjar libdbus-glib-1-dev mercurial
exit

Openwrt Sourcen holen...

cd /home/USER
svn co svn://svn.openwrt.org/openwrt/trunk/
cd trunk
./scripts/feeds update -a
./scripts/feeds install -a

Kernel, Pakete, usw...

[Kernelconfig] (Zu kopieren in die VM: /home/USER/trunk/.config)
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- kernel_menuconfig V=99 (Kerneleinstellungen vornehmen falls benötigt / KEIN MUSS)
-> Device Drivers: HID-Devices (Ermöglicht Testatur / Maus direkt am RPI / ist normalerweise Ausgeschalten)
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- menuconfig V=99 (Pakete auswählen und in das Image Packen, oder fürs Repo erstellen)
-> Target System: Broadcom BCM2708/BCM2835
-> Target Profile: RaspberryPI
-> Target Images: ext4, Boot (20MB), GZip Images, RootFS (100MB oder mehr, ...)
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- V=99 (Kompiliervorgang starten, das kann dauern ˜1 1/2 h)

Image auf SD-Karte kopieren...

umount /mnt/{PATH_OF_SDCARD} (z.b MACOS: unmount /dev/disk2s1)
sudo dd bs=1m if={PATH}openwrt-brcm2708-sdcard-vfat-ext4_224.img of=/dev/{PATH_TO_SDCARD} (z.b MACOS: dd bs=1m if=openwrt-brcm2708-sdcard-vfat-ext4_224.img of=/dev/rdisk2)

Anmerkungen

Danach kann die Speicherkarte in den RPI eingesteckt werden und sollte Booten. Ich hab bereits ein REPO Online mit Image zum Testen vorerst (wird u.a bald gelöscht / Joe wirds in die Backfire einbinden / also schnell ;-) [Repo & Image (TEST) für den Raspberry PI (BRCM2708)]

Tweaks / Tuning

Ihr könnt den RPI auch Tunen (CPU) bzw. HDMI Einstellungen fixieren. Dazu die Datei Config.txt auf die Boot Partition kopieren [RPI-Config] (Vorsicht: arm_freq=950 = keine Garantie... 800=OK)

Bekannte Fehler

Das Setup der Netzwerkschnittstellen (Static oder DHCP) kann nicht gespeichert werden, warum - hab ich bis jetzt nicht gefunden. Sollte diesem Problem jemand gewachsen sein, bitte mir dieses mitzuteilen ;-)