Azurewave AD SP400 CI (VP-1041): Difference between revisions
Andreas4all (talk | contribs) No edit summary |
|||
(96 intermediate revisions by 11 users not shown) | |||
Line 1: | Line 1: | ||
[[Image:Twinhan_VP-1041.gif|right]] |
[[Image:Twinhan_VP-1041.gif|right]] |
||
A [[DVB-S]] and [[DVB-S2]] [[DVB-S2 PCI Cards|PCI card]] from [[Azurewave]], also known as [[TwinHan]]. The Technisat HD2 |
A [[DVB-S]] and [[DVB-S2]] [[DVB-S2 PCI Cards|PCI card]] from [[Azurewave]], also known as [[TwinHan]]. The Technisat SkyStar HD2 and [[TerraTec_Cinergy_S2_PCI_HD_CI|TerraTec Cinergy S2 PCI HD CI]] are rebadges of this product, with different PCI subsystem IDs. |
||
==Overview/Features== |
==Overview/Features== |
||
PCI card which supports [[DVB-S]] and [[DVB-S2]] standard definition and high definition digital |
A 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. |
satellite TV. A common interface unit with a dummy PCI connector and standard faceplate is included (Tip: if the dummy PCI connector were trimmed by a few millimetres it would presumably fit in a PCI express slot too). The hardware supports rotors via [[DiSEqC]] 1.2, and the card has a 4-pin molex power connector, ostensibly to draw additional power from the PSU rather than load the PCI bus. A remote control and an infrared receiver cable are included. |
||
The Mantis driver is included in kernel version => 2.6.33-rc6. |
|||
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=== |
===Components Used=== |
||
STB0899 multistandard demodulator (DVB-S and DVB-S2). |
[[STMicroelectronics]] [[STMicroelectronics STB0899|STB0899]] multistandard demodulator (DVB-S and DVB-S2). |
||
[[STMicroelectronics]] [[STMicroelectronics STB6100|STB6100]] 8PSK/QPSK direct conversion (zero IF) tuner for DVB-S2. |
|||
STB6100 silicon tuner. |
|||
Mantis PCI bridge (VP 1041 + 4046). |
Mantis PCI bridge (VP 1041 + 4046). 144-pin package. |
||
[[STMicroelectronics]] [[STMicroelectronics LNBP21|LNBP21]] LNB supply and control IC. |
|||
===Identification=== |
===Identification=== |
||
Azurewave AD SP400 CI: 1822:4e35 / Subsystem: 1822:0031 |
|||
Skystar HD2 (a): 1822:4e35 / Subsystem: 1ae4:0001 |
|||
Skystar HD2 (b): 1822:4e35 / Subsystem: 1ae4:0003 |
|||
TerraTec Cinergy S2 PCI HD CI: 1822:4e35 / Subsystem: 153b:1179 |
|||
Line 44: | Line 53: | ||
Region 0: Memory at 55000000 (32-bit, prefetchable) [size=4K] |
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). |
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). Note also that a different subsystem ID for a Skystar HD2 (1ae4:0003) has been reported for some cards at http://www.linuxtv.org/pipermail/linux-dvb/2008-July/027261.html so perhaps a change needs to be made to allow for this possibility too. |
||
This is the output of lspci -vvn: |
This is the output of lspci -vvn: |
||
Line 80: | Line 89: | ||
===Firmware=== |
===Firmware=== |
||
''is there any firmware specific information for this card? if so, list it here ... this means you'' |
|||
No firmware required. |
|||
===Drivers=== |
===Drivers=== |
||
There are currently no in kernel drivers for this card. |
|||
Driver is available from http://linuxtv.org/hg/v4l-dvb |
|||
''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'' |
|||
also |
|||
http://jusst.de/hg/v4l-dvb |
|||
====Clocking==== |
|||
Incorrect clocking can cause damage to the demodulator on the card. Damaged cards has been actually identified. |
|||
====Mantis driver==== |
|||
hg clone http://linuxtv.org/hg/v4l-dvb |
|||
cd v4l-dvb/v4l |
|||
make |
|||
sudo make install |
|||
sudo reboot |
|||
if compiling fails because of FiredTV just run: |
|||
sudo make menuconfig |
|||
before the "make" command and disable -> Multimedia Support -> DVB/ATSC Adapter -> Firedtv/Floppydtv |
|||
---- |
|||
Alternatively, try this driver: |
|||
hg clone http://jusst.de/hg/mantis-v4l |
|||
ln -s mantis-v4l s2 [the scan-s2 and szap-s2 Makefiles expect this] |
|||
cd mantis-v4l |
|||
make |
|||
sudo make install |
|||
sudo reboot |
|||
Scan for channels with scan-s2: |
|||
hg clone http://mercurial.intuxication.org/hg/scan-s2 |
|||
cd scan-s2 |
|||
[check the INCLUDE line in the Makefile is OK] |
|||
make |
|||
./scan-s2 [options] -o zap dvb-s/[satellitefile] > ~/channels.conf |
|||
and tune with szap-s2: |
|||
hg clone http://mercurial.intuxication.org/hg/szap-s2 |
|||
cd szap-s2 |
|||
[check the INCLUDE line in the Makefile is OK] |
|||
make |
|||
./szap-s2 [options] -c ~/channels.conf [channel] |
|||
Or install one of the main multimedia applications like [[Kaffeine]] or [[MythTV]]. |
|||
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. |
|||
====Twinhan Driver==== |
|||
''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:'' |
|||
Twinhan provides a tarball containing a rather old v4l-dvb linux driver and a version of dvb-apps on their website: |
|||
'''( 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 |
http://www.twinhan.com/download_driver&software.asp |
||
http://www.twinhan.com/files/AW/Linux/AZLinux_v1.4.2_CI_FC6.tar.gz |
|||
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. |
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. |
||
It was released for kernel 2.6.18, and the Fedora Core 6 distribution, so considerable work would be |
|||
''provide details of how to compile for recent kernels -- this means you'' |
|||
needed to port it to the latest kernel. Some preliminary work on this has been reported, and locking |
|||
has been reported to be better than the multiproto driver, |
|||
see http://linuxtv.org/pipermail/linux-dvb/2008-October/029642.html. |
|||
Whilst it is encouraging that Twinhan bothered to put a Linux driver on their website, it is almost |
|||
'''(Method 2)''' |
|||
useless to end users. It does not compile with current kernels -- it was not released in the |
|||
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 and did not benefit from the future-proofing that that provides. It also offers no open-source |
|||
CI support. If Twinhan would like to cooperate with the whole community to develop first-class |
|||
future-proof open-source support for this card in the form of a released in-kernel Linux |
|||
driver it would greatly benefit them and their customers. |
|||
====Mantis/Multiproto Driver==== |
|||
Kernel 2.6.20 works ok. |
|||
A driver based on the obsolete [[multiproto]] API is available in the mantis tree at http://jusst.de/hg/mantis. |
|||
Obtain [[multiproto]]: |
Obtain mantis/[[multiproto]]: |
||
hg clone http://jusst.de/hg/ |
hg clone http://jusst.de/hg/mantis |
||
Compile and install. |
|||
Use following patch to patch [[multiproto]] |
|||
http://pansy.at/gernot/twinhan-vp1041-3.diff.gz |
|||
It has been reported that (reference?) 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 |
|||
Compile the patched [[multiproto]] and install. |
|||
(''Can someone please recheck this and report, stating driver version etc?''). |
|||
As described in http://www.linuxtv.org/pipermail/linux-dvb/2008-August/027897.html and http://www.munz.li/?p=47 if you have an 0003 card then change one line in mantis_vp1041.h to |
|||
#define TECHNISAT_SKYSTAR_HD2 0×0003 |
|||
This has been fixed in the liplianin-s2 driver (see this patch http://linuxtv.org/pipermail/linux-dvb/2008-October/029912.html). |
|||
====Technisat Skystar HD2==== |
|||
hg clone http://mercurial.intuxication.org/hg/s2-liplianin |
|||
make |
|||
make install |
|||
If you have error with FiredTV make this: |
|||
make menuconfig |
|||
Disable FiredTV in -> Multimedia Support -> DVB/ATSC Adapter -> Firedtv/Floppydtv |
|||
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 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 |
||
Line 120: | Line 191: | ||
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 |
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. |
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. It is unclear whether DiSEqC switches and rotors are being driven correctly and/or with sufficient current http://www.linuxtv.org/pipermail/linux-dvb/2008-February/024060.html. |
|||
UPDATE 25 Mar 2008: mantis tree needs new szap, because of an API change. use offical dvb-apps hg tree (hg clone http://linuxtv.org/hg/dvb-apps). as of March 25 i need a patch to get the card working correctly (http://de.pastebin.ca/957250) |
|||
UPDATE 18 May 2008: szap from mantis tree works with the following patch: http://www.linuxtv.org/pipermail/linux-dvb/2008-April/025137.html |
|||
UPDATE 27 Sep 2008: A possible solution to locking and scanning problems with the multiproto driver has been posted here: http://linuxtv.org/pipermail/linux-dvb/2008-September/029361.html. |
|||
===Sample kernel output=== |
===Sample kernel output=== |
||
This is for a Skystar HD2 (1ae4:0003) |
|||
''provide the relevant portion of dmesg here'' |
|||
Mantis 0000:02:0c.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 |
|||
irq: 20, latency: 64 |
|||
memory: 0xf1bff000, mmio: 0xf8910000 |
|||
found a VP-1041 PCI DSS/DVB-S/DVB-S2 device on (02:0c.0), |
|||
Mantis Rev 1 [1ae4:0003], irq: 20, latency: 64 |
|||
memory: 0xf1bff000, mmio: 0xf8910000 |
|||
MAC Address=[00:08:c9:e0:3c:de] |
|||
mantis_alloc_buffers (0): DMA=0x35d70000 cpu=0xf5d70000 size=65536 |
|||
mantis_alloc_buffers (0): RISC=0x35cef000 cpu=0xf5cef000 size=1000 |
|||
DVB: registering new adapter (Mantis dvb adapter) |
|||
stb0899_attach: Attaching STB0899 |
|||
mantis_frontend_init (0): found STB0899 DVB-S/DVB-S2 frontend @0x68 |
|||
stb6100_attach: Attaching STB6100 |
|||
DVB: registering adapter 7 frontend 0 (STB0899 Multistandard)... |
|||
mantis_ca_init (0): Registering EN50221 device |
|||
mantis_ca_init (0): Registered EN50221 device |
|||
mantis_hif_init (0): Adapter(0) Initializing Mantis Host Interface |
|||
===Common Interface support=== |
===Common Interface support=== |
||
Preliminary support exists, but a number of problems have been reported. http://linuxtv.org/pipermail/linux-dvb/2008-October/029659.html. |
|||
Still none. |
|||
===Tuner / DiSEqC / Player support=== |
===Tuner / DiSEqC / Player support=== |
||
''provide details of how to use with VDR, MythTV and Kaffeine here -- this means you'' |
''provide details of how to use with VDR, MythTV and Kaffeine here -- this means you'' |
||
'''Rotor support''' |
|||
To get the rotor moving more reliable and when the 4-pin molex power connector is connected, you can make the following code change in mantis_vp1041.c; (Tested using a SG-2100A Rotor) |
|||
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. |
|||
if (!lnbp21_attach(mantis->fe, adapter, 0, 0)) |
|||
Obtain szap.c from http://abraham.manu.googlepages.com/szap.c and compile it in util/szap according to |
|||
to |
|||
if (!lnbp21_attach(mantis->fe, adapter, LNBP21_PCL, LNBP21_ISEL)) |
|||
I also needed [http://svn.mythtv.org/trac/ticket/8465 additional delays in Myth] to get the rotor moving correctly. |
|||
'''Kaffeine''' |
|||
The SVN version of [[Kaffeine]] supports DVB-S2 scanning and tuning (using [[S2API]]) |
|||
and HD TV playback using the latest xine-lib. |
|||
'''Scan and szap''' |
|||
Scan(-s2) is used to obtain a list of available channels (the channels.conf file). |
|||
Szap(-s2) is used to tune the receiver to one of those channels. |
|||
For the s2-liplianin S2API driver obtain scan-s2 and szap-s2. |
|||
hg clone http://mercurial.intuxication.org/hg/scan-s2 |
|||
hg clone http://mercurial.intuxication.org/hg/szap-s2 |
|||
See above for more details. |
|||
For multiproto 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. |
|||
UPDATE 18. June 2008: to get scan to work use this description: http://linuxtv.org/wiki/index.php/TerraTec_Cinergy_S2_PCI_HD_CI#Install_dvb-apps_.28scan.2Fszap2_based_on_DVB_API_3.3.29_.28Testing_based_on_revision_1200.29 |
|||
For multiproto obtain '''szap.c''' from http://abraham.manu.googlepages.com/szap.c. Update it with the patch from http://www.linuxtv.org/pipermail/linux-dvb/2008-April/025137.html and compile it in util/szap according to |
|||
http://www.linuxtv.org/pipermail/linux-dvb/2007-October/021474.html |
http://www.linuxtv.org/pipermail/linux-dvb/2007-October/021474.html |
||
UPDATE 18. June 2008: szap.c doesn't need to be patched anymore like stated above, it compiles fine downloaded from http://abraham.manu.googlepages.com/szap.c. |
|||
Use scan to create a channels.conf. |
|||
Then to tune to a channel do: |
|||
UPDATE 1st Aug 2008: see the suggestion here http://www.linuxtv.org/pipermail/linux-dvb/2008-August/027541.html |
|||
to use the scan/szap patch here |
|||
http://www.linuxtv.org/pipermail/linux-dvb/attachments/20080605/05429f5c/attachment-0003.obj. |
|||
'''Using scan, szap and mplayer''' |
|||
Use '''scan''' to create a '''channels.conf''' file. |
|||
Then use '''szap''' to tune to a channel by running the following command in a terminal: |
|||
szap -r -p -i -a 0 -l UNIVERSAL -t 0 -c channels.conf "channelname" |
szap -r -p -i -a 0 -l UNIVERSAL -t 0 -c channels.conf "channelname" |
||
Line 146: | Line 277: | ||
szap -r -p -i -a 0 -l UNIVERSAL -t 2 -c channels.conf |
szap -r -p -i -a 0 -l UNIVERSAL -t 2 -c channels.conf |
||
then type the following (for example) to tune to an HD channel: |
|||
then |
|||
ASTRA HD+ |
ASTRA HD+ |
||
and then use '''mplayer''' to view the video stream: |
|||
and then |
|||
mplayer - < /dev/dvb/adapter0/dvr0 |
mplayer - < /dev/dvb/adapter0/dvr0 |
||
Line 160: | Line 291: | ||
Without the -p option DVB-S2 streams are not playable. |
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 |
For processors which are not fast enough to decode H.264 in real time you might try something like this (dual core: threads=2, quad core: threads=4) |
||
mplayer -lavdopts fast:threads=2:skipframe=nonref -framedrop - < /dev/dvb/adapter0/dvr0 |
mplayer -lavdopts fast:threads=2:skipframe=nonref -framedrop - < /dev/dvb/adapter0/dvr0 |
||
Line 166: | Line 297: | ||
''provide details of how to use with DiSEqC -- this means you'' |
''provide details of how to use with DiSEqC -- this means you'' |
||
=== |
==== Mythtv ==== |
||
A patch for mythtv can be found at this location: [http://svn.mythtv.org/trac/ticket/5882] |
|||
''discuss support for the remote control here'' |
|||
===IR Remote Control Support=== |
|||
IR-Remote support is included in the mantis driver of s2-liplianin. |
|||
In my case it works with inputlirc and you can find the device in /dev/input/event*. |
|||
The support is only tested with TerraTec Cinergy S2 HD PCI |
|||
For more information about inputlirc and the patch: |
|||
http://wiki.ubuntuusers.de/Lirc |
|||
http://mercurial.intuxication.org/hg/s2-liplianin/rev/601d245d689f |
|||
==External Links== |
==External Links== |
||
Line 173: | Line 315: | ||
* [http://www.verbraak.org/wiki/index.php/Linux_Mantis_driver Linux Mantis Driver information] |
* [http://www.verbraak.org/wiki/index.php/Linux_Mantis_driver Linux Mantis Driver information] |
||
* [http://www.munz.li/?p=47 Short Howto on SkyStar HD2] deprecated! |
|||
[[Category:DVB-S PCI Cards]] |
|||
[[Category:DVB-S2 PCI Cards]] |
Latest revision as of 11:01, 30 December 2010
A DVB-S and DVB-S2 PCI card from Azurewave, also known as TwinHan. The Technisat SkyStar HD2 and TerraTec Cinergy S2 PCI HD CI are rebadges of this product, with different PCI subsystem IDs.
Overview/Features
A PCI card which supports DVB-S and DVB-S2 standard definition and high definition digital satellite TV. A common interface unit with a dummy PCI connector and standard faceplate is included (Tip: if the dummy PCI connector were trimmed by a few millimetres it would presumably fit in a PCI express slot too). The hardware supports rotors via DiSEqC 1.2, and the card has a 4-pin molex power connector, ostensibly to draw additional power from the PSU rather than load the PCI bus. A remote control and an infrared receiver cable are included.
The Mantis driver is included in kernel version => 2.6.33-rc6.
Components Used
STMicroelectronics STB0899 multistandard demodulator (DVB-S and DVB-S2).
STMicroelectronics STB6100 8PSK/QPSK direct conversion (zero IF) tuner for DVB-S2.
Mantis PCI bridge (VP 1041 + 4046). 144-pin package.
STMicroelectronics LNBP21 LNB supply and control IC.
Identification
Azurewave AD SP400 CI: 1822:4e35 / Subsystem: 1822:0031
Skystar HD2 (a): 1822:4e35 / Subsystem: 1ae4:0001
Skystar HD2 (b): 1822:4e35 / Subsystem: 1ae4:0003
TerraTec Cinergy S2 PCI HD CI: 1822:4e35 / Subsystem: 153b:1179
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). Note also that a different subsystem ID for a Skystar HD2 (1ae4:0003) has been reported for some cards at http://www.linuxtv.org/pipermail/linux-dvb/2008-July/027261.html so perhaps a change needs to be made to allow for this possibility too.
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
No firmware required.
Drivers
Driver is available from http://linuxtv.org/hg/v4l-dvb also http://jusst.de/hg/v4l-dvb
Clocking
Incorrect clocking can cause damage to the demodulator on the card. Damaged cards has been actually identified.
Mantis driver
hg clone http://linuxtv.org/hg/v4l-dvb
cd v4l-dvb/v4l make sudo make install sudo reboot
if compiling fails because of FiredTV just run:
sudo make menuconfig
before the "make" command and disable -> Multimedia Support -> DVB/ATSC Adapter -> Firedtv/Floppydtv
Alternatively, try this driver:
hg clone http://jusst.de/hg/mantis-v4l ln -s mantis-v4l s2 [the scan-s2 and szap-s2 Makefiles expect this] cd mantis-v4l make sudo make install sudo reboot
Scan for channels with scan-s2:
hg clone http://mercurial.intuxication.org/hg/scan-s2 cd scan-s2 [check the INCLUDE line in the Makefile is OK] make ./scan-s2 [options] -o zap dvb-s/[satellitefile] > ~/channels.conf
and tune with szap-s2:
hg clone http://mercurial.intuxication.org/hg/szap-s2 cd szap-s2 [check the INCLUDE line in the Makefile is OK] make ./szap-s2 [options] -c ~/channels.conf [channel]
Or install one of the main multimedia applications like Kaffeine or MythTV.
Twinhan Driver
Twinhan provides a tarball containing a rather old v4l-dvb linux driver and a version of dvb-apps on their website:
http://www.twinhan.com/download_driver&software.asp
http://www.twinhan.com/files/AW/Linux/AZLinux_v1.4.2_CI_FC6.tar.gz
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.
It was released for kernel 2.6.18, and the Fedora Core 6 distribution, so considerable work would be needed to port it to the latest kernel. Some preliminary work on this has been reported, and locking has been reported to be better than the multiproto driver, see http://linuxtv.org/pipermail/linux-dvb/2008-October/029642.html.
Whilst it is encouraging that Twinhan bothered to put a Linux driver on their website, it is almost useless to end users. It does not compile with current kernels -- it was not released in the kernel and did not benefit from the future-proofing that that provides. It also offers no open-source CI support. If Twinhan would like to cooperate with the whole community to develop first-class future-proof open-source support for this card in the form of a released in-kernel Linux driver it would greatly benefit them and their customers.
Mantis/Multiproto Driver
A driver based on the obsolete multiproto API is available in the mantis tree at http://jusst.de/hg/mantis.
Obtain mantis/multiproto:
hg clone http://jusst.de/hg/mantis
Compile and install.
It has been reported that (reference?) 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 (Can someone please recheck this and report, stating driver version etc?).
As described in http://www.linuxtv.org/pipermail/linux-dvb/2008-August/027897.html and http://www.munz.li/?p=47 if you have an 0003 card then change one line in mantis_vp1041.h to
#define TECHNISAT_SKYSTAR_HD2 0×0003
This has been fixed in the liplianin-s2 driver (see this patch http://linuxtv.org/pipermail/linux-dvb/2008-October/029912.html).
Technisat Skystar HD2
hg clone http://mercurial.intuxication.org/hg/s2-liplianin make make install
If you have error with FiredTV make this:
make menuconfig
Disable FiredTV in -> Multimedia Support -> DVB/ATSC Adapter -> Firedtv/Floppydtv
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. It is unclear whether DiSEqC switches and rotors are being driven correctly and/or with sufficient current http://www.linuxtv.org/pipermail/linux-dvb/2008-February/024060.html.
UPDATE 25 Mar 2008: mantis tree needs new szap, because of an API change. use offical dvb-apps hg tree (hg clone http://linuxtv.org/hg/dvb-apps). as of March 25 i need a patch to get the card working correctly (http://de.pastebin.ca/957250)
UPDATE 18 May 2008: szap from mantis tree works with the following patch: http://www.linuxtv.org/pipermail/linux-dvb/2008-April/025137.html
UPDATE 27 Sep 2008: A possible solution to locking and scanning problems with the multiproto driver has been posted here: http://linuxtv.org/pipermail/linux-dvb/2008-September/029361.html.
Sample kernel output
This is for a Skystar HD2 (1ae4:0003)
Mantis 0000:02:0c.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 irq: 20, latency: 64 memory: 0xf1bff000, mmio: 0xf8910000 found a VP-1041 PCI DSS/DVB-S/DVB-S2 device on (02:0c.0), Mantis Rev 1 [1ae4:0003], irq: 20, latency: 64 memory: 0xf1bff000, mmio: 0xf8910000 MAC Address=[00:08:c9:e0:3c:de] mantis_alloc_buffers (0): DMA=0x35d70000 cpu=0xf5d70000 size=65536 mantis_alloc_buffers (0): RISC=0x35cef000 cpu=0xf5cef000 size=1000 DVB: registering new adapter (Mantis dvb adapter) stb0899_attach: Attaching STB0899 mantis_frontend_init (0): found STB0899 DVB-S/DVB-S2 frontend @0x68 stb6100_attach: Attaching STB6100 DVB: registering adapter 7 frontend 0 (STB0899 Multistandard)... mantis_ca_init (0): Registering EN50221 device mantis_ca_init (0): Registered EN50221 device mantis_hif_init (0): Adapter(0) Initializing Mantis Host Interface
Common Interface support
Preliminary support exists, but a number of problems have been reported. http://linuxtv.org/pipermail/linux-dvb/2008-October/029659.html.
Tuner / DiSEqC / Player support
provide details of how to use with VDR, MythTV and Kaffeine here -- this means you
Rotor support
To get the rotor moving more reliable and when the 4-pin molex power connector is connected, you can make the following code change in mantis_vp1041.c; (Tested using a SG-2100A Rotor)
if (!lnbp21_attach(mantis->fe, adapter, 0, 0))
to
if (!lnbp21_attach(mantis->fe, adapter, LNBP21_PCL, LNBP21_ISEL))
I also needed additional delays in Myth to get the rotor moving correctly.
Kaffeine
The SVN version of Kaffeine supports DVB-S2 scanning and tuning (using S2API) and HD TV playback using the latest xine-lib.
Scan and szap
Scan(-s2) is used to obtain a list of available channels (the channels.conf file).
Szap(-s2) is used to tune the receiver to one of those channels.
For the s2-liplianin S2API driver obtain scan-s2 and szap-s2.
hg clone http://mercurial.intuxication.org/hg/scan-s2 hg clone http://mercurial.intuxication.org/hg/szap-s2
See above for more details.
For multiproto 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.
UPDATE 18. June 2008: to get scan to work use this description: http://linuxtv.org/wiki/index.php/TerraTec_Cinergy_S2_PCI_HD_CI#Install_dvb-apps_.28scan.2Fszap2_based_on_DVB_API_3.3.29_.28Testing_based_on_revision_1200.29
For multiproto obtain szap.c from http://abraham.manu.googlepages.com/szap.c. Update it with the patch from http://www.linuxtv.org/pipermail/linux-dvb/2008-April/025137.html and compile it in util/szap according to http://www.linuxtv.org/pipermail/linux-dvb/2007-October/021474.html
UPDATE 18. June 2008: szap.c doesn't need to be patched anymore like stated above, it compiles fine downloaded from http://abraham.manu.googlepages.com/szap.c.
UPDATE 1st Aug 2008: see the suggestion here http://www.linuxtv.org/pipermail/linux-dvb/2008-August/027541.html to use the scan/szap patch here http://www.linuxtv.org/pipermail/linux-dvb/attachments/20080605/05429f5c/attachment-0003.obj.
Using scan, szap and mplayer
Use scan to create a channels.conf file. Then use szap to tune to a channel by running the following command in a terminal:
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 type the following (for example) to tune to an HD channel:
ASTRA HD+
and then use mplayer to view the video stream:
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: threads=2, quad core: threads=4)
mplayer -lavdopts fast:threads=2:skipframe=nonref -framedrop - < /dev/dvb/adapter0/dvr0
provide details of how to use with DiSEqC -- this means you
Mythtv
A patch for mythtv can be found at this location: [1]
IR Remote Control Support
IR-Remote support is included in the mantis driver of s2-liplianin.
In my case it works with inputlirc and you can find the device in /dev/input/event*. The support is only tested with TerraTec Cinergy S2 HD PCI
For more information about inputlirc and the patch:
http://wiki.ubuntuusers.de/Lirc http://mercurial.intuxication.org/hg/s2-liplianin/rev/601d245d689f
External Links
- Short Howto on SkyStar HD2 deprecated!