[mythtv-users] Problems with PVR-250 MCE OEM card - PAL version [long]

John Oliver john.oliver at f3software.com
Sun May 2 05:05:15 EDT 2004


Hello all, I wonder if someone could help me out here before I pull out *all* my hair...

I'm down in New Zealand, and we run PAL format tv broadcasts here. The MCE OEM cards are not available locally, just the retail 250s and 350s which are sold at total rip-off prices (around US$400!!!).  However I was able to mail order some PAL format MCE cards from the US.

These cards have on the label "WIN-TV PAL B/G-I-D/K-SECAM" and are model number 32559.

I can see that the encoder chip is a CONEXANT CX23416-12. By carefully peeling back the sticker on the tuner enclosure I can see another label identifying the tuner as a Microtune 4049 FM5 <uh oh...>

OK, I remove the trusty old BT878 card from my testbed (an Intel 845G chipset mobo) and shove the PVR in. On booting Linux (this is a KnoppMyth R4V2 uato-install) the ivtv.o load hangs. This begins my adventures into unbefore seen by me ivtv land!

First up, I do some research and discover that the MCE cards are a type-2 PVR-250, i.e. 23416 encoder, not 23415 and that ivtv 0.1.9 does not identify them correctly. I removed the card so Linux was bootable again and got this patch :
                 http://www.pcalchemy.com/downloads.php?pageaction=jumplink&link_id=3
from pcalchemy.com (great guys there BTW). This borrows some code from the latest unstable 0.1.10pre2 ivtv and patches it into the 0.1.9 ivtv code i have. It adds the cardtype option to force ivtv into believing that this is a type-2 card. The patch did not apply cleanly, but I understand the KnoppMyth ivtv 0.1.9 is non-standard so I downloaded the 0.1.9 tarball from sourceforge, and applied the patch to that - no problemo. I downloaded and extracted the PCR250 firmware per the instructions and recompiled and installed the patched ivtv. <Question: is that firmware suitable for the type-2 card? Have not seen anything to suggest otherwise>.

Next I rebooted linux with the card back in and hey-presto - it loads ivtv! I was now starting to get the (false) impression that I am close to hours of viewing pleasure with my enhanced MythTV box. Boy was I wrong!

Firing up mplayer /dev/video gets me static. no problem, just need to tune a channel. Channel 2 (55.25Mhz) has a good signal, so I try "test_ioctl --setfreq=tuner=5,freq=884"
But that returns an error:
    ioctl: VIDIOC_S_FREQUENCY
    ioctl: VIDIOC_S_FREQUENCY failed
However "test_ioctl --set-freq=tuner=0,freq=884"
returns
    ioctl: VIDIOC_S_FREQUENCY
    Frequency set to 884

Cool - my false sense of achievement is returning. I run mplayer again against /dev/video, but again I just get gibberish. Not static this time, but a mess none the less and nothing that looks like a mistuned picture, or wrong format such as NTSC.

Which sends me off down the path of tuner types.

I then found various ivtv patches purporting to support the PAL Microtune 4049 tuner and applied and tested them. However none has worked. I always get the above result from test_ioctl.

Question: does the fact that using tuner=0 does not generate an error really mean that tuner type 0 - TUNER_TEMIC_PAL really is compatible with the Microtune 4049?

