↓ Archives ↓

TVP5150 Board Schematic

If you’re interested, I’m posting the schematic of the TVP5150 board, as it ships.  Remember that connector J2 is not populated, but you can get the connector from digikey and install it yourself if you’re looking for an easy way to access the UART which appears there.  Resistors R4 and R2 are zero ohm resistors which you can remove if you don’t have a revision 1.5 leopard board.

As before, you can order a tvp5150 board by clicking here.

TVP5150 board schematic

TVP5150 Patch Update

While testing the TVP5150 boards this weekend, I found that I sometimes got video which seemed to be shifting colors. It didn’t seem to be hardware related, so I started investigating the tvp5150 register settings. I’m using the defaults for everything, but I did seem to isolate it down to the color subcarrier PLL. By setting the “Color subcarrier PLL frozen” bit, the problem seemed to go away. So, I’m attaching v2 of the patch for the RR SDK. If you’re interested in the particular change, it’s the tvp5150_init_reg_seq structure in tvp5150_davinci.c file. Here is the new version:

static const struct tvp5150_reg tvp5150_init_reg_seq[] = {

And here is the new patch…

Buy the TVP5150 Board

For those that want to connect an NTSC (or PAL) camera to the Leopard Board, I have a few TVP5150 daughterboards available.  They plug right into the J5 connector, and work with the RidgeRun Leopard Board SDK.  NTSC input is via an RCA connector, and the re is an unpopulated location for a header to mate with the J4 connector on the Leopard which brings the UART connections and 3.3v/GND out to a .1″ header if you need another UART.


The price is $25, plus $5 flat rate shipping in the USA.  I’m not sure about shipping elsewhere.  So, if you are in the USA and want one (or two or three), just use the button below.  If you’re outside the country, drop me an email and we’ll try to figure out the details.

sorry: sold out right now

TVP5150 Patch for RidgeRun SDK (Generic YCbCr mode)

This patch is for the 840402 release of the Leopard board SDK from RidgeRun.  It configures the DM355 for “generic YCbCr mode”, because there are a couple of signals missing from the 1.4 version Leopard’s J5 connector which would have allowed for a true BT.656 interface.

If you have a Version 1.5 Leopard Board, the extra J5 signals are present, and you should use the BT.656 version of the patch.  This will give you better overall image quality.


  • To install the patch, first make sure you RR SDK is configured and builds ok.
  • Then download the patch and place in your kernel/linux-2.6.29/patches directory
  • Then, in the patches directory, edit the “series” file, and place tvp5150.patch at the end of the series.
  • Next, you can do a “quilt push” command to apply the patch.  It should apply cleanly, and you should get a “Now at patch tvp5150.patch” message at the end.
  • Change to your linux 2.6.29 directory, do a “make menuconfig”, then go
    device drivers -> multimedia devices -> video capture adapters ->
    encoders/decoders and other helper chips -> and select tvp5150 for
    leopard. Unselect the Aptina MT9V113.
  • Go back to the SDK root directory, DM355SDK840402 and rebuild the kernel with a “make kernel”
  • Once that is done, do a “make install” to download the kernel to your Leopard board.  You really shouldn’t need to rebuild the filesystem.
  • Power down your Leopard, attach the TVP5150 card, and apply power.
  • After booting completes, use the command “dmesg | grep tvp5150″ to verify the TVP5150 was identified.  You should see something like:
/ # dmesg | grep tvp5150
[42949374.070000] vpfe-capture vpfe-capture: register slave tvp5150_leopard
[42949374.080000] tvp5150_leopard 1-005c: tvp5150_leopard found at 0xb8 (DaVinciI2C adapter)
[42949374.090000] tvp5150_leopard 1-005c: chip version 0×04 detected
[42949374.090000] vpfe-capture: Current decoder is set to tvp5150_leopard
[42949374.100000] tvp5150_leopard 1-005c: Registered to v4l2 master vpfe-capture!!

To test the board, see the other post with sample Gstreamer pipelines.

Example GStreamer Pipelines

To try out the TVP5150 board, the first thing you need to do is run the /bin/loadmodules.sh script.

Then connect a monitor to the NTSC output of the Leopard, and connect your video source to the RCA input connector of the TVP5150 board.

For a simple loopback, which displays the video source on the Leopards video output, try this pipeline:

fbset -disable; gst-launch -e v4l2src always-copy=false ! dmaiaccel ! TIDmaiVideoSink sync=false displayStd=v4l2 displayDevice=/dev/video2

If you have Darwin Streaming Server running on your Leopard, you can stream pretty decent live video with a pipeline like:

gst-launch v4l2src always-copy=false queue-size=6 ! videorate ! video/x-raw-yuv, format=(fourcc)UYVY, width=720, height=480, framerate=(fraction)15/1 ! dmaiaccel ! priority nice=-15 ! queue ! dmaienc_mpeg4 maxbitrate=3000000 targetbitrate=2000000 ! priority nice=-10 ! queue ! dmaiperf ! priority nice=-16 ! rtpmp4vpay ! udpsink port=5434 &