I have a WinTV Nexus-S rev 2.3 card with the 3.5" CI. I am currently running kernel 2.6.12.1 with the latest dvb drivers from CVS. I've had this card working on a free to air channel fine. In one terminal I have szap running with ./szap -c channels.conf "TestChannel" and that has a lock. In another terminal I run the ca_zap command and after a lot of output it says... write_to_slot: Cannot open CA slot. I've treble checked the cable between the nexus card and the CI and have an Irdeto CAM with a smart card in it. I load the drivers using the insmod script (modified to use modprobe instead though) and get the following output on the console... FATAL: Module crc32 not found. FATAL: Module firmware_class not found. FATAL: Module evdev not found. FATAL: Module bcm3510 not found. FATAL: Module dvb_usb not found. FATAL: Module dvb_usb_vp7045 not found. FATAL: Module dvb_usb_dtt200u not found. FATAL: Module dvb_usb_dibusb_common not found. FATAL: Module dvb_usb_dibusb_mb not found. FATAL: Module dvb_usb_dibusb_mc not found. FATAL: Module dvb_usb_a800 not found. FATAL: Module dvb_usb_nova_t_usb2 not found. FATAL: Module dvb_usb_umt_010 not found. FATAL: Module dvb_usb_digitv not found. FATAL: Module dvb_usb_cxusb not found. and the following output in /var/log/messages Jun 27 12:08:51 bloodhound kernel: Linux video capture interface: v1.00 Jun 27 12:08:51 bloodhound kernel: saa7146: register extension 'dvb'. Jun 27 12:08:51 bloodhound kernel: ACPI: PCI Interrupt 0000:09:02.0[A] -> Link [LNKA] -> GSI 11 (level, low) -> IRQ 11 Jun 27 12:08:51 bloodhound kernel: saa7146: found saa7146 @ mem e09c6000 (revision 1, irq 11) (0x13c2,0x000e). Jun 27 12:08:51 bloodhound udev[5264]: removing device node '/dev/0000:09:02.0' Jun 27 12:08:51 bloodhound kernel: DVB: registering new adapter (Technotrend/Hauppauge WinTV Nexus-S rev2.3). Jun 27 12:08:52 bloodhound kernel: adapter has MAC addr = 00:d0:5c:24:b9:90 Jun 27 12:08:52 bloodhound kernel: dvb-ttpci: gpioirq unknown type=0 len=0 Jun 27 12:08:52 bloodhound kernel: dvb-ttpci: info @ card 0: firm f0240009, rtsl b0250018, vid 71010068, app 8000261d Jun 27 12:08:52 bloodhound kernel: dvb-ttpci: firmware @ card 0 supports CI link layer interface Jun 27 12:08:52 bloodhound kernel: dvb-ttpci: Crystal audio DAC @ card 0 detected Jun 27 12:08:52 bloodhound kernel: saa7146_vv: saa7146 (0): registered device video0 [v4l2] Jun 27 12:08:52 bloodhound kernel: DVB: registering frontend 0 (ST STV0299 DVB-S)... Jun 27 12:08:52 bloodhound hal.hotplug[5311]: DEVPATH is not set Jun 27 12:08:52 bloodhound kernel: dvb-ttpci: found av7110-0. Jun 27 12:08:52 bloodhound kernel: saa7146: register extension 'budget dvb'. Jun 27 12:08:52 bloodhound kernel: saa7146: register extension 'budget_ci dvb'. Jun 27 12:08:52 bloodhound kernel: saa7146: register extension 'budget dvb /w video in'. Jun 27 12:08:52 bloodhound kernel: usbcore: registered new driver Technotrend/Hauppauge USB-Nova Jun 27 12:08:52 bloodhound kernel: usbcore: registered new driver ttusb-dec Jun 27 12:08:52 bloodhound kernel: b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully Jun 27 12:08:52 bloodhound kernel: usbcore: registered new driver Technisat/B2C2 FlexCop II/IIb/III USB Jun 27 12:08:53 bloodhound kernel: usbcore: registered new driver cinergyT2 Jun 27 12:08:57 bloodhound udev[5491]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 65 applied, 'dvb0.demux0' becomes 'dvb/adapter0/demux%n' Jun 27 12:08:57 bloodhound udev[5491]: creating device node '/dev/dvb/adapter0/demux0' Jun 27 12:08:57 bloodhound udev[5504]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 64 applied, 'dvb0.dvr0' becomes 'dvb/adapter0/dvr%n' Jun 27 12:08:57 bloodhound udev[5526]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 71 applied, 'dvb0.video0' becomes 'dvb/adapter0/video%n' Jun 27 12:08:57 bloodhound udev[5527]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 67 applied, 'dvb0.audio0' becomes 'dvb/adapter0/audio%n' Jun 27 12:08:57 bloodhound udev[5527]: creating device node '/dev/dvb/adapter0/audio0' Jun 27 12:08:57 bloodhound udev[5528]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 68 applied, 'dvb0.ca0' becomes 'dvb/adapter0/ca%n' Jun 27 12:08:57 bloodhound udev[5504]: creating device node '/dev/dvb/adapter0/dvr0' Jun 27 12:08:57 bloodhound udev[5526]: creating device node '/dev/dvb/adapter0/video0' Jun 27 12:08:57 bloodhound udev[5538]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 69 applied, 'dvb0.osd0' becomes 'dvb/adapter0/osd%n' Jun 27 12:08:57 bloodhound udev[5538]: creating device node '/dev/dvb/adapter0/osd0' Jun 27 12:08:57 bloodhound udev[5546]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 70 applied, 'dvb0.net0' becomes 'dvb/adapter0/net%n' Jun 27 12:08:57 bloodhound udev[5547]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 36 applied, added symlink 'video' Jun 27 12:08:57 bloodhound udev[5528]: creating device node '/dev/dvb/adapter0/ca0' Jun 27 12:08:57 bloodhound udev[5557]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 66 applied, 'dvb0.frontend0' becomes 'dvb/adapter0/frontend%n' Jun 27 12:08:57 bloodhound udev[5558]: configured rule in '/etc/udev/rules.d/50-udev.rules' at line 25 applied, 'event2' becomes 'input/%k' Jun 27 12:08:57 bloodhound udev[5546]: creating device node '/dev/dvb/adapter0/net0' Jun 27 12:08:57 bloodhound udev[5547]: creating device node '/dev/video0' Jun 27 12:08:57 bloodhound udev[5557]: creating device node '/dev/dvb/adapter0/frontend0' Jun 27 12:08:57 bloodhound udev[5558]: creating device node '/dev/input/event2' When I run ca_zap I get the following... [root@bloodhound utils]# ./ca_zap -t sat -c channels.conf -n "TestChannel" Using Adpater=[/dev/dvb/adapter0] Frontend=[/dev/dvb/adapter0/frontend0] Demux=[/dev/dvb/adapter0/demux0] Slot=[/dev/dvb/adapter0/ca0] Parsing channels.conf Satellite frontend parse_sat_channel_list: Channel=[TestChannel], Frequency=[11013], Satellite=[0], Symbol Rate=[27500], Video=[288], Audio=[544], Service=[20] Service ID=[20] parse_pat: ----------------->parse PAT section parse_pat: PAT => Section Length=[93], TS ID=[4688] parse_si: PMT PID = [1312] parse_si: PAT: Close Demux /dev/dvb/adapter0/demux0 parse_pmt: PMT Words=[ 02 b0 2e 00 14 c5 00 00 e1 20 f0 17 09 04 06 26 e6 50 09 0f 05 00 e7 00 10 01 00 13 01 20 14 03 02 1c 00 04 e2 20 f0 00 02 e1 20 f0 00 4e 08 15 1f ] parse_pmt: ----------->parse PMT section, PMT PID=[1312], bytes=[49] parse_pmt_header: Table ID=[2], Section Length=[46], Program Number=[20], Section Number=[0], PCR PID=[288], Program info length=[23] parse_pmt: Program info length=[23] INFO:: Parsing descriptor: parse_ca_descriptor, Tag=[09], Length=[4] parse_ca_descriptor: Tag=[09], Length=[04], CA System=[626], CA PID=[650] parse_ca_descriptor: CA Private Data=[ ] parse_ca_descriptor: Pos=[18] parse_pmt: Count=[18], Position=[18], Program descriptor count=[23] INFO:: Parsing descriptor: parse_ca_descriptor, Tag=[09], Length=[15] parse_ca_descriptor: Tag=[09], Length=[0f], CA System=[2700], CA PID=[1700] parse_ca_descriptor: CA Private Data=[ 10 01 00 13 01 20 14 03 02 1c 00 ] parse_ca_descriptor: Pos=[35] parse_pmt: Count=[54], Position=[35], Program descriptor count=[23] parse_streams: Elements=[ 04 e2 20 f0 00] parse_streams: Stream=[0], Stream Type=[4], Elementary PID=[544], ES info length=[0] parse_streams: Elements=[ 02 e1 20 f0 00] parse_streams: Stream=[1], Stream Type=[2], Elementary PID=[288], ES info length=[0] copy_en50221_pmt_object: Copying EN50221 Header copy_en50221_pmt_object: Program Number=[20], Program info length=[23] copy_en50221_pmt_object: Program level descriptor count=[2] copy_en50221_pmt_object: CA descriptor=[09] found, @ [0xbf81f608], descriptor length=[0f] copy_en50221_descriptor_object: Tag=[09], Length=[0f], CA system ID=[2700], CA PID=[1700] copy_en50221_descriptor_object: Private bytes=[11] [ 10 01 00 13 01 20 14 03 02 1c 00 ] copy_en50221_pmt_object: [0] CA descriptor copied copy_en50221_pmt_object: CA descriptor=[0f] found, @ [0xbf81f608], descriptor length=[00] copy_en50221_stream_object: Stream Type=[4], Elementary PID=[544], ES length=[0], Number of descriptors=[0] copy_en50221_stream_object: Stream Type=[2], Elementary PID=[288], ES length=[0], Number of descriptors=[0] do_en50221_pmt_object: CA PMT List Management=[03] set_pmt_command: Setting PMT Command set_pmt_command: CA descriptor found @ PROGRAM Level, Setting CA PMT command=[01] do_en50221_pmt_object: Object length=[272], Total length=[34] asn_1_encode: Length=[34] asn_1_encode: length indicator=[22] do_en50221_pmt_object: ASN.1 words=[1], Length Array=[ 34 ] en50221_encode_header: CA PMT List Mgmt=[3], Program Number=[20], Program info length=[23] write_en50221_pmt_object: EN50221 header encoded write_en50221_pmt_object: Program level descriptor @ [0x8051088], count=[2], tag=[09], length=[0f] encode_ca_pmt_command: Encoding SCRAMBLING @ PROGRAM Level, Command=[01] en50221_encode_descriptor: Tag=[09], length=[0f], CA system id=[2700], CA PID=[1700] en50221_encode_descriptor: Private Bytes=[11] [ 10 01 00 13 01 20 14 03 02 1c 00 ] write_en50221_pmt_object: Program level descriptor @ [0x8051088], count=[2], tag=[00], length=[00] write_en50221_pmt_object: Descriptor length=[0] en50221_encode_streams: Stream type=[04], ES PID=[220], ES Info length=[00] en50221_encode_streams: Stream type=[02], ES PID=[120], ES Info length=[00] debug_message: CA MESSAGE=[ 9f 80 32 22 03 00 14 09 10 17 01 09 0f 27 00 f7 00 10 01 00 13 01 20 14 03 02 1c 00 04 e2 20 f0 00 02 e1 20 f0 00 ] write_to_slot: Cannot open CA slot. Thanks in advance Mike p.s. the following file in CVS needs updating... dvb-kernel/linux/Documentation/dvb/ci.txt it says you need to modify the channels.conf to add the PMT PID but you don't seem to need to anymore.