Azurewave AD SP400 CI (VP-1041)
A DVB-S and DVB-S2 PCI card from Azurewave, also known as TwinHan. The Technisat SkyStar HD2 is a rebadge of this product, with different PCI subsystem IDs.
Overview/Features
PCI card which supports DVB-S and DVB-S2 standard definition and high definition digital satellite TV. A common interface unit with a PCI faceplate is included. Hardware supports DiSEqC 1.2. Remote control and infrared receiver cable is included.
It is currently not supported in current releases of Linux. However, experimental support for some of the device's features is available (see below for details).
Components Used
STB0899 multistandard demodulator (DVB-S and DVB-S2).
STB6100 silicon tuner.
Mantis PCI bridge (VP 1041 + 4046).
Identification
For the Azurewave AD SP400 CI:
lspci -vvn
05:00.0 0480: 1822:4e35 (rev 01) Subsystem: 1822:0031 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 (2000ns min, 63750ns max) Interrupt: pin A routed to IRQ 11 Region 0: Memory at 55000000 (32-bit, prefetchable) [size=4K]
lspci -vv
05:00.0 Multimedia controller: Twinhan Technology Co. Ltd Mantis DTV PCI Bridge Controller [Ver 1.0] (rev 01) Subsystem: Twinhan Technology Co. Ltd Unknown device 0031 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 (2000ns min, 63750ns max) Interrupt: pin A routed to IRQ 11 Region 0: Memory at 55000000 (32-bit, prefetchable) [size=4K]
Here (http://www.linuxtv.org/pipermail/linux-dvb/2008-February/023821.html) is the output for the Technisat Skystar HD2. It looks like it is a Twinhan VP-1041/Azurewave AD SP400 rebadge. Note that the subsystem ID 1ae4:0001 is different to the one listed above for the Azurewave card (1822:0031).
This is the output of lspci -vvn:
01:06.0 0480: 1822:4e35 (rev 01) Subsystem: 1ae4:0001 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 (2000ns min, 63750ns max) Interrupt: pin A routed to IRQ 16 Region 0: Memory at e5100000 (32-bit, prefetchable) [size=4K]
This is the output of lsusb -vv:
01:06.0 Multimedia controller: Twinhan Technology Co. Ltd Mantis DTV PCI Bridge Controller [Ver 1.0] (rev 01) Subsystem: Unknown device 1ae4:0001 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- Latency: 32 (2000ns min, 63750ns max) Interrupt: pin A routed to IRQ 16 Region 0: Memory at e5100000 (32-bit, prefetchable) [size=4K]
Skystar HD2 images:
Making it Work
Firmware
is there any firmware specific information for this card? if so, list it here ... this means you
Drivers
There are currently no in kernel drivers for this card.
If someone wants to provide a brief synopsis of the driver tail of woe, outlining why there isn't a greater level of support, then do so here ... this means you
However, experimental support does exist which has been used successfully with the AD SP400 and the Technisat Skystar HD2. The Technisat will not be recognised as a frontend unless the value of the MANTIS_VP_1041_DVB_S2 #define in mantis_vp1041.h is changed from 0x0031 to 0x0001 to suit the different subsystem ID. Even with this change the card currently will not tune unless placed in DVB-S2 mode first using szap, even if the channel you want is DVB-S.
provide the details of where the drivers and patches and necessary tools are available ... this means you ... you can use the following older content from the article as a basis for your write up:
( Method 1) Twinhan provides a tarball containing a v4l-dvb linux driver and a version of dvb-apps on their website: http://www.twinhan.com/download_driver&software.asp
It uses an ioctl to switch between DVB-S and DVB-S2 modes. An application to do this called 'switch' is supplied.
Multiproto is not required.
provide details of how to compile for recent kernels -- this means you
(Method 2) A current solution is based on the multiproto and mantis trees from http://jusst.de/hg/. However these have not yet been merged into mainstream v4l-dvb, and unfortunately as of Jan 2008 the author of multiproto seems to be willing to block this process indefinitely.
Kernel 2.6.20 works ok.
Obtain multiproto:
hg clone http://jusst.de/hg/multiproto
Use following patch to patch multiproto
http://pansy.at/gernot/twinhan-vp1041-3.diff.gz
Compile the patched multiproto and install.
UPDATE 28 Jan 2008: multiproto was updated to sync with the latest dvb-v4l. For 2.6.24 kernel see http://www.linuxtv.org/pipermail/linux-dvb/2008-January/023457.html
UPDATE 11 Feb 2008: Initial support for Mantis VP-1041 was added to multiproto. See the changeset http://jusst.de/hg/mantis/rev/ef56e97c3613. However some problems were reported: http://www.linuxtv.org/pipermail/linux-dvb/2008-February/023824.html, http://www.linuxtv.org/pipermail/linux-dvb/2008-February/023855.html.
UPDATE 21 Feb 2008: The Technisat Skystar HD2 has been reported as working (http://www.linuxtv.org/pipermail/linux-dvb/2008-February/023940.html). Note the necessary procedure with szap given in the post and the #define change mentioned above.
UPDATE 24 Feb 2008: The mantis tree has been updated to support the subsystem IDs of the SkyStar HD2, manual changes to the tree are no longer needed to get the card recognised at boot time. It now tunes successfully to both DVB-S and DVB-S2 transponders using the replacement szap.c described below. It is not necessary to use the multiproto tree as described above, use "hg clone http://jusst.de/hg/mantis", no patches are required.
Sample kernel output
provide the relevant portion of dmesg here
Common Interface support
Still none.
Tuner / DiSEqC / Player support
provide details of how to use with VDR, MythTV and Kaffeine here -- this means you
Obtain scan from http://jusst.de/manu/scan.tar.bz2 and slot in the util/scan directory of hg http://linuxtv.org/hg/dvb-apps/. Fix up the .h includes to come from the earlier multiproto compilation.
Obtain szap.c from http://abraham.manu.googlepages.com/szap.c and compile it in util/szap according to http://www.linuxtv.org/pipermail/linux-dvb/2007-October/021474.html
Use scan to create a channels.conf. Then to tune to a channel do:
szap -r -p -i -a 0 -l UNIVERSAL -t 0 -c channels.conf "channelname"
or for DVB-S2:
szap -r -p -i -a 0 -l UNIVERSAL -t 2 -c channels.conf
then
ASTRA HD+
and then
mplayer - < /dev/dvb/adapter0/dvr0
(assuming the card is your adapter number 0)
Without the interactive -i option szap tunes and locks but is unkillable (with ctrl-c or kill) to change to another channel. Interactively type channel names in the terminal to tune to each one.
Without the -p option DVB-S2 streams are not playable.
For processors which are not fast enough to decode H.264 in real time you might try something like this (dual core= 2 threads)
mplayer -lavdopts fast:threads=2:skipframe=nonref -framedrop - < /dev/dvb/adapter0/dvr0
provide details of how to use with DiSEqC -- this means you
Remote Control Support
discuss support for the remote control here