Firmware
K (→Firmware installieren) |
(→Firmware austauschen/aktualisieren) |
||
Zeile 29: | Zeile 29: | ||
====Firmware austauschen/aktualisieren==== | ====Firmware austauschen/aktualisieren==== | ||
− | Um | + | Um zu sehen, welche Firmware verwendet wird, und ob eine neuere Firmware installiert werden kann, gibt es folgende Vorgehensweise: |
− | Die Ausgabe von '''dmesg''' sollte verwendete Firmwareversion anzeigen. Der hintere Teil des | + | Die Ausgabe von '''dmesg''' sollte die verwendete Firmwareversion anzeigen. Der hintere Teil des Parameters app gibt die Versionsnummer an, |
− | + | also in diesem Beispiel die Version f22623. | |
#> dmesg | grep AV7110 | #> dmesg | grep AV7110 | ||
DVB: AV7110(0) - firm f0240009, rtsl b0250018, vid 71010068, app 80'''f22623''' | DVB: AV7110(0) - firm f0240009, rtsl b0250018, vid 71010068, app 80'''f22623''' | ||
Zeile 37: | Zeile 37: | ||
Um die Firmware auszutauschen, muss die gerade verwendete Version entfernt werden, | Um die Firmware auszutauschen, muss die gerade verwendete Version entfernt werden, | ||
− | es empfiehlt sich | + | es empfiehlt sich diese Datei nicht sofort zu löschen, sondern erst einmal zu sichern. |
− | + | Dies kann durch ein einfaches Umbennen in .bak geschehen. | |
#> cd /usr/lib/hotplug/firmware/ | #> cd /usr/lib/hotplug/firmware/ | ||
#> mv dvb-ttpci-01.fw dvb-ttpci-01.fw.bak | #> mv dvb-ttpci-01.fw dvb-ttpci-01.fw.bak | ||
− | Danach kann die neue Version in dieses Version kopiert werden und muss in ''dvb-ttpci-01.fw'' | + | Danach kann die neue Version in dieses Version kopiert werden und muss in ''dvb-ttpci-01.fw'' umbenannt oder neu verlinkt werden. |
#> cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw | #> cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw | ||
− | + | Damit der Treiber die neue Firmware in den Hauptprozessor der Karte lädt, muss einfach der Treiber erneut geladen werden. | |
#> rmmod dvb-ttpci | #> rmmod dvb-ttpci | ||
#> modprobe dvb-ttpci | #> modprobe dvb-ttpci | ||
− | + | Wem dies zu umständlich ist, der kann aber auch einfach den Rechner neu starten, und damit ein erneutes Laden der Firmware auslösen. | |
===DVB-T Karten=== | ===DVB-T Karten=== |
Version vom 2. September 2006, 23:10 Uhr
Inhaltsverzeichnis |
Einleitung
Viele Geräte oder PCI-Karten benötigen für die korrekte Funktion eine Firmware. Diese Firmware dient der Steuerung der Karte. Sie ist meist modellspezifisch.
Firmware
Fullfeatured DVB-S/-T/-C Karten
Der Hauptprozessor aller Technotrend basierten Karten, der AV7110 benötigt eine Firmware. Diese Firmware wird stetig weiterentwickelt und liegt deshalb in unterschiedlichen Versionen vor. Und kann in der jeweils aktuellen Version von linuxtv.org geladen werden. Damit der Treiber nicht mit jedem Update der Firmware neu übersetzt werden muss, wird der gemeinsame Dateiname dvb-ttpci-01.fw für die aktuell installierte Version verwendet.
Hauppauge Nexus-S Rev. 2.3
Mit der Firmwareversion 261f gelang die Inbetriebnahme der Hauppauge Nexus-S Rev 2.3. Bei der Treiberinstallation auf SuSE 9.2 war es notwendig check_version.c auf Kernel Version 2.6.8 heruntersetzen.
auf 4MB SDRAM erweiterte Karten
Nach der Erweiterung des SDRAM der Full-featured-DVB-Karte auf 4MB muss auch gegebenenfalls eine Firmware mit der Version 261c oder neuer aufgespielt werden. Näheres zur Erweiterung des SDRAM ist auf der Anleitungseite für dieses spezielle DVB-Karten Tuning zu finden.
Firmware installieren
Die jeweils aktuelle Version kann von linuxtv.org geladen werden. und wird je nach Kernelversion in unterschiedlichen Verzeichnissen installiert. Bei 2.4er Kerneln liegt die Firmware in /usr/lib/hotplug/firmware. Der 2.6er Kernel verwendet das Verzeichnis /usr/lib/firmware. Deshalb für die Installation die Firmware aus dem Internet herunterladen und ins Zielverzeichnis kopieren.
#> wget http://www.linuxtv.org/downloads/firmware/dvb-ttpci-01.fw-<version> #> cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw
Dieses Verzeichnis kann aber auch bei verschiedenen Distributionen varieren, im Abschnitt [#Probleme|Probleme] sind weitere Hilfestellungen zufinden.
Firmware austauschen/aktualisieren
Um zu sehen, welche Firmware verwendet wird, und ob eine neuere Firmware installiert werden kann, gibt es folgende Vorgehensweise: Die Ausgabe von dmesg sollte die verwendete Firmwareversion anzeigen. Der hintere Teil des Parameters app gibt die Versionsnummer an, also in diesem Beispiel die Version f22623.
#> dmesg | grep AV7110 DVB: AV7110(0) - firm f0240009, rtsl b0250018, vid 71010068, app 80f22623 DVB: AV7110(0) - firmware supports CI link layer interface
Um die Firmware auszutauschen, muss die gerade verwendete Version entfernt werden, es empfiehlt sich diese Datei nicht sofort zu löschen, sondern erst einmal zu sichern. Dies kann durch ein einfaches Umbennen in .bak geschehen.
#> cd /usr/lib/hotplug/firmware/ #> mv dvb-ttpci-01.fw dvb-ttpci-01.fw.bak
Danach kann die neue Version in dieses Version kopiert werden und muss in dvb-ttpci-01.fw umbenannt oder neu verlinkt werden.
#> cp dvb-ttpci-01.<version> /usr/lib/hotplug/firmware/dvb-ttpci-01.fw
Damit der Treiber die neue Firmware in den Hauptprozessor der Karte lädt, muss einfach der Treiber erneut geladen werden.
#> rmmod dvb-ttpci #> modprobe dvb-ttpci
Wem dies zu umständlich ist, der kann aber auch einfach den Rechner neu starten, und damit ein erneutes Laden der Firmware auslösen.
DVB-T Karten
DVB-T Karten die auf dem Technotrend Design basieren, dazu gehören DVB-T Budget Karten wie die Nova-T, Lorenzen DVB-T PCI, TT1300, aber auch die Full-featured DVB-T Karte benötigen für die Frontend, den DVB-T Tuner eine weitere Firmware. Diese Firmware gibt nur bei den Original Treiber des jeweiligen Hersteller. Deshalb muss die Firmware aus den Windows-Treibern extrahiert werden.
Dxr3
Auch bei Dxr3-Karten muss die Firmware aufgespielt werden - sie nennt sich dort allerdings Microcode. Mittlerweile befindet sich die benötigte Firmware im Release des dxr3-Projektes (früher war das extrahieren aus den Windowstreibern nötig).
HauppaugePVR 350/250
Standardmäßiger Speicherort ist das Verzeichnis /lib/modules
#> ls /lib/modules/*.bin /lib/modules/ivtv-fw-dec.bin /lib/modules/ivtv-fw-enc.bin
MediaMVP
Zum Laden der Firmware eignet sich der Mvploader.
Tipps/Probleme
Firmware wird nicht geladen
Ein sehr guter Lösungsansatz, wenn die Treiber bzw. die Firmware nicht geladen wird, ist das Kontrollieren der Ausgabe des Syslog. In der Regel informiert der Treiber über das Verzeichnis an der er die Firmware nicht finden konnte.
#> less /var/log/messages
hotplug
Je nach verwendeter Distribution und damit der verwendeten Version des hotplug-Systems, wird die Firmware an verschiedenen Plätzen erwartet. Üblich sind Verzeichnisse wie /usr/lib/hotplug/firmware, /lib/firmware oder /usr/local/lib/firmware. Dabei ist das Verzeichnis immer in der Skriptdatei /etc/hotplug/firmware.agent hinterlegt, kann dort geändert bzw. erweitert werden.
#> grep -i -B1 ^FIRMWARE_DIR /etc/hotplug/firmware.agent # directories with the firmware files FIRMWARE_DIRS="/lib/firmware /usr/local/lib/firmware /usr/lib/hotplug/firmware"
Extrahieren der Firmware
Es gibt auch einen Skript get_dvb_firmware der beim Extrahieren der Firmware aus den Windowstreiber behilflich ist. Bei den aktuellen Quellcode des Kernel ist der Skript bereits enthalten.
#> ./get_dvb_firmware Supported components: sp8870 # T Nexus-T premium rev1.2 sp887x # Avermedia DVB-T 761 tda10045 # Hauppauge/TT Nova-T budget tda10046 # Hauppauge/TT Nova-USB-t budget # Terratec Cinergy 1200 DVB-T/KNC1 DVB-T av7110 # FF => dvb-ttpci-01.fw-261x dec2000t # ? dec2540t # ? dec3000s # Hauppauge/TT DEC3000-s vp7041 # ? dibusb # DiBcom DVB-T USB1.1 reference design (Twinhan, KWorld, Hama, Artec, Compro) nxt2002 # ?
Zum extrahieren der Firmware für die Frontend des sp8870-Tuner einer Full-featured DVB-T Karte dient damit folgendes Kommando.
#> ./get_dvb_firmware sp8870 # Firmware dvb-fe-sp8870.fw extracted successfully. # Now copy it to either /lib/firmware or /usr/lib/hotplug/firmware/ (depending on your hotplug version).
Anschliessend ist der Treiber in das Firmware-Verzeichnis des hotplug Systemes zu kopieren. Beim Extrahieren wird im allgemeinen das Paket mit den Windowstreiber heruntergeladen. Diese Dateien können nach der Extraktion gelöscht werden.
Snapshot
Die Entwickler Stand der Firmware der dvb-ttpci Karten ist auch per CVS verfügbar.
#> cvs -z3 -d:pserver:anonymous@linuxtv.org:/cvs/linuxtv co dvb-kernel/firmware
VDSB Problem
Im syslog finden sich Einträge mit folgenden Inhalt video data stream broken, dies Meldung wird inzwischen auch Umgangssprachlich als das "VDSB Problem" bezeichnet. Die Meldung besagt eigentlich einfach, das der Datenstrom vom Treiber zum VDR unterbrochen ist. In diesem Fall vermutet der VDR das der Treiber oder die Hauptprozessor der DVB-Karte nicht mehr reagiert, und versucht deshalb mit einem kontrollieren Neustart mit Entladen/Laden der Treiber wieder in einen arbeitsfähigen Zustand zukommen. Das Entladen des Treiber wirkt sich natürlich störend auf alle gleichzeitig laufenden Aufnahmen aus, auch wenn zufällig nur eine Transpondern mit gestört ist.
Folgende Anzeichen deuten auf das VDSB-Problem.'
- Die Wiedergabe einer VDSB-Aufnahme springt jede Minute ein kleines Stück.
- EPG-Infos fehlen beim Umschalten zunächst.
Folgende Methoden könnten das Problem beheben
- Neustart des Rechners
- Die automatische EPG-Aktualisierung abschalten, dazu EPG scanzeit auf "0" setzen, damit wird das parallele Umschalten der Transpondern unterdrückt.
- Die Kabel und Stecker der Antenne auf Wackelkontakte untersuchen. Die Verschraubung der F-Stecker muss wirklich fest sitzen!
- Wenn mehrere DVB-Karten verwendet werden, kann es helfen die Reihenfolge der PCI-Steckplätze zutauschen.
- Abhilfe durch die SpannungsMod der Fullfeatured-Karten der Revision 1.3
- Verschiedene BIOS Einstellungen zum PCI Timing
- Austausch des Motherboards. (Vgl. MSI Hermes 650 vs. 651)
- Native Posix Threading Library (NTPL) deaktivieren, dazu die Datei "runvdr" im Beginn erweitern
export LD_ASSUME_KERNEL=2.4.1
Links
- Aktuelle Version der Firmware der DVB-FF Karten
- Projektseiten von Heise bieten ein grobe Zusammenstellung der Firmware-Dateien.