Afatech AF9015
A DVB-T demodulator from Afatech. This is the company's second generation COFDM demodulator, and is the successor to the AF9005.
This chip is the main USB control/demux in some cheap DVB-T USB devices currently available, such as:
- The WandTV
- The Elements High Definition DVB-T Receiver Model no DK-5203.
- Dongles with USB ID 15a4:9016 (or 15a4:9015 ?), such as the A-Link DTU (m)
- Geniatech T328B
Drivers
Opensource Mercurial Repositories
- http://jusst.de/hg/af901x
- http://linuxtv.org/hg/~anttip/af9015/ (Supported tuners are: MT2060, MT2061 and QT1010.)
Vendor Released Driver
A vendor-written driver is available from http://af.zsolttech.com/ . Users have reported that it is indeed working, including for x64_64 (for some further information see the threads here and here.
For devices based on the MT2060 tuner (such as the Geniatech T328B) you may need to patch the file MT2060M.h in the following way:
replace
typedef unsigned long UData_t;
with
typedef unsigned int UData_t;
Then compile, install, modprobe dvb_usb_af9015 and you are finished.
Driver Development Log
I'm currently writing a driver for this chip, and as there's not much around in terms of a howto on this subject, I thought it might be worth documenting the process.
I've got a head start in that there is an earlier chip from Afatech, the AF9005, for which drivers were recently written/developed. I've got the driver source code for that chip along with the documentation for that and my chip, so I'm going to be working on modifying the AF9005 drivers to work with the AF9015. I'm not sure if I'm allowed to post the documentations here, I'll find out and if so a link will be posted.
To start with, there are some great Linux USB tutorials on Linux Journal:
- start here: How to Write a Linux USB Device Driver
- then here: Writing a Simple USB Driver
- Hot Plug
- and then: Snooping the USB Data Stream
Also get the source for V4L-DVB:
You will find the usb drivers are in ./v4l-dvb/linux/drivers/media/dvb/dvb-usb. Have a bit of a browse through them while you're reading through the first article above, get a feel for how the driver is put together. (There is a procedure described in http://www.ubuntuforums.org/showthread.php?p=1067326).