Anyway, my ivtv is now subjected to so many patches I think I need to go back to the 0.1.9 tarball and start again :-(

Has anybody out there had any success with this card variant? I'm desperate for the "golden patch" that will make it work!

For reference, here's the interesting bits from dmesg:
.
.
bttv: driver version 0.7.104 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
.
<question: should I update bttv?>
.
Linux video capture interface: v1.00
i2c-algo-bit.o: i2c bit algorithm module
i2c-core.o: driver saa7115 registered.
i2c-core.o: driver i2c msp3400 driver registered.
ivtv: version 0.1.9 (release) loading
ivtv: User selected cardtype 2 for card #0
ivtv: Autodetecting cardtype for card #1
ivtv: Autodetecting cardtype for card #2
ivtv: Autodetecting cardtype for card #3
ivtv: Autodetecting cardtype for card #4
ivtv: Autodetecting cardtype for card #5
ivtv: Autodetecting cardtype for card #6
ivtv: Autodetecting cardtype for card #7
ivtv: Autodetecting cardtype for card #8
ivtv: SGarray_size = 340, DSGarray_size = 16
ivtv: User specified iTVC16 chip
tuner: probing ivtv i2c driver #0 i2c adapter [id=0x10005]
tuner: chip found @ 0xc2
tuner(bttv): type forced to 22 (Temic PAL/SECAM multi (4046 FM5)) [insmod]
i2c-core.o: client [Temic PAL/SECAM multi (4046 FM5)] registered to adapter [ivt
v i2c driver #0](pos. 0).
saa7114.c: starting probe for adapter ivtv i2c driver #0 (0x10005)
saa7114.c: detecting saa7114 client on address 0x42
saa7115.c: writing init values
status: (1E) 0x48, (1F) 0xc0
i2c-core.o: client [saa7115[0]] registered to adapter [ivtv i2c driver #0](pos. 
1).
msp34xx: init: chip=MSP3418W-A2, has NICAM support
msp3410: daemon started
i2c-core.o: client [MSP3418W-A2] registered to adapter [ivtv i2c driver #0](pos.
 2).
i2c-core.o: adapter ivtv i2c driver #0 registered as adapter 0.
ivtv: Encoder revision: 0x02040011
tuner: type already set (22)
ivtv: i2c client addr: 0x43 not found!
ivtv: Registered v4l2 device, minor 0
ivtv: Registered v4l2 device, minor 32
ivtv: Registered v4l2 device, minor 224
ivtv: loaded
lirc_dev: IR Remote Control driver registered, at major 61 
bttv: driver version 0.7.104 loaded
bttv: using 4 buffers with 2080k (8320k total) for capture
bttv: Host bridge is PCI device 1039:0651 (Silicon Integrated Systems [SiS])
i2c-core.o: driver i2c ir driver registered.
ivtv: i2c client addr: 0x43 not found!
saa7115[0]: decoder set norm NTSC
saa7115[0] set audio: 0x02
saa7115[0]: decoder set size
Setting full NTSC width
Vsrc: 480, Vscy: 0x00355
ivtv: i2c client addr: 0x43 not found!
saa7115[0]: decoder set norm PAL
saa7115[0] set audio: 0x02
tuner: tv freq set to 55.25
tuner: tv 0x05 0xe3 0x8e 0xac
saa7115[0]: decoder set picture bright=128 contrast=63 saturation=64 hue=0
.
.
My /etc/,ythtv/modules/ivtv has this:
alias char-major-81 videodev
alias char-major-61 lirc_i2c
options ivtv cardtype=2 ivtv_debug=1 ivtv_pal=1 tda9887=1 tuner=22
options tuner type=22 pal=B  debug=1
options tda9887 pal=B
options msp3400 once=1 simple=1
add below ivtv msp3400 saa7115 tuner
add above ivtv lirc_dev lirc_i2c

I've tried a fre different tuner types such as 0,5 and 33, and don't really know what I'm doing with the pal=B part. I just saw a post from someone in SECAM -Land who did something similar. 

lspci -v gives:
.
.
00:09.0 Multimedia video controller: Internext Compression Inc: Unknown device 0
016 (rev 01)
        Subsystem: Hauppauge computer works Inc.: Unknown device 4801
        Flags: bus master, medium devsel, latency 32, IRQ 17
        Memory at d8000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [44] Power Management version 2

It seems like some PVR-250 MCE OEM users get the card recognised at this point. Do they have a different chipset?

.
.

and lsmod gives:
Module                  Size  Used by    Not tainted
tveeprom                5760   0  (unused)
snd-pcm-oss            35588   0  (autoclean)
lirc_i2c                3424   0  (autoclean) (unused)
lirc_dev                8496   0  (autoclean) [lirc_i2c]
ivtv                   82048   0  (autoclean)
msp3400                16608   1  (autoclean)
saa7115                 5920   0  (autoclean) (unused)
i2c-algo-bit            6856   1  (autoclean) [ivtv]
videodev                5664   3  (autoclean) [ivtv]
autofs4                 8724   0  (unused)
af_packet              13448   0 
snd-mixer-oss          11160   0  [snd-pcm-oss]
snd-intel8x0           16644   0 
snd-pcm                53856   0  [snd-pcm-oss snd-intel8x0]
snd-timer              13352   0  [snd-pcm]
snd-ac97-codec         31744   0  [snd-intel8x0]
snd-page-alloc          4320   0  [snd-intel8x0 snd-pcm]
snd-mpu401-uart         2944   0  [snd-intel8x0]
snd-rawmidi            12256   0  [snd-mpu401-uart]
snd-seq-device          3732   0  [snd-rawmidi]
snd                    25828   0  [snd-pcm-oss snd-mixer-oss snd-intel8x0 snd-pc
m snd-timer snd-ac97-codec snd-mpu401-uart snd-rawmidi snd-seq-device]
soundcore               3364   3  [snd]
8139too                17160   1 
mii                     2176   0  [8139too]
tuner                   9472   1 
i2c-core               12068   0  [tveeprom lirc_i2c ivtv msp3400 saa7115 i2c-al
go-bit tuner]
serial                 51812   0 
usb-ohci               18152   0  (unused)
usbcore                57376   0  [usb-ohci]
apm                     9768   1 
rtc                     6876   0 
ext3                   62688   2 
jbd                    45524   2  [ext3]

And finally, insmod tveeprom gives this:
i2c-core.o: driver tveeprom registered.
tveeprom.c: starting probe for adapter ivtv i2c driver #0 (0x10005)
tveeprom.c: detecting tveeprom client on address 0xa0
  9 [04] 20 77 00 40 66 12 67 00 
  3 [05] 99 00 
  8 [06] 2f 7f 00 00 52 15 89 
  2 [07] 70 
Not sure what to do with tag [07]
  3 [09] 13 5f 
Not sure what to do with tag [09]
  3 [0a] 74 34 
  4 [0b] 98 18 0c 
Not sure what to do with tag [0b]
  2 [0e] 01 
  2 [10] 01 
Not sure what to do with tag [10]
  2 [11] 00 
Not sure what to do with tag [11]
tvee: Hauppauge: model=32559, rev=B152, serial#=6754918
tvee: tuner=<unknown> (idx=52, type=-1)
tvee: tuner fmt=PAL(D/K) (eeprom=0x74, v4l2=0x00400e17)
tvee: audio_processor=CS5331 (type=9)
tuner: tv freq set to 55.25
tuner: tv 0x05 0xe3 0x8e 0xac
tuner: tv freq set to 55.25
tuner: tv 0x05 0xe3 0x8e 0xac

So I see there that I have not successfully set the format to PAL-B.

I sure hope someone has solved this card before!

Thanks in advance for any advice,
JohnO

john.oliver at f3software.com



-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mythtv.org/pipermail/mythtv-users/attachments/20040502/195022b8/attachment.html


More information about the mythtv-users mailing list