Hat man einen Raspberry Pi und hat man ein bereitgestelltes Image installiert, läuft der ja prinzipiell. Dennoch gibt es Gründe, weshalb man ein Firmware-Update braucht. Zum Beispiel, weil man eine USB-Webcam als Video4Linux-Gerät (v4l2) nutzen will (der Kernel des Squeeze-Images unterstützt v4l2 nicht) und /dev/video0 nicht hat, oder eben weil man das Glück hat, ein B-Modell des Raspberry Pi (bei Revision 2 hat man den Arbeitsspeicher verdoppelt) mit 512MB RAM gekauft zu haben, dieser benötigt nämlich auch ein Update der Firmware.
Jetzt kann man entweder die Firmware aus dem Git-Repo der Raspberry Pi Stiftung holen und die bisherige manuell ersetzen, oder man nutzt das automatische Update-Tool rpi-update von Hexxeh. Dieses erledigt das Update komplett automatisch, man muss nur das Programm im Terminal ausführen.
Wir installieren zuerst das Paket ca-certificates wie folgt:
pi@raspberrypi ~ $ sudo apt-get install ca-certificates
Nun laden wir rpi-update herunter und machen es ausführbar:
pi@raspberrypi ~ $ wget http://goo.gl/1BOfJ -O /usr/bin/rpi-update && chmod +x /usr/bin/rpi-update
Um Problemen mit fehlenden “shared objects” vorzubeugen, aktualisieren wir nun noch die entsprechende Cache-Datei ld.so.cache mit ldconfig:
pi@raspberrypi ~ $ sudo ldconfig
Tun wir dies nicht, kann es zu unschönen Fehlermeldungen nach dem Update kommen (error while loading shared libraries: libvchiq_arm.so: cannot open shared object file: No such file or directory) und das Image könnte nicht mehr gebootet werden.
Danach kann das Update beginnen:
pi@raspberrypi ~ $ sudo rpi-update
Ein erfolgreiches Update sieht dann etwa so aus:
pi@raspberrypi ~ $ sudo rpi-update
Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS
Performing self-update
Autodetecting memory split
Using ARM/GPU memory split of 192MB/64MB
We're running for the first time
Setting up firmware (this will take a few minutes)
If no errors appeared, your firmware was successfully setup
A reboot is needed to activate the new firmware
Also tun wir wie geheißen und starten den Raspberry Pi neu:
pi@raspberrypi ~ $ sudo reboot
Sollte es vorher das Gerät /dev/video0 nicht gegeben haben, stecken wir nun die Webcam an das Gerät an und lassen uns das Verzeichnis /dev/ anzeigen:
pi@raspberrypi ~ $ ls /dev/ | grep video0
video0
Wird uns als Ausgabe video0 angezeigt, ist das Gerät vorhanden.