TwinhanDTV_Magic_Box
Contents |
Use kernel's DVB-T driver (2.6.22.10)
| Linux Kernel Configuration: |
Device Drivers -> Multimedia devices:
< > Video For Linux
<M> DVB for Linux
[*] Load and attach frontend modules as needed
[*] DVB/ATSC adapters --->
<M> Support for various USB DVB devices
<M> DiBcom USB DVB-T devices (based on the DiB3000M-B) (see help for device list)
< > DiBcom USB DVB-T devices (based on the DiB3000M-C/P) (see help for device list)
Customise DVB Frontends ---> (Is set to correct values automatically. No need to do anything here)
|
Driver
Use DVB-T driver from linuxtv.org (OLD!):
Preperation: Compile and boot a kernel with "<M> DVB Core Support"
Type "emerge -av >=dev-util/mercurial-0.9.1-r2" to be able to get the latest drivers
Download:
mkdir ~/dvbt
cd ~/dvbt
hg clone http://linuxtv.org/hg/v4l-dvb
Update:
cd ~/dvbt/v4l-dvb
hg pull -u http://linuxtv.org/hg/v4l-dvb
cd ~/dvbt
Configure:
Boot into your new kernel
cd ~/dvbt/v4l-dvb
[save your old config: ~/dvbt/v4l-dvb/v4l/.config]
make clean
make distclean
[Restore your old configuration]
make menuconfig (for Kernel 2.6.18.3)
Multimedia devices ->
Video For Linux [M]
Enable Video For Linux API 1 compatible Layer [*]
Digital Video Broadcasting Devices ->
DVB For Linux [*]
DVB Core Support [M]
Load and attach frontend modules as needed [*]
Support for various USB DVB devices [M]
DiBcom USB DVB-T devices (based on the DiB3000M-B) [M]
DiBcom USB DVB-T devices (based on the DiB3000M-C/P) [M]
Customise DVB Frontends -> (get chosen automatically?!)
DiBcom 3000M-B [M]
DiBcom 3000P/M-C [M]
make
make install (overwrites kernel's modules)
reboot
Autoload modules
| File: /etc/modules.autoload.d/kernel-2.6 |
snd_ens1371 snd-intel8x0 dvb_usb dvb_core dvb_usb_dibusb_common dvb_usb_dibusb_mb |
| File: /etc/make.conf |
DVB_CARDS="dibusb-usb1"
|
Firmware / DVB-Apps
Enable the USE flag usb. Then execute:
emerge -av linuxtv-dvb-firmware linuxtv-dvb-apps
Or download the firmware manually from [1]. It has to be located at /lib/firmware/dvb-usb-dibusb-5.0.0.11.fw.
Log
Boot messags
Using the customized kernel, dmesg states the following when the Magic Box was already connecting during system boot:
system/modules: Loading module "dvb_usb" ...
system/modules: Loading module "dvb_core" ...
system/modules: Loading module "dvb_usb_dibusb_common" ...
system/modules: Loading module "dvb_usb_dibusb_mb" ...
dvb-usb: found a 'TwinhanDTV USB-Ter USB1.1 / Magic Box I / HAMA USB1.1 DVB-T device' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-dibusb-5.0.0.11.fw'
usbcore: registered new interface driver dvb_usb_dibusb_mb
dvb-usb: generic DVB-USB module successfully deinitialized and disconnected.
dvb-usb: found a 'TwinhanDTV USB-Ter USB1.1 / Magic Box I / HAMA USB1.1 DVB-T device' in warm state.
dvb-usb: will use the device's hardware PID filter (table count: 16).
dvb-usb: schedule remote query interval to 150 msecs.
dvb-usb: TwinhanDTV USB-Ter USB1.1 / Magic Box I / HAMA USB1.1 DVB-T device successfully initialized and connected.
lsmod
"lsmod" states the following:
lsmod |grep "dvb"
dvb_usb_dibusb_mb 10752 0
dvb_usb_dibusb_common 7492 1 dvb_usb_dibusb_mb
dvb_usb 16460 2 dvb_usb_dibusb_mb,dvb_usb_dibusb_common
dib3000mc 10948 1 dvb_usb_dibusb_common
dvb_core 72488 1 dvb_usb
dib3000mb 12992 1 dvb_usb_dibusb_mb
dvb_pll 11716 3 dvb_usb_dibusb_mb,dvb_usb_dibusb_common,dvb_usb
Requirements
Enable the USE flag dvb and (re-)emerge MPlayer and Kaffeine:
emerge -av mplayer kaffeine
Channel scan
Configure the channels: ~/.mplayer/channels.conf and ~/.tzap/channels.conf both share the same contents.
~/skripte/sendersuchlauf: "dvbscan -o zap -a /dev/dvb/adapter0 -f /dev/dvb/adapter0/frontend0 -d /dev/dvb/adapter0/demux0 /usr/local/share/dvb/dvb-t/de-Frankfurt >channels.conf"
Kaffeine
dvb-convert.py (see below) won't seem to get correct IDs for EPG!
Search for a few channels per frequency. If a channel happens to pop up twice in the list, manually clean up your channel file with an editor. This is a list for German channels:
~/.kde/share/apps/kaffeine/channels.dvb contains a channel list of this format:
TV|Das Erste|101(2)|102(ger),|104|1|38912|Terrestrial|762000|0|v|23|-1|16|-1|8|8|4|0|1|||
TV|ZDF|545(2)|546(deu),547(2ch),559(ac3),|551|514|514|Terrestrial|482000|0|v|23|-1|16|12|8|8|4|0|2|||
TV|SAT.1|385(2)|386(DEU),|391|16408|8705|Terrestrial|738000|0|v|23|-1|16|-1|8|8|4|0|3|||
This file may be created via "dvb-convert.py" and channels.conf"
"python ./dvb-convert.py channels.conf de-Frankfurt auto >channels.dvb"
Remote control
| File: ~/.Xmodmap |
keycode 160 = m keycode 174 = l keycode 176 = h keycode 179 = f keycode 222 = q keycode 232 = q keycode 152 = w keycode 180 = e remove Lock = Caps_Lock |
To get to know your remote's keycodes, emerge xev:
emerge -av xev
Start "xev" and press a button on your remote, note the keycode.
| File: ~/.kde/Autostart/remote (executable) |
#!/bin/bash xmodmap /home/grafrotz/.Xmodmap |
For testing, start a terminal and press some buttons on your remote. If you see some letters appear, it should be working. Assign the keys to certain actions (preferably the same as in mplayer):
Settings -> Set short commands ->
size up = e
size down = w
next station = h
previous statuin = l
quit = q
toggle fullscreen = f
Watching / recording TV
With mplayer
mplayer dvb://KABEL1 mplayer -fs -vf pp=fd dvb://KABEL1
With mencoder and mplayer
mencoder dvb://KABEL1 -o record.avi -oac copy -ovc copy mplayer record.avi
With tzap, cat and mplayer
Record
tzap KABEL1 -r cat /dev/dvb/adapter0/dvr0 > record.avi mplayer record.avi
Play immediately
tzap KABEL1 -r cat /dev/dvb/adapter0/dvr0 | mplayer -
With Kaffeine
With kaffeine: Start kaffeine and select "digital television". A list of channels should be available (because of the channels.dvb file).
See also
Created by NickStallman.net, Luxury Homes Australia
Real estate agents should be using interactive floor plans and list their apartments, townhouses and units.
