Firmware
Inhaltsverzeichnis |
Einleitung
Alle DVB-Karten brauchen für den Betrieb eine Firmware, bei den meisten ist diese bereits in den DVB-Treibern enthalten, für andere Karten muss sie eingespielt werden.
Auf den Projektseiten von Heise [1] findet sich eine grobe Zusammenstellung der Downloads.
Neben Nova-T gibt es dort auch Firmware für die HauppaugePVR 350/250, MediaMVP sowie die full-featured DVB-T.
Firmware für
DVB Karten
So muss beispielsweise für Technotrend-basierte Budget DVB-T Karten (Nova-T, Lorenzen DVB-T PCI, TT1300) die Firmware aus den Windows-Treibern kopiert und umbenannt werden.
Je nach verwendeter Distribution (hotplug version) wird sie an verschiedenen Plätzen erwartet, üblich sind Pfade wie /usr/lib/hotplug/firmware und /lib/firmware oder /usr/local/lib/firmware.
Path ist in der /etc/hotplug/firmware.agent hinterlegt, kann dort geändert bzw. erweitert werden.
bash> 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"
Ansonsten, sollte beim laden der Treiber, im log näheres zu sehen sein.
bash> tail -n 400 /var/log/messages
Dort steht, wo er sie nicht findet und wo sie folglich hinkopiert werden muss.
Die höheren Kernel Sourcen (2.6.**) haben ein Script zum laden/extrahieren der Firmware anbei, einfach in den PATH kopieren und ausführbar machen. Erhältlich ist das Skript auch hier.
bash> find /usr/src -name get_dvb_firmware -exec chmod 777 \{} \; -exec cp -v \{} /usr/local/bin \; bash> get_dvb_firmware
Ausgabe sollte wie folgt aussehen:
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 # ?
In das Verzeichnis wechseln, die passende Firmware laden/extrahieren.
bash> cd /usr/lib/hotplug/firmware bash> 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).
Da wir uns schon im Verzeichnis befinden /usr/lib/hotplug/firmware, können wir die Anweisung ignorieren.
bash> ls Broadband4PC_4_2_11.zip dvb-fe-nxt2002.fw dvb-ttpci-01.fw
Sollte entfernt werden Broadband4PC_4_2_11.zip, ggf. woanders sichern.
Oder, via CVS:
bash> cvs -z3 -d:pserver:anonymous@linuxtv.org:/cvs/linuxtv co dvb-kernel/firmware
Hauppauge Nexus-S Rev. 2.3
Mit der Firmware von dvb-ttpci-01.fw-261f von linuxtv.org gelang die Inbetriebnahme der Hauppauge Nexus-S Rev 2.3 auf SuSE 9.2 (check_version.c bei Treiberinstallation auf Kernel Version 2.6.8 heruntersetzen).
bash> wget http://www.linuxtv.org/downloads/firmware/dvb-ttpci-01.fw-261f bash> cp dvb-ttpci-01.fw-261f /usr/lib/hotplug/firmware/dvb-ttpci-01.fw
auf 4MB SDRAM erweiterte Karten
Nach dem SpeicherMod der Full-featured-DVB-Karte muss auch eine gepatche Firmware aufgespielt werden. Näheres dazu auf der Anleitungseite für das Tuning.
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 :
bash> 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, in C wie auch in php erhältlich.
Probleme
Fehler der DVB-Firmware der FF-Karten
Meldung:
Im syslog finden sich öfters Einträge mit
video data stream broken
auch bekannt als "VDSB problem"
VDR startet immer wieder neu wenn eine, aber vorallem
wenn mehrere Aufzeichungen von unterschiedlichen Transceivern
parallel erfolgen.
Eine Aufnahme springt jede Minute ein kleines Stück.
EPG-Infos fehlen beim Umschalten zunächst.
Abhilfe:
(Reihenfolge ist keine Wertung)
Setzen der EPG scanzeit auf "0" (= abschalten)
Keine VPS timer aktivieren
in "runvdr" mit
export LD_ASSUME_KERNEL=2.4.1
den Support für Native Posix Threading Library (NTPL) deaktivieren.
Wenn ein Mix aus Full-Feature- und Bugdet-Karten verwendet wird,
dann die Budget-Karte gegen eine FF ersetzen.
Evtl. schafft der "Spannungs-Mod" f. FF 1.3 Abhilfe
Wenn's das alles nicht sein kann/nicht hilft:
Wie wäre es, die Antenne mal wieder reinzustecken/auszurichten
oder die Kabel/Stecker auf Wackelkontakte zuuntersuchen?
(Die Verschraubung der F-Stecker muss wirklich fest sitzen!)
Evtl. hilft auch das Verlängern der PCI parameter von 0x40 auf 0x80.
Oder der Tausch des Motherboards. (Vgl. MSI Hermes 650 vs. 651)
Ursache:
Diese wird intensivst gesucht.
Sonstiges:
Wer "Workarounds" gefunden hat:
Bitte unbedingt hier nachtragen oder
auf die linux-dvb mailliste schicken.
Ersteres ist ohne Anmeldung möglich.