= Freecom DVB-T USB-Stick =

''' Inhalt '''

<<TableOfContents>>

== Vorwort ==

Dieser DVB-T Empfänger ist ein USB-2.0-Gerät. Siehe auch [[http://www.freecom.com/ecProduct_detail.asp?ID=2234|Webseite des Herstellers]].

{{attachment:Freecom_DVB-T_USB.jpg}}

Mitgeliefert werden

 * USB-Stick
 * Mini-Fernbedienung
 * Antenne (ca. 20 cm hoch) mit Magnetfuß und Saugfuß
 * USB-Verlängerungskabel

(baugleich verkauft von HAMA).

== Installation ==
!!! ACHTUNG !!! Ubuntu-Anwender brauchen einfach nur die Datei hier (http://www.chandlerfamily.org.uk/wp-content/files/dvb-usb-wt220u-zl0353-01.fw ) herunterzuladen und nach /lib/firmware kopieren. Stick einstecken, und alles geht. P.S.: Am besten geht's Fernseher-Schauen mit Kaffeine !!! ACHTUNG ENDE!!!

 * Man besorge sich als Debian-Benutzer zuerst seine aktuellen Kernel-Quellen, danach sollte man sich ein Paket namens "mercurial" (In den Apt-Quellen enthalten) installieren, um anschließend von http://linuxtv.org mit dem Kommando "hg clone http://linuxtv.org/hg/v4l-dvb" die benötigten Video4Linux-Module passend für seinen Kernel kompiliert zu bekommen. Anschließend noch der Dreisatz "su, make all, make install", warten, ob er beim Compilieren meckert, und anschließend (damit die Module sauber entladen und neu geladen werden) den Rechner neu starten.

Danach klappt das Erkennen des USB-DVB-Sticks bis auf das Problem mit der fehlenden Firmware, die noch via hotplug in den Stick geladen werden muss. Das erkennt man daran, dass die dmesg-Meldungen mit "Cold State" aufhören, sobald der Stick eingesteckt wird.

Es gibt anscheinend mindestens zwei Versionen, die intern unterschiedlich aufgebaut sind. Sie geben sich am USB-Bus unterschiedlich zu erkennen. Man kann das mit dem Befehl '''lsusb''' ermitteln. Ich habe ein Gerät neueren Datums (Produktionsdatum März 2006), das sich folgendermaßen meldet:

{{{
# lsusb
...
Bus 004 Device 005: ID 14aa:022a AVerMedia (again) or C&E
...
}}}
oder auch als

{{{
Bus 005 Device 011: ID 14aa:0225 AVerMedia (again) or C&
}}}
Die USB-ID ist das ausschlaggebende. Es gibt zumindest eine (ältere) Version deren ID '''14aa:0222''' ist. Für diese ist aber eine andere Firmware nötig.

Hier wird aber nur die Version mit der USB-ID '''14aa:022a''' und der USB-ID ''' 14aa:0225''' behandelt. Diese braucht eine Firmware. Zu beziehen ist sie von

 . http://www.chandlerfamily.org.uk/wp-content/files/dvb-usb-wt220u-zl0353-01.fw
 . . oder von
 . http://home.arcor.de/efocht/dvb-usb-wt220u-fc03.fw (für 14aa:0225)

Die Firmware muß im Verzeichnis /lib/firmware abgelegt werden.

 * Das scheint nicht für alle Distributionen zu gelten, lt. Debian zum Beispiel kann es auch unter /usr/lib/firmware, bzw unter /usr/lib/hotplug/firmware zu finden sein. Gentoo handhabt das anders als Debian, und Suse wird's wieder ganz anders machen :)
 * Gentoo stellt die Firmware als Paket zur Verfügung; unter Verwendung des USE-Flags ''usb-wt220u'' (Eintrag in /etc/make.conf) wird dazu das Paket ''media-tv/linuxtv-dvb-firmware'' installiert.

Diese Version des USB-Sticks erst ab Version 2.6.17 im offiziellen Kernel unterstützt. Benötigt wird das Kernelmodul '''dvb-usb-dtt200u''', welches auch andere Versionen des Freecom DVB-T-USB-Sticks (gegebenenfalls mit anderer Firmware) und auch anderer Hersteller (z.B. Yakumo) erkennt.

Nach dem Einstecken des Gerätes wechselt die USB-ID auf '''14aa:022b''' falls die Firmware erfolgreich geladen wurde. Die Revision mit der USB-ID ''' 14aa:0225''' erscheint als '''14aa:0226''' (im warm-state)

 * Für beide Revisionen gilt: Nach Laden der Firmware leuchtet die gelbe LED.

Danach findet sich in '''/var/log/messages''' folgendes:

{{{
usb 4-4: new high speed USB device using ehci_hcd and address 4
usb 4-4: configuration #1 chosen from 1 choice
dvb-usb: found a 'WideView WT-220U PenType Receiver (based on ZL353)' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-wt220u-zl0353-01.fw'
usbcore: registered new driver dvb_usb_dtt200u
usb 4-4: USB disconnect, address 4
dvb-usb: generic DVB-USB module successfully deinitialized and disconnected.
usb 4-4: new high speed USB device using ehci_hcd and address 5
usb 4-4: configuration #1 chosen from 1 choice
dvb-usb: found a 'WideView WT-220U PenType Receiver (based on ZL353)' in warm state.
dvb-usb: will use the device's hardware PID filter (table count: 15).
DVB: registering new adapter (WideView WT-220U PenType Receiver (based on ZL353)).
DVB: registering frontend 0 (WideView USB DVB-T)...
input: IR-receiver inside an USB DVB receiver as /class/input/input4
dvb-usb: schedule remote query interval to 300 msecs.
dvb-usb: WideView WT-220U PenType Receiver (based on ZL353) successfully initialized and connected.
dvb-usb: recv bulk message failed: -110
}}}
Die Fehlermeldung am Ende scheint keine Auswirkungen zu haben.

Wie zu sehen ist, wird auch die Infrarotfernbedienung unterstützt. Sie wird als Gerät unter '''/dev/input/event...''' auftauchen. Welches genau, kann man in '''/proc/bus/input/devices''' nachsehen.

{{{
Kann bitte jemand genauer schreiben, wie die Fernbedienung eingerichtet werden muss?
Bei mir funktioniert sie teilweise "out of the box" sogar ohne lirc, aber nur die Zifferntasten,
channel up/down, und andere Tasten gehen gar nicht, auch mit lirc nicht.
}}}
Hier meine "gebastelte" '''lircd.conf''' zur Konfiguration des '''lirc''':

{{{
begin remote
  name  Freecom_DVB-T_USB
  bits            16
  eps            30
  aeps          100
  one           0  0
  zero          0  0
  pre_data_bits   16
  pre_data       0x8001
  gap          237493
  toggle_bit      0
      begin codes
          POWER                    0x0074
          MUTE                     0x0071
          0                        0x000B
          1                        0x0002
          2                        0x0003
          3                        0x0004
          4                        0x0005
          5                        0x0006
          6                        0x0007
          7                        0x0008
          8                        0x0009
          9                        0x000A
          VOL_UP                   0x0073
          VOL_DOWN                 0x0072
          CH_UP                    0x0192
          CH_DOWN                  0x0193
          ZOOM                     0x0174
          JUMP                     0x0161
      end codes
end remote
}}}
== Verwendung ==
Zum Tuning und Ansehen eignet sich z.B. [[Kaffeine]].

 * Getestet mit [[Kaffeine]], funktioniert recht gut - inklusive EPG.
 * LIRC tut, aber mit der obigen lircd.conf gibt's keine Tastenwiederholung.

== Frage ==
 * Nachdem ich mir nun auch so ein Dingelchen zum Ausprobieren bestellt habe, mit was für Programmen kann ich da Filme bzw. Sendungen aufzeichnen ? Muss ich da einen kompletten VDR installieren, oder geht das auch etwas einfacher...

== Antwort ==
 * Eine zugebenerweise "primitive" Lösung in Verbindung mit [[Kaffeine]] ist es, Kaffeine zu sagen, es solle den gesendeten Stream auf Platte schreiben.
 * [[Kaffeine]] kann auch das EPG auswerten und damit dann auch zu einem gegebenen Zeitpunkt eine Sendung aufnehmen sowie stoppen. Allerdings sind die Timer-Werte, die [[Kaffeine]] dafür setzt, meiner Meinung nach etwas zu großzügig gewählt, er zeichnet 30 Minuten davor und danach auf.
 * me-tv ist [[https://launchpad.net/me-tv]] auch noch ein einfaches Tool um dvb-t aufzunehmen. Sogar mit EPG Programmzeitschrift. mpeg2 wird gespeichert.

== Tips & Tricks ==
 * Seltsamerweise hab ich diverse Kernel-Ooops, wenn ich den Stick a) entweder an einem aktiven USB 2.0 Hub betreibe, oder b) den Stick ohne sein Kabel direkt in einen USB-Port in den Rechner stecke. Läuft er an dem mitgelieferten Kabel, tut er es einwandfrei.
 * Homedir mit gesetztem Quota können eine interessanten Alternative darstellen, wenn man einen VDR aufsetzen möchte :)
 * [[Kaffeine]] erzeugt Dateien mit dem Namenschema "Sendungsname".+Endung "m2t". Diese kann man problemlos mit [[Avidemux]] entweder in reinen mpeg-Stream konververtieren, oder man kann sich auch eine DVD daraus basteln lassen.
 * Wer eine etwas schlechtere Empfangslage hat, wie z.B. ich (JochenWeihgold), der sollte es mal mit einer aktiven Zimmerantenne versuchen. Ich habe eine TechniSat DVB-T-Flachantenne (Fachhandel, ca 35 Euros + Kosten für ein eventuell anfallendes 5 -13 Volt Netzteil (Man nennt sowas auch kurz "Wandwarze")) laufen, damit tun jetzt alle in Stuttgart empfangbaren DVB-T Sender. In Verbindung mit einer analogen TV-Karte wie z.B. der Hauppage PVR350 für den analogen Kabelempfang, ist es somit möglich, alle Empfangsarten abzudecken, die am Wohnort existieren.

 * Unter ubuntuusers findet sich eine Anleitung zur Installation, die auch den freecom Stick beschreibt. http://wiki.ubuntuusers.de/Yakumo_QuickStick_DVB-T

== Referenzen ==
Hier noch ein paar externe Quellen:

 * [[http://www.linuxtv.org/wiki/index.php/DVB_USB#DVB-T|LinuxTV Wiki ueber DVB USB Geräte]]
 * [[http://www.debianforum.de/forum/viewtopic.php?t=69132&sid=974e58d8136dd3f5bbff455b8547d7c5|Forumsbeitrag zu Yakumo DVB-T]] welcher baugleich zu sein scheint.

''Ich danke auch der Firma Freecom für die Erlaubnis, das Bild verwenden zu dürfen.''

== Links ==
* [[http://linuxwiki.de/DVB-T|DVB-T im Linuxwiki.de]]