{"id":281,"date":"2015-01-18T22:14:46","date_gmt":"2015-01-18T15:14:46","guid":{"rendered":"http:\/\/sybond.web.id\/blog\/?p=281"},"modified":"2015-01-23T19:23:36","modified_gmt":"2015-01-23T12:23:36","slug":"driver-mygica-t230","status":"publish","type":"post","link":"https:\/\/sybond.web.id\/blog\/2015\/01\/18\/driver-mygica-t230\/","title":{"rendered":"Driver MyGica T230: rebuild media subsystem"},"content":{"rendered":"<div style=\"width: 160px\" class=\"wp-caption alignleft\"><img loading=\"lazy\" src=\"http:\/\/www.linuxtv.org\/wiki\/images\/thumb\/c\/ca\/Geniatech-t230.jpg\/150px-Geniatech-t230.jpg\" alt=\"\" width=\"150\" height=\"150\" \/><p class=\"wp-caption-text\">T230 DVB-T2 USB Dongle<\/p><\/div>\n<p>Pada Ubuntu 14.04 dengan kernel 3.14, MyGica T230 tidak secara <em>default<\/em> dikenali.\u00a0Untuk dapat menggunakan device ini <del>satu-satunya cara<\/del>\u00a0salah satu cara adalah <em>rebuild linux\u00a0media\u00a0subsystem<\/em>\u00a0versi terbaru untuk kernel ini atau upgrade kernel ke versi 3.19. Yang katanya sudah support device ini.<\/p>\n<p>Media subsystem merupakan bagian kernel linux yang secara umum menyediakan driver untuk device-device multimedia seperti webcam, audio\/video streaming, termasuk di dalamnya adalah tuner TV digital.<\/p>\n<p>Pada kernel 3.14, berikut adalah <code>syslog<\/code> yang muncul ketika device ini ditancapkan:<\/p>\n<pre class=\"theme:vs2012-black toolbar:2 nums:false lang:default highlight:0 decode:true\">kernel: [  197.165734] usb 1-1.1: new high-speed USB device number 4 using ehci-pci\r\nkernel: [  197.259129] usb 1-1.1: New USB device found, idVendor=0572, idProduct=c688\r\nkernel: [  197.259135] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3\r\nkernel: [  197.259138] usb 1-1.1: Product: USB Stick\r\nkernel: [  197.259140] usb 1-1.1: Manufacturer: Max\r\nkernel: [  197.259142] usb 1-1.1: SerialNumber: 080116\r\nmtp-probe: checking bus 1, device 4: \"\/sys\/devices\/pci0000:00\/0000:00:1a.0\/usb1\/1-1\/1-1.1\"\r\nmtp-probe: bus: 1, device: 4 was not an MTP device<\/pre>\n<p><!--more-->Opsi yang paling mudah adalah mencoba upgrade kernel ke versi 3.19. Namun ternyata hasilnya juga negatif:<\/p>\n<pre class=\"theme:vs2012-black toolbar:2 nums:false lang:default highlight:0 decode:true\">kernel: [  150.296398] dvb_usb_cxusb: probe of 3-1.1:1.0 failed with error -22\r\n<\/pre>\n<p>Setelah membaca beberapa forum dvb linux, hal ini disebabkan beberapa <em>commit<\/em> dari media subsystem yang seharusnya menrampingkan\u00a0driver malah menghilangkan <em>support<\/em>\u00a0driver terhadap device ini. Memang pada akhirnya terpaksa\u00a0harus melakukan <em>rebuild<\/em> media subsystem linux. <em>Meh.<\/em><\/p>\n<p>Langsung saja, berikut yang dilakukan untuk melakukan patch media subsystem dengan versi yang support T230:<\/p>\n<ol>\n<li>Clone\u00a0repository git <code>media_build<\/code> dari <a title=\"Media Subsystem Git Repo\" href=\"http:\/\/git.linuxtv.org\/cgit.cgi\/media_build.git\/\" target=\"_blank\">linuxtv.org<\/a>\n<pre class=\"lang:sh decode:true\">git clone git:\/\/linuxtv.org\/media_build.git<\/pre>\n<\/li>\n<li>Copy patch berikut, dan simpan dalam sebuah file (misalnya Mygica-T230-support.patch) pada direktori <code>media_build\/backports<\/code>:\n<pre class=\"lang:diff decode:true\">diff --git a\/drivers\/media\/usb\/dvb-usb\/cxusb.c b\/drivers\/media\/usb\/dvb-usb\/cxusb.c\r\nindex 0f345b1..f327c49 100644\r\n--- a\/drivers\/media\/usb\/dvb-usb\/cxusb.c\r\n+++ b\/drivers\/media\/usb\/dvb-usb\/cxusb.c\r\n@@ -2232,7 +2232,7 @@ static struct dvb_usb_device_properties cxusb_mygica_t230_properties = {\r\n \t\t{\r\n \t\t\t\"Mygica T230 DVB-T\/T2\/C\",\r\n \t\t\t{ NULL },\r\n-\t\t\t{ &amp;cxusb_table[22], NULL },\r\n+\t\t\t{ &amp;cxusb_table[20], NULL },\r\n \t\t},\r\n \t}\r\n };<\/pre>\n<\/li>\n<li>Update file <code>media_build\/backports\/backports.txt<\/code>, tambahkan nama file poin (2) pada bagian\u00a0<code>[3.255.255]<\/code> atau sesuai versi kernel saat ini.\n<pre class=\"lang:default highlight:0 decode:true \">add Mygica-T230-support.patch<\/pre>\n<\/li>\n<li>Rebuild dengan command\n<pre>.\/build<\/pre>\n<\/li>\n<li>Install pada kernel dengan command\n<pre>sudo make install<\/pre>\n<\/li>\n<li>Jangan lupa copy dua firmware berikut ke dalam folder <code>\/lib\/firmware<\/code>\n<ol>\n<li><a title=\"Demodulator firmware\" href=\"https:\/\/github.com\/OpenELEC\/dvb-firmware\/blob\/master\/firmware\/dvb-demod-si2168-b40-01.fw\" target=\"_blank\">dvb-demod-si2168-b40-01.fw<\/a> (MD5: <code>d8da7ff67cd56cd8aa4e101aea45e052<\/code>)<\/li>\n<li><a title=\"TV tuner firmware\" href=\"https:\/\/github.com\/OpenELEC\/dvb-firmware\/blob\/master\/firmware\/dvb-tuner-si2158-a20-01.fw\" target=\"_blank\">dvb-tuner-si2158-a20-01.fw<\/a> (MD5: <code>0cba7ce61c1411cbe7f22c0746e24e33<\/code>)<\/li>\n<\/ol>\n<\/li>\n<li>Reboot, dan seharusnya device ini sudah dapat dikenali dengan sempurna.<\/li>\n<\/ol>\n<p>Berikut adalah <code>syslog<\/code> setelah dilakukan patch, rebuild dan instalasi pada kernel 3.19 RC4.<\/p>\n<pre class=\"theme:vs2012-black toolbar:2 nums:false lang:default highlight:0 decode:true \">kernel: [  111.084465] dvb-usb: found a 'Mygica T230 DVB-T\/T2\/C' in warm state.\r\nkernel: [  111.319917] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.\r\nkernel: [  111.320115] DVB: registering new adapter (Mygica T230 DVB-T\/T2\/C)\r\nkernel: [  111.361243] i2c i2c-19: Added multiplexed i2c bus 20\r\nkernel: [  111.361250] si2168 19-0064: Silicon Labs Si2168 successfully attached\r\nkernel: [  111.443686] si2157 20-0060: Silicon Labs Si2147\/2148\/2157\/2158 successfully attached\r\nkernel: [  111.443706] usb 3-1.1: DVB: registering adapter 0 frontend 0 (Silicon Labs Si2168)...\r\nkernel: [  111.444265] input: IR-receiver inside an USB DVB receiver as \/devices\/pci0000:00\/0000:00:1a.0\/usb3\/3-1\/3-1.1\/input\/input21\r\nkernel: [  111.444341] dvb-usb: schedule remote query interval to 100 msecs.\r\nkernel: [  111.444432] dvb-usb: Mygica T230 DVB-T\/T2\/C successfully initialized and connected.\r\nkernel: [  111.444469] usbcore: registered new interface driver dvb_usb_cxusb<\/pre>\n<p>Selamat menikmati tayangan TV digital! \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada Ubuntu 14.04 dengan kernel 3.14, MyGica T230 tidak secara default dikenali.\u00a0Untuk dapat menggunakan device ini satu-satunya cara\u00a0salah satu cara adalah rebuild linux\u00a0media\u00a0subsystem\u00a0versi terbaru untuk kernel ini atau upgrade kernel ke versi 3.19. Yang katanya sudah support device ini. Media subsystem merupakan bagian kernel linux yang secara umum menyediakan driver untuk device-device multimedia seperti webcam, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4,11],"tags":[97,98,95,96],"_links":{"self":[{"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/posts\/281"}],"collection":[{"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/comments?post=281"}],"version-history":[{"count":21,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/posts\/281\/revisions"}],"predecessor-version":[{"id":293,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/posts\/281\/revisions\/293"}],"wp:attachment":[{"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/media?parent=281"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/categories?post=281"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sybond.web.id\/blog\/wp-json\/wp\/v2\/tags?post=281"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}