Ubuntu Forums ubuntu.com - launchpad.net - ubuntu help  

Go Back   Ubuntu Forums > The Ubuntu Forum Community > Other Community Discussions > 3rd Party Projects > Projects > Mythbuntu
Register Reset Password Forum Help Forum Council Search Today's Posts Mark Forums Read

Mythbuntu
Discussions for the Mythbuntu project.

 
Thread Tools Display Modes
Old November 8th, 2007   #1
arnebaier
First Cup of Ubuntu
 
Join Date: Nov 2007
Beans: 1
Af9015

Hi, I am trying to get an AfaTech AF9015 chip (USB stick) up and running, but mythbuntu doesn't seem to recognize it as a DVB-T source. Who can help?
arnebaier is offline   Reply With Quote
Old January 14th, 2008   #2
mvirkkil
First Cup of Ubuntu
 
Join Date: Jan 2005
Beans: 6
Re: Af9015

The chip AF9015 is not supported yet.

As you might know the linux-dvb project develops support for different DVB-chips. One of the people working on it has created a driver to support the AF9015 chip, and you might be able to use it. The sourcecode for the driver can be found in his mercurial repository at http://linuxtv.org/hg/~anttip/af9015/ and the firmware is at http://otit.fi/~crope/v4l-dvb/af9015...irmware_files/

Please note that getting this to work means you probably need to get the development version of the linux kernel dvb subsystem, patch it and compile it.

Eventually the support will probably get in to linux-dvb and Linux in general but at the moment getting the AF9015 to work is a bit challenging.
mvirkkil is offline   Reply With Quote
Old January 29th, 2008   #3
seanemerald
First Cup of Ubuntu
 
Join Date: Jun 2007
Beans: 2
Re: Af9015

So once I run "make install" on the downloaded files mentioned above, will the tuner automatically be recognized in mythbuntu or any other media center?
seanemerald is offline   Reply With Quote
Old January 30th, 2008   #4
mvirkkil
First Cup of Ubuntu
 
Join Date: Jan 2005
Beans: 6
Re: Af9015

What I did to get it working was (iirc):
- download and extract sources from http://linuxtv.org/hg/~anttip/af9015...d1798b.tar.bz2
- compile, you need at least the build-essentials and kernel-headers packages, you will find the compiled kernel modules (*.ko) in the v4l directory
- remove any dvb or v4l kernel modules you currently have loaded in your kernel (lsmod and "modprobe --remove")
- insert the newly compiled modules in to your kernel "sudo insmod ./v4l2-core.ko" etc.

I don't exactly remember which modules I loaded to get it to work. If you get any error like undefined symbol, check dmesg for more information. What I remember is that I needed to modprobe i2c-core, and to insmod at least dvb-usb. the af9013 -frontend and mt2060 and maybe qt1010. Oh and of course af9015. I also added a bunch more because of dependencies revealed by "undefined symbol" messages.

You also need to place the firmware file in /lib/firmware

Last edited by mvirkkil; January 30th, 2008 at 11:11 AM..
mvirkkil is offline   Reply With Quote
Old January 31st, 2008   #5
motumboe
Spilled the Beans
 
Join Date: Feb 2007
Beans: 14
Re: Af9015

@mvirkkil

So you got a tv tuner with af9015 to work??? great!
what is the usb id of your tuner (obtain e.g. with lsusb?)
cheers
motumboe is offline   Reply With Quote
Old January 31st, 2008   #6
motumboe
Spilled the Beans
 
Join Date: Feb 2007
Beans: 14
Re: Af9015

I'm trying to get it working on a Terratec USB T XE tuner but at the moment without success.
USB ID 0ccd 0069
motumboe is offline   Reply With Quote
Old February 4th, 2008   #7
mvirkkil
First Cup of Ubuntu
 
Join Date: Jan 2005
Beans: 6
Re: Af9015

Install at least the following packages
build-essential
linux-headers-generic
dvb-utils

- Download the firmware to /lib/firmware/dvb-usb-af9015.fw
- remove any loaded v4l and dvb modules from your kernel
* first check what modules are loaded by issuing 'lsmod'
* remove modules by calling modprobe --remove modulename
ex: 'sudo modprobe --remove v4l2_common'
* if you get the error message "FATAL: Module v4lsomething is in use.", check which module is using it, and remove that one first.

- Download and unpack af9015-ca6a41d1798b.tar.bz2
- go to the af9015-ca6a41d1798b directory
- run `make`
- go to the subdirectory v4l (typing ls *.ko should show a whole bunch of kernel modules)
- 'sudo modprobe i2c-core'
- 'sudo insmod ./dvb-core.ko'
- 'sudo insmod ./dvb-usb.ko'
- 'sudo insmod ./mt2060.ko'
- 'sudo insmod ./qt1010.ko'
- 'sudo insmod ./af9013.ko'
- 'sudo insmod ./dvb-usb-af9015.ko'

Note: If you get something like "symbol not found (-1)" while insmod:ing the modules, check dmesg for the details and try to figure which module you are missing.

