Kodicom 4400R

From LinuxTVWiki
Revision as of 00:29, 1 October 2005 by Conord (talk)
Jump to: navigation, search


The Kodicom 4400R is a PCI interface card with 4 separate bt878A controllers, handling 16 separate composite video (CVBS) inputs. This makes it ideal for Digital Video Recorder (DVR) projects that require inputs from 16 cameras.

Installing the Card

The driver treats one of the bt878A chips as the "master", and the other three as "slaves". To do this, two separate card types are used. Card 132 in the bttv cardlist is for the "master", and card 133 is for the slave. Unfortunately, at this time there is no automatic detection of this card, so the driver must be installed manually.

When the driver is installed, the "master" bt878A is the second controller detected, so the best way to install the driver is with modprobe (or insmod)


  modprobe bttv card=133,132,133,133

This should give you 4 video devices (/dev/video0 - /dev/video3), and you should be able to use them with any program, e.g. xawtv or whatever.

Video Input Connections to the Card

The Kodicom 4400R (or KMC4400R) card is able to process 16 composite video inputs. Here the 16 video inputs will be labelled Cam0 - Cam15. The 4 BNC connectors on the card are for Cam0, Cam1, Cam2 and Cam3 (Cam0 at the top). All 16 cameras can be connected through a 32-pin right angle pin header connector on the top of the card. The row of pins closest to the card are ground and the outside row are the connections for each camera with Cam0 on the left (looking down on the card from the component side). For Cam0 - Cam3 you can use either the pin header connector at the top of the card or the BNC connectors on the edge of the card for those 4 cameras - do not connect inputs to both at the same time though. The other 12 cameras (we'll call those Cam4 - Cam15) are only available from the connector on the top of the card. The card should be supplied with three separate PC card edge units with four BNC connnectors on each and a cable to connect each one to the pin header on top of the card.

Operation of the Card

There are only 4 physical bt878A controller chips on the board, and with the Linux bttv driver under V4L they are labelled as /dev/video0 through /dev/video3. The interesting part of the system is that any of the 16 cameras (Cam0 - Cam15) can be connected to any of the 4 controllers (/dev/video0 - /dev/video3). By default, the driver connects Cam0 to /dev/video0, Cam1 to /dev/video1, etc. Different application software packages may do different things with controllers and channels, so it is difficult to specifically say how to select a particular camera for a particular software package. I can, however, be specific with the xawtv program.

Using the Card with xawtv

Connect a camera to Cam0 and run xawtv. You should see the picture from the camera. Now "right click" on the picture to bring up the control panel. On the line labeled "Video Source" it says "Composite0" - that corresponds to Cam0. If you click on that, it will give you a drop-down box labeled "Input". Select "Composite1" and watch the picture disappear. Then change the camera connector to the next lower BNC connector (Cam1), and the picture should re-appear.

I assume you have at least two cameras around. Connect a second camera to Cam3 (the bottom BNC on the back of the card). With xawtv, verify that you can switch back and forth between the two (Cam1 and Cam3). Then, start up a second instance of xawtv, this time with

   xawtv -device /dev/video1

By default, the driver "connects" Cam0 - 3 to /dev/video0 - /dev/video3, but by default xawtv re-initializes whatever controller it is using to Cam0, so this second instance gives you a blank / blue screen. Now "right click" on the picture and select "Composite3". The picture from Cam3 should appear.

You can continue like that, starting up to 4 instances of xawtv (one for each /dev/videox), and use any of them to look at any of the (possibly 16) cameras.