====== MSI DigiVox mini II V3.0 černá ======
Následující informace se týkají DVB-T tuneru **MSI DigiVox mini II V3.0**, v černém provedení (idVendor=1d19, idProduct=1101)
Zatímco bílá verze se stejným názvem má chipset Atatech AF9013 a je Linuxem od jádra 2.6.28 nativně podporovaná, tato černá verze má chipset Realtech RTL2832 a její podpora v jádře (nyní 2.6.31) stále chybí.
Následující postup ukazuje jak toto zařízení v zprovoznit v Ubuntu. Postup vychází jednak z readme.txt uvnitř archivu ovladače RTL2832U, jednak z doporučení na webu ubuntuusers.de (které objevil uživatel **cz-helper** a publikoval na abclinuxu.cz)
====== Příprava ======
Balíky unrar (nikoliv unrar-free) a Mercurial jsou v dalším postupu zapotřebí.
sudo apt-get install unrar
sudo apt-get install mercurial
====== Postup instalace ovladačů ======
===== Stáhnout poslední zdrojové soubory v4l-dvb =====
cd ~
mkdir digivox; cd digivox
hg clone http://linuxtv.org/hg/v4l-dvb
Offline verze je na [[http://linuxtv.org/hg/v4l-dvb/archive/tip.zip]]
===== Stáhnout zdrojové soubory ovladače RTL2832U =====
z [[http://media.ubuntuusers.de/forum/attachments/2103272/090730_RTL2832U_LINUX_Ver1.1.rar]] a rozbalit obsah složky archivu **090730_RTL2832U_LINUX_Ver1.1** do složky na disku **~/digivox/v4l-dvb/linux/drivers/media/dvb/dvb-usb**
cd ~/digivox
wget http://media.ubuntuusers.de/forum/attachments/2103272/090730_RTL2832U_LINUX_Ver1.1.rar
unrar x -ep 090730_RTL2832U_LINUX_Ver1.1.rar ./v4l-dvb/linux/drivers/media/dvb/dvb-usb
===== Upravit atributy perl skriptů =====
cd ~/digivox/v4l-dvb
for i in `find . -name *.pl`; do chmod +x $i ; done
===== Upravit Makefile =====
Do souboru **~/digivox/v4l-dvb/linux/drivers/media/dvb/dvb-usb/Makefile** doplnit na konec
dvb-usb-rtl2832u-objs = demod_rtl2832.o dvbt_demod_base.o dvbt_nim_base.o foundation.o math_mpi.o nim_rtl2832_mxl5007t.o nim_rtl2832_fc2580.o nim_rtl2832_mt2266.o rtl2832u.o rtl2832u_fe.o rtl2832u_io.o tuner_mxl5007t.o tuner_fc2580.o tuner_mt2266.o tuner_tua9001.o nim_rtl2832_tua9001.o
obj-$(CONFIG_DVB_USB_RTL2832U) += dvb-usb-rtl2832u.o
===== Upravit Kconfig =====
Do souboru **~/digivox/v4l-dvb/linux/drivers/media/dvb/dvb-usb/Kconfig** doplnit na konec
config DVB_USB_RTL2832U
tristate "Realtek RTL2832U DVB-T USB2.0 support"
depends on DVB_USB
help
Realtek RTL2832U DVB-T driver
===== Opravit rtl2832u.c =====
V souboru **~/digivox/v4l-dvb/linux/drivers/media/dvb/dvb-usb/rtl2832u.c** opravit chyby
==== odkomentovat řádku 12: ====
změnit řádku
//DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
na
DVB_DEFINE_MOD_OPT_ADAPTER_NR(adapter_nr);
==== Opravit řádky 61,62,63 ====
Doplnit **adapter_nr** jako pátý argument ve funkcích na řádkách 61,62,63:
změnit řádky
if ( ( 0== dvb_usb_device_init(intf,&rtl2832u_1st_properties,THIS_MODULE,NULL) )||
( 0== dvb_usb_device_init(intf,&rtl2832u_2nd_properties,THIS_MODULE,NULL) ) ||
( 0== dvb_usb_device_init(intf,&rtl2832u_3th_properties,THIS_MODULE,NULL) ))
na
if ( ( 0== dvb_usb_device_init(intf,&rtl2832u_1st_properties,THIS_MODULE,NULL,adapter_nr) )||
( 0== dvb_usb_device_init(intf,&rtl2832u_2nd_properties,THIS_MODULE,NULL,adapter_nr) ) ||
( 0== dvb_usb_device_init(intf,&rtl2832u_3th_properties,THIS_MODULE,NULL,adapter_nr) ))
===== Přeložit =====
cd ~/digivox/v4l-dvb
make clean
make
sudo make install
===== Otestovat =====
tail -f /var/log/messages
(zasunout USB)
Sep 1 00:46:28 unb kernel: [24298.848083] usb 2-2: new high speed USB device using ehci_hcd and address 8
Sep 1 00:46:28 unb kernel: [24298.990915] usb 2-2: configuration #1 chosen from 1 choice
Sep 1 00:46:28 unb kernel: [24298.996281] dvb-usb: found a 'DK DVBT DONGLE' in warm state.
Sep 1 00:46:28 unb kernel: [24298.996295] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Sep 1 00:46:28 unb kernel: [24298.998019] DVB: registering new adapter (DK DVBT DONGLE)
Sep 1 00:46:28 unb kernel: [24298.998962] DVB: registering adapter 0 frontend 0 (Realtek RTL2832 DVB-T)...
Sep 1 00:46:28 unb kernel: [24298.999019] dvb-usb: DK DVBT DONGLE successfully initialized and connected.
Sep 1 00:46:28 unb kernel: [24299.001098] dvb-usb: found a 'DK DVBT DONGLE' in warm state.
Sep 1 00:46:28 unb kernel: [24299.001109] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Sep 1 00:46:28 unb kernel: [24299.003400] DVB: registering new adapter (DK DVBT DONGLE)
Sep 1 00:46:28 unb kernel: [24299.004151] DVB: registering adapter 1 frontend 0 (Realtek RTL2832 DVB-T)...
Sep 1 00:46:28 unb kernel: [24299.004208] dvb-usb: DK DVBT DONGLE successfully initialized and connected.
lsmod | grep 2832
mce@unb:~/Download/RTL2832u/090730_RTL2832U_LINUX_Ver1.1/Doc$ lsmod | grep 2832
dvb_usb_rtl2832u 83888 0
dvb_usb 19304 1 dvb_usb_rtl2832u
===== Použít =====
Čímkoli, pro začátek navrhuji [[Kaffeine]]. O použití i v ostatních přehrávačích pojednává článek [[Digitální TV]].
===== Postup pro Ubuntu 9.10 =====
Postup zprovoznění je identický s rozdílem, že po provedení všech kroků ještě navíc musíte udělat následující kroky.
*v souboru **./linux/drivers/media/dvb/dvb-usb/tuner_tua9001.c**
*na řádku 951 změnit
#elif defined(CRYSTAL_19,2_MHZ)
na
#elif defined(CRYSTAL_19_2_MHZ)
*na řádku 957 změnit
#elif defined(CRYSTAL_20,48_MHZ)
na
#elif defined(CRYSTAL_20_48_MHZ)
*Spustit **make** a po pár sekundách ho zastavit (potřebujeme vygenerovat **./v4l/.config**)
*V souboru **./v4l/.config** u problémových modulů
CONFIG_DVB_FIREDTV=m
CONFIG_RADIO_MIROPCM20=m
CONFIG_VIDEO_CX23885=m
CONFIG_VIDEO_MEYE=m
změnit atribut **m** na **n** CONFIG_DVB_FIREDTV=n
CONFIG_RADIO_MIROPCM20=n
CONFIG_VIDEO_CX23885=n
CONFIG_VIDEO_MEYE=n}}}
*Poté znovu spustit **make** a **sudo make install**
===== Postup pro Ubuntu 10.04 =====
Postup zprovoznění je stejný jako v Ubuntu 9.04.
Pokud se při překladu vyskytne chyba
make[2]: *** [~/Programy/DigiVox/v4l-dvb/v4l/ir-raw-event.o] Error 1
make[1]: *** [~/Programy/DigiVox/v4l-dvb/v4l] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.32-22-generic-pae'
make: *** [default] Error 2
, znamená to že poslední V4L zdrojáky nejsou pro tuto verzi Ubuntu patchovány. Než dojde k jejich opatchování, je nutná následující úprava:
Pokud se při sledování TV obejdete bez IR ovladače, stačí v souboru **./v4l/.config** u řádky
CONFIG_IR_CORE=m
změnit atribut **m** na **n** CONFIG_IR_CORE=n}}}
, znovu spustit příkaz
%%make%%
a dokončit postup.
Pokud chcete s vaší TV kartou používat i IR ovladač, po dobu než bude napsán patch je třeba se vrátit ke starší verzi V4L:
Výše uvedený postup absolvujte znovu, ovšm sekci **2.1: Stáhnout poslední zdrojové soubory v4l-dvb**
cd ~
mkdir digivox; cd digivox
hg clone http://linuxtv.org/hg/v4l-dvb
rozšiřte na následující
cd ~
mkdir digivox; cd digivox
hg clone http://linuxtv.org/hg/v4l-dvb
cd v4l-dvb
hg update -ree9826bc7106
===== Postup pro Ubuntu 10.10 =====
Postup zprovoznění je stejný jako v Ubuntu 9.10.
===== Postup pro Ubuntu 11.04 =====
Postup instalace pro jsem popsal v článku [[rtl2832u]].
===== Postup pro Ubuntu 12.10 =====
Funkcni postup je na [[https://github.com/valtri/DVB-Realtek-RTL2832U-2.2.2-10tuner-mod_kernel-3.0.0]]
Sam kartu pouzivam v Ubuntu 12.10 s jadrem 3.5.0 a funguje OK (dalkove ovladani jsem nezkousel).
V Makefile je potreba upravit radek s verzi jadra a pak uz staci zkompilovat.
Cely postup je narozdil od predchozich navodu velice jednoduchy. Funguje i na jinych verzich Ubuntu.
===== Problémy =====
Pokud najednou přestane TV modul fungovat, je možné že došlo k povýšení verze jádra v rámci automatické aktualizace Ubuntu. V tom případě je třeba uvedený postup zopakovat, abychom vytvořili modul dvb-usb-rtl2832u.o pro poslední verzi jádra.
====== Odkazy ======
* Postup zprovoznění bílé verze: [[http://www.abclinuxu.cz/hardware/pridavne-karty/televizni-karty/dvb-t/usb/msi-digivox-mini-ii-v3.0]]
* Postup zprovoznění černé verze: [[http://www.abclinuxu.cz/poradna/linux/show/264833]]
* Odkaz na zdrojáky modulu pro chipset RTL2832u, a postup opravy bugu v rtl2832u.c [[http://forum.ubuntuusers.de/topic/dvb-t-key-msi-digivox-mini-ii-v3-0-aktuell-vo/]]
* Odkaz na zdrojáky V4L: [[http://linuxtv.org/hg/v4l-dvb]]
* Info k zdrojákům V4L (distro, postup buildu, ...): [[http://www.linuxtv.org/repo/]] (viz kapitola "How to build the v4l-dvb kernel modules")
* Odkaz jak naladit kanály [[http://wiki.ubuntu.cz/Digit%C3%A1ln%C3%AD%20TV/channels.conf]]