When you input the usb stick you should see the following messages:
Code:
af9015_usb_probe:
af9015_identify_state: reply:01
dvb-usb: found a 'Afatech AF9015 DVB-T USB2.0 stick' in cold state, will try to load a firmware
dvb-usb: downloading firmware from file 'dvb-usb-af9015.fw'
af9015_download_firmware:
dvb-usb: found a 'Afatech AF9015 DVB-T USB2.0 stick' in warm state.
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (Afatech AF9015 DVB-T USB2.0 stick)
af9015_eeprom_dump:
00: 2c 75 9b 0b 00 00 00 00 a4 15 16 90 00 02 01 02 
10: 00 80 00 fa fa 10 40 ef 01 30 31 30 31 31 30 30 
20: 34 30 36 30 30 30 30 31 ff ff ff ff ff ff ff ff 
30: 00 00 3a 01 00 08 02 00 1d 8d c4 04 82 ff ff ff 
40: ff ff ff ff ff 08 02 00 1d 8d c4 04 82 ff ff ff 
50: ff ff ff ff ff 24 00 00 04 03 09 04 10 03 41 00 
60: 66 00 61 00 74 00 65 00 63 00 68 00 10 03 44 00 
70: 56 00 42 00 2d 00 54 00 20 00 32 00 20 03 30 00 
80: 31 00 30 00 31 00 31 00 30 00 30 00 34 00 30 00 
90: 36 00 30 00 30 00 30 00 30 00 31 00 00 ff ff ff 
a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
e0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
f0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 
af9015_read_config: xtal:2 set adc_clock:28000
af9015_read_config: tuner id1:130
af9015_read_config: spectral inversion:0
af9015_set_gpios:
af9013: firmware version:4.95.0
DVB: registering frontend 0 (Afatech AF9013 DVB-T)...
af9015_tuner_attach: 
af9015_mt2060_tuner_attach: 
MT2060: successfully identified (IF1 = 1220)
dvb-usb: Afatech AF9015 DVB-T USB2.0 stick successfully initialized and connected.
af9015_init:
af9015_download_ir_table:
usbcore: registered new interface driver dvb_usb_af9015
Writing 'ls /dev/dvb/adapter0' should show
demux0 dvr0 frontend0 net0

Ok, so next you will need a channels.conf file. To generate it you should use the command (replace xx-CityName with something more suitable):
'scan /usr/share/doc/dvb-utils/examples/scan/dvb-t/xx-CityName > channels.conf'

I haven't tested it very heavily, just by using xine. I couldn't get the radio channels to work in xine so I simply removed them from the config file.

To test it with xine copy the channels.conf file to the .xine directory. Start xine and press the dvb button.

There is currently no support for the remote controller, so I have not inserted the modules that the remote would use (probably ir-common.ko and ir-kbd-i2c.ko).

'lsusb -v' shows the following info about the stick:
Code:
Bus 007 Device 002: ID 15a4:9016  
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x15a4 
  idProduct          0x9016 
  bcdDevice            2.00
  iManufacturer           1 Afatech
  iProduct                2 DVB-T 2
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           71
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              500mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           4
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0 
      bInterfaceProtocol      0 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x84  EP 4 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x85  EP 5 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0200  1x 512 bytes
        bInterval               0
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Devices
      bInterfaceSubClass      0 No Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0 
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.01
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      65
         Report Descriptors: 
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval              16
Device Qualifier (for other device speed):
  bLength                10
  bDescriptorType         6
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  bNumConfigurations      1
Device Status:     0x0000
  (Bus Powered)
mvirkkil is offline   Reply With Quote
Old February 4th, 2008   #8
teetee
5 Cups of Ubuntu
 
Join Date: May 2007
Beans: 26
Re: Af9015

When trying to install af9015-ca6a41d1798b (or v4l) I'll get:

Quote:
/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.c: In function 'saa7134_resume':
/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.c:1348: error: size of array 'type name' is negative
/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.c:1348: warning: comparison of distinct pointer types lacks a cast
/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.c:1362: error: size of array 'type name' is negative
/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.c:1362: warning: comparison of distinct pointer types lacks a cast
make[3]: *** [/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l/saa7134-core.o] Error 1
make[2]: *** [_module_/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-2.6.22-14-rt'
make[1]: *** [default] Virhe 2
make[1]: Poistutaan hakemistosta "/home/tt/asennus/AlinkUSBdigi/af9015-ca6a41d1798b/v4l"
make: *** [all] Virhe 2
And that "Virhe" is Error...

Last edited by teetee; February 4th, 2008 at 01:20 PM..
teetee is offline   Reply With Quote
Old February 4th, 2008   #9
teetee
5 Cups of Ubuntu
 
Join Date: May 2007
Beans: 26
Re: Af9015

And by the way, from where can I found firmware that is needed here?

http://otit.fi/~crope/v4l-dvb/af9015...irmware_files/
Won't open...

Edit: And should that firmware be located at /lib/firmware/dvb-usb-af9015.fw before starting to do anything else?
teetee is offline   Reply With Quote
Old February 5th, 2008   #10
motumboe
Spilled the Beans
 
Join Date: Feb 2007
Beans: 14
Re: Af9015

mvirkkil,
thank you very much for your really detailed explanation! This evening I'll try it!
Thank you again,
Marco
motumboe is offline   Reply With Quote

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:13 AM.


vBulletin ©2000 - 2010, Jelsoft Enterprises Ltd. Ubuntu Logo, Ubuntu and Canonical © Canonical Ltd. Tango Icons © Tango Desktop Project. bilberry