Installation notes ****************** v1.3 NOTE: On Ubuntu 12.04.1 LTS, if you experience an issue loading the driver related to 'altera_init', then apply 01-altera.patch as a workaround from http://www.kernellabs.com/260e/ v1.2 On the Ubuntu 11.04 platform: Remove any 260/460 cards from the system. - Start by reemoving any hardware from the system. It's not mandatory but the instructions assume no hardware is present. Install some basic dependencies: - sudo apt-get install libproc-processtable-perl - sudo apt-get install tvtime quilt (when prompted choose the defaults NTSC and then Cable, the options don't matter). Remove the cx23885 driver from auto-loading during system startup - sudo vi /etc/modprobe.d/blacklist.conf, add to the end of the file the line "blacklist cx23885" Unpack the archive - I generally develop drivers from the /KL directory, but I recommend you build and install them from the $HOME/KL directory. - mkdir $HOME/KL - cd $HOME/KL - (download driver archive to this folder) - tar zxf 460e-datetime.tgz - The drivers will be unpacked into a 260e subdirectory. - cd 260e/media_build - make clean - make distclean - make cx23885config - make -j3 (A large number of drivers dependencies will be compiled, 3-4 minutes on a low end dual AMD box. This is the complete linuxtv.org tree, patched for the 460 and 260 cards) ... LD [M] /KL/260e/media_build/v4l/zl10353.ko LD [M] /KL/260e/media_build/v4l/zr36016.ko LD [M] /KL/260e/media_build/v4l/zr36050.ko LD [M] /KL/260e/media_build/v4l/zr36060.ko LD [M] /KL/260e/media_build/v4l/zr36067.ko LD [M] /KL/260e/media_build/v4l/zr364xx.ko make[2]: Leaving directory `/usr/src/linux-headers-2.6.38-14-generic-pae' ./scripts/rmmod.pl check found 489 modules make[1]: Leaving directory `/KL/260e/media_build/v4l' Installing the newly build drivers, they will overwrite the default Ubuntu 11.04 drivers. - sudo make install ... video/usbvision/: usbvision.ko video/gspca/stv06xx/: gspca_stv06xx.ko video/em28xx/: em28xx-dvb.ko em28xx-alsa.ko em28xx.ko video/tlg2300/: poseidon.ko video/uvc/: uvcvideo.ko video/pwc/: pwc.ko /sbin/depmod -a 2.6.38-14-generic-pae make -C firmware install make[2]: Entering directory `/home/stoth/KL/260e/media_build/v4l/firmware' Installing firmwares at /lib/firmware: vicam/firmware.fw dabusb/firmware.fw dabusb/bitstream.bin ttusb-budget/dspbootcode.bin cpia2/stv0672_vp4.bin av7110/bootcode.bin dvb-fe-bcm3510-01.fw dvb-fe-or51132-qam.fw dvb-fe-or51132-vsb.fw dvb-fe-or51211.fw dvb-fe-xc5000-1.6.114.fw dvb-ttpci-01.fw-261a dvb-ttpci-01.fw-261b dvb-ttpci-01.fw-261c dvb-ttpci-01.fw-261d dvb-ttpci-01.fw-261f dvb-ttpci-01.fw-2622 dvb-usb-avertv-a800-02.fw dvb-usb-bluebird-01.fw dvb-usb-dib0700-1.20.fw dvb-usb-dibusb-5.0.0.11.fw dvb-usb-dibusb-6.0.0.8.fw dvb-usb-dtt200u-01.fw dvb-usb-terratec-h5-drxk.fw dvb-usb-terratec-h7-az6007.fw dvb-usb-terratec-h7-drxk.fw dvb-usb-umt-010-02.fw dvb-usb-vp702x-01.fw dvb-usb-vp7045-01.fw dvb-usb-wt220u-01.fw dvb-usb-wt220u-02.fw v4l-cx231xx-avcore-01.fw v4l-cx23418-apu.fw v4l-cx23418-cpu.fw v4l-cx23418-dig.fw v4l-cx23885-avcore-01.fw v4l-cx23885-enc.fw v4l-cx25840.fw make[2]: Leaving directory `/home/stoth/KL/260e/media_build/v4l/firmware' make[1]: Leaving directory `/home/stoth/KL/260e/media_build/v4l' - shutdown - Install the 260 or 460 hardware. - Boot the system. Login and load the driver. - cd $HOME/KL/260e/media_build - ../unload.sh (This unloads any previous drivers) - ../load.sh (This loads the 260/460 driver and any dependencies) Check that the driver is loaded and your 460e is detected - dmesg | grep ViewCast [ 184.827361] CORE cx23885[0]: subsystem: 1576:0460, board: ViewCast 460e [card=36,autodetected] [ 184.981760] cx23885[0]: card 'ViewCast 460e' sn# MM11440184 [ 185.815865] CORE cx23885[1]: subsystem: 1576:0460, board: ViewCast 460e [card=36,autodetected] [ 185.970271] cx23885[1]: card 'ViewCast 460e' sn# MM11440184 [ 186.759161] CORE cx23885[2]: subsystem: 1576:0460, board: ViewCast 460e [card=36,autodetected] [ 186.914485] cx23885[2]: card 'ViewCast 460e' sn# MM11440184 [ 187.713369] CORE cx23885[3]: subsystem: 1576:0460, board: ViewCast 460e [card=36,autodetected] [ 187.868239] cx23885[3]: card 'ViewCast 460e' sn# MM11440184 Disable the desktop from using the 260/460e audio devices by default (or you won't be able to unload the driver). - Go to the sound preferences UI, hardwrae tab, disable all four CX23887 audio inputs, for the 460. - Go to the sound preferences UI and disable the one CX23887 audio input, for the 260. Configure the test script to match your audio devices - Use the arecord -l command to list your audio devices. - arecord -l | grep 23885 card 2: CX23885 [Conexant CX23885], dev 0: CX23885 Digital [CX23885 Digital] card 3: CX23885_1 [Conexant CX23885], dev 0: CX23885 Digital [CX23885 Digital] card 4: CX23885_2 [Conexant CX23885], dev 0: CX23885 Digital [CX23885 Digital] card 5: CX23885_3 [Conexant CX23885], dev 0: CX23885 Digital [CX23885 Digital] - vi $HOME/KL/260e/test_gstreamer_video.sh, changing the audio devices to match your system - Look for the four sections where DEV is compared to videoX: if [ "$DEV" == "video0" ]; then ADEV="hw:2,0" fi - Change ADEV to match your arecord output list where "card N" is reported. In the case above the ADEV for /dev/video0 is correctly set to hw:2,0 - Change the other three references (Eg): if [ "$DEV" == "video1" ]; then ADEV="hw:3,0" fi Run the test scripts: - cd $HOME/KL/260e/media_build - ./test_svideo_480i.sh - ./test_svideo_576i.sh - ./test_composite_480i.sh - ./test_composite_576i.sh - ./test_component_480i.sh - ./test_component_576i.sh - By default these scripts will only test the first video input /dev/video0 (input A). You will need to edit the $HOME/KL/260e/test_gstreamer_video.sh script and change the 'DEV=' section to be either video0,1,2 or 3. Eg. DEV=video3 (this will test video input D). TODO items / notes. - none