From: Dominik Kuhlen <dkuhlen@gmx.net>
To: linux-dvb@linuxtv.org
Subject: [linux-dvb] pctv452e and TT-S2-3600 step-by-step howto
Date: Sat, 7 Jun 2008 16:27:30 +0200 [thread overview]
Message-ID: <200806071627.30907.dkuhlen@gmx.net> (raw)
[-- Attachment #1.1.1: Type: text/plain, Size: 87 bytes --]
Hi,
I have attached a step-by-step howto for these devices
Happy testing,
Dominik
[-- Attachment #1.1.2: howto_pctv452e.txt --]
[-- Type: text/plain, Size: 4137 bytes --]
# 20080607:
# tested with 2.6.23-gentoo-r3 kernel
# need to have a bash (for here-documents)
# 1. Check for old drivers already loaded:
lsmod | grep dvb
# should output nothing
# if it does: do
# rmmod <modulename>
# =2= dowload, patch, config and build driver
mkdir pctv452e
cd pctv452e
hg clone http://jusst.de/hg/multiproto
wget -O pctv452e.patch.bz2 http://www.linuxtv.org/pipermail/linux-dvb/attachments/20080606/cc54743f/attachment-0001.obj
bunzip2 pctv452e.patch.bz2
patch -p0 < pctv452e.patch
cd multiproto
# create minimal config
# use 'make menuconfig' to add more stuff if you want
cat << EOF > v4l/.config
CONFIG_INPUT=y
CONFIG_USB=y
CONFIG_PARPORT=m
CONFIG_FW_LOADER=m
CONFIG_NET=y
CONFIG_SND_AC97_CODEC=m
CONFIG_I2C=m
CONFIG_STANDALONE=y
CONFIG_SND_MPU401_UART=m
CONFIG_SND=m
CONFIG_MODULES=y
CONFIG_HAS_IOMEM=y
CONFIG_PROC_FS=y
CONFIG_I2C_ALGOBIT=m
CONFIG_INET=y
CONFIG_CRC32=m
CONFIG_FB=y
CONFIG_SYSFS=y
CONFIG_PCI=y
CONFIG_SND_PCM=m
CONFIG_PARPORT_1284=y
CONFIG_EXPERIMENTAL=y
CONFIG_VIRT_TO_BUS=y
CONFIG_DVB_CORE=m
CONFIG_DVB_CAPTURE_DRIVERS=y
CONFIG_DVB_USB=m
CONFIG_DVB_USB_PCTV452E=m
CONFIG_DVB_STB0899=m
CONFIG_DVB_STB6100=m
CONFIG_DVB_LNBP22=m
EOF
make
cd v4l
## verify:
# ls *.ko
## should list:
## dvb-core.ko dvb-usb-pctv452e.ko dvb-usb.ko lnbp22.ko stb0899.ko stb6100.ko
# need to be root at this point
insmod ./dvb-core.ko
insmod ./dvb-usb.ko
insmod ./lnbp22.ko
insmod ./stb0899.ko
insmod ./stb6100.ko
insmod ./dvb-usb-pctv452e.ko
# dmesg should show:
dvb-usb: found a 'PCTV HDTV USB' in warm state.
pctv452e_power_ctrl: 1
dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
DVB: registering new adapter (PCTV HDTV USB)
pctv452e_frontend_attach Enter
stb0899_get_dev_id: Device ID=[3], Release=[0]
stb0899_get_dev_id: Demodulator Core ID=[DMD1], Version=[1]
stb0899_get_dev_id: FEC Core ID=[FEC1], Version=[1]
stb0899_attach: Attaching STB0899
lnbp22_set_voltage: 2 (18V=1 13V=0)
lnbp22_set_voltage: 0x60)
pctv452e_frontend_attach Leave Ok
DVB: registering frontend 0 (STB0899 Multistandard)...
pctv452e_tuner_attach Enter
stb6100_attach: Attaching STB6100
pctv452e_tuner_attach Leave
input: IR-receiver inside an USB DVB receiver as /class/input/input5
dvb-usb: schedule remote query interval to 100 msecs.
pctv452e_power_ctrl: 0
dvb-usb: PCTV HDTV USB successfully initialized and connected.
usbcore: registered new interface driver pctv452e
usbcore: registered new interface driver dvb-usb-tt-connect-s2-3600-01.fw
# you can drop root privileges at this point.
ls -l /dev/dvb/adapter0/
# total 0
# crw-rw---- 1 root video 212, 4 Jun 7 15:37 demux0
# crw-rw---- 1 root video 212, 5 Jun 7 15:37 dvr0
# crw-rw---- 1 root video 212, 3 Jun 7 15:37 frontend0
# crw-rw---- 1 root video 212, 7 Jun 7 15:37 net0
cd ..
cd ..
# you should be in pctv452e dir created above
#
# simpledvbtune:
wget -O simpledvbtune.c.bz2 http://www.linuxtv.org/pipermail/linux-dvb/attachments/20080419/6a41e0b0/attachment-0002.bin
bunzip2 simpledvbtune.c.bz2
gcc -Imultiproto/linux/include simpledvbtune.c -o simpledvbtune
# try it:
./simpledvbtune -f 11954
# hit enter to refresh messages
./simpledvbtune -f 11915 -d 2
############################
# next scan tool:
wget http://jusst.de/manu/scan.tar.bz2
tar xjf scan.tar.bz2
cd scan
rm *.o *.d
# update to most recent API
patch -p0 < ../scan_mp_fix.patch
# build the stuff
make
# start scan:
./scan dvb-s/Astra-19.2E
#
# or do single channel scan with external tuning application (need two terminals for this):
./simpledvbtune -f 11915 -d 2
./scan -c
# output:
#using '/dev/dvb/adapter0/frontend0' and '/dev/dvb/adapter0/demux0'
#0x0000 0x0081: pmt_pid 0x0062 PREMIERE -- PREMIERE HD (running, scrambled)
#0x0000 0x0082: pmt_pid 0x0063 PREMIERE -- DISCOVERY HD (running, scrambled)
#0x0000 0x0084: pmt_pid 0x0065 BetaDigital -- ANIXE HD (running)
#0x0000 0x0083: pmt_pid 0x0064 BetaDigital -- ASTRA HD+ (running)
#dumping lists (4 services)
#Done.
[-- Attachment #1.1.3: scan_mp_fix.patch --]
[-- Type: text/x-diff, Size: 2617 bytes --]
--- Makefile 2007-03-30 11:53:05.000000000 +0200
+++ Makefile.my 2008-06-07 15:51:49.000000000 +0200
@@ -14,7 +14,7 @@
removing = atsc_psip_section.c atsc_psip_section.h
-CPPFLAGS += -I/usr/include -DDATADIR=\"$(prefix)/share\"
+CPPFLAGS += -I../multiproto/linux/include -DDATADIR=\"$(prefix)/share\"
.PHONY: all
@@ -27,8 +27,6 @@
atsc_psip_section.c atsc_psip_section.h:
perl section_generate.pl atsc_psip_section.pl
-include ../../Make.rules
-
install::
@echo installing scan files
@mkdir -p $(DESTDIR)$(sharedir)/dvb/atsc
--- scan.c 2008-06-07 16:04:49.000000000 +0200
+++ scan.c.my 2008-06-07 16:02:43.000000000 +0200
@@ -1673,38 +1673,22 @@
return -1;
}
- struct dvbfe_info fe_info1;
-
- // a temporary hack, need to clean
- memset(&fe_info1, 0, sizeof (struct dvbfe_info));
-
- if(t->modulation_system == 0)
- fe_info1.delivery = DVBFE_DELSYS_DVBS;
- else if(t->modulation_system == 1)
- fe_info1.delivery = DVBFE_DELSYS_DVBS2;
+ enum dvbfe_delsys delsys;
+ if(t->modulation_system == 0) {
+ delsys = DVBFE_DELSYS_DVBS;info("using DVB-S");}
+ else if(t->modulation_system == 1) {
+ delsys = DVBFE_DELSYS_DVBS2;info("using DVB-S2");}
+ else {
+ info("unsupported modulation system: %d\n", t->modulation_system);
+ return -1;
+ }
- int result = ioctl(frontend_fd, DVBFE_GET_INFO, &fe_info1);
+ int result = ioctl(frontend_fd, DVBFE_SET_DELSYS, &delsys);
if (result < 0) {
- perror("ioctl DVBFE_GET_INFO failed");
+ perror("ioctl DVBFE_SET_DELSYS failed");
t->last_tuning_failed = 1;
return -1;
}
-
- switch (fe_info1.delivery) {
- case DVBFE_DELSYS_DVBS:
- info("----------------------------------> Using '%s' DVB-S\n", fe_info.name);
- break;
- case DVBFE_DELSYS_DSS:
- info("----------------------------------> Using '%s' DSS\n", fe_info.name);
- break;
- case DVBFE_DELSYS_DVBS2:
- info("----------------------------------> Using '%s' DVB-S2\n", fe_info.name);
- break;
- default:
- info("Unsupported Delivery system (%d)!\n", fe_info1.delivery);
- t->last_tuning_failed = 1;
- return -1;
- }
if (__tune_to_transponder (frontend_fd, t) == 0)
return 0;
[-- Attachment #1.2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 197 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
next reply other threads:[~2008-06-07 14:28 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-07 14:27 Dominik Kuhlen [this message]
2008-06-07 17:42 ` [linux-dvb] pctv452e and TT-S2-3600 step-by-step howto Goga777
2008-06-08 16:14 ` Michael Schöller
2008-06-09 20:48 ` Dominik Kuhlen
2008-06-12 21:58 ` Michael Schöller
2008-06-16 12:21 ` Michael Schöller
2008-07-03 16:47 ` [linux-dvb] pctv452e + PS3 + PPC Linux(YDL, Fedora) Michael Schöller
2008-06-19 19:59 ` [linux-dvb] pctv452e and TT-S2-3600 step-by-step howto Michael Schöller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200806071627.30907.dkuhlen@gmx.net \
--to=dkuhlen@gmx.net \
--cc=linux-dvb@linuxtv.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox