Raspberry pi 3B+ and ADV7280A-M for video capture

Hey everyone,
I was wondering whether anybody has tried getting an ADV7280A-M chip to work with the raspberry pi CSI connector. While doing some research on the topic it seems that until now only the evaluation board has been tested successfully. Also the driver for the chip is already in the kernel according to this link.

My idea is to design a small raspberry shield that goes on top of a rasperry pi and connects with the standard fpc cable to the CSI connector underneath. The design is currently ready so far. If anyone is interested i will gladly share the kicad files.
One remaining concern is whether this approach could be successful or not. If anybody has some expirience with this IC i would really appreciate your help with this :slight_smile:

yupp - @autr and i did some experiments with this back in 2019 - even laid out a test board similar to what you describe (cant find a picture of it right now but is kicking around studio somehwere) …

if i remmeber rightly it was working on some older version of rpi os then we didnt yet figure out how to get it working on an updated one but it was a while ago now… kinda parked it

3 Likes

Yes yes, our initial test worked great, but problems with the new OS - basically needed a solid chunk of time to debug. Some blockers were then having no apartment, and also losing my studio to real estate developers (Berlin is insane!), and then a 2 year project which involved working abroad. We will return to it which is also maybe serendipitous 5 years later because the new Pi5 has 2 x CSI inputs. Videomischer ahoy!

1 Like

Ah I see. Sounds like quite a journey. I hope all is well with you.

It’s reassuring to hear that this should in principle work. From what I could tell the CSI fpc connector is also standardized so you could use this board with other sbc’s like the jetson nano or lucky fox modules. But I don’t really if the drivers are in the kernel for these boards.
For now I guess I’m going to order the PCB’s sometime in winter.

Using two of the ICs for a video mixer is a cool idea! Are you planning on making this project open source when you get around to it?
Thanks for your quick replies.

1 Like

Sure, I imagine it would be open source - the synthesizer I’ve been building since 2016 has two codebases: a backend infrastructure for the people, and a frontend implementation for personal artworks as Autr. So this is hardware / backend.

Hey again,
it took longer than expected to get it all sorted out. Here is now a github repo with my results: https://github.com/e-zsche/ADV7280-Raspi-shield

The hardware itself works better than I expected. I got no crashes and the picture is stable. Unfortunately I do not have time at the moment to test this in depth… Hopefully in the next few month I get around to do some recordings with the setup and post these here :slight_smile:

edit: Analog devices sent me two sample ICs. These are ADV7280-M not ADV7280A-M I’m not sure if there is a difference in picture quality…

6 Likes

very nice ! looking forward to testing this!

interesting! is there vignetting on the output video from this?

I’m not sure what vignetting means. A quick google search came with the effect of shading and loss of saturation towards the edges.

Do you mean this effect?

As soon as I get around to make some recordings I will post them :slight_smile:

Here are my notes from 2022/23. A little disorganised, but I think I was trying to work out which chips have pre-existing Linux support, which have open source drivers from Analog Devices, and also which are being produced still. For video quality keeping an eye out for how many times the signal is oversampled (ie. clock speed of ADC), with ADV7184 supposed to be specifically for unstable or noisy signals.

Chips With Drivers:

Analog Devices Drivers

https://wiki.analog.com/resources/tools-software/linux-drivers-all

Linux Tree

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree//drivers/media/i2c/adv7180.c?id=HEAD

IS PRODUCED | I2C LINUX KERNEL | ANALOG DEVICES DRIVER

Comparison of ADV7280A, ADV7281A, and ADV7282:

  1. Number of Input Channels:
  • ADV7280A: 4 analog input channels
  • ADV7281A: 6 analog video input channels
  • ADV7282: 4 analog video input channels
  1. Video Input Support:
  • ADV7280A: CVBS (composite), S-Video (Y/C), and YPrPb (component)
  • ADV7281A: CVBS (composite), S-Video (Y/C), and YPrPb (component)
  • ADV7282: CVBS (composite), S-Video (Y/C), and YPrPb (component)
  1. Differential Video Input Support (for noisy signals):
  • ADV7280A: N/A
  • ADV7281A: Fully differential, pseudo-differential, and single-ended CVBS video input support
  • ADV7282: Fully differential, pseudo-differential, and single-ended CVBS video input support
  1. STB Diagnostics (Set Top Box television stuff):
  • ADV7280A: Not specified
  • ADV7281A: STB diagnostics on 2 video inputs
  • ADV7282: Not specified
  1. Common-Mode Input Range (noisy amplified signals):
  • ADV7280A: Up to 1.47 V common-mode input range solution
  • ADV7281A: Up to 4 V common-mode input range solution
  • ADV7282: Up to 4 V common-mode input range solution
  1. Additional Video Enhancement Features:
  • ADV7280A: Integrated I2P video output converter (deinterlacer)
  • ADV7281A: N/A
  • ADV7282: Adaptive Digital Line Length Tracking (ADLLT), signal processing, and enhanced FIFO management provide mini-time base correction (TBC) functionality. 5-line adaptive 2D comb filter and CTI/DNR video enhancement.
  1. Output Interface:
  • ADV7280A: 8-bit ITU-R BT.656 YCrCb 4:2:2 output and HS, VS, or field synchronization
  • ADV7281A: MIPI CSI-2 Tx output interface
  • ADV7282: N/A

Chips Without Drivers

ADV7188

	•	Multiformat video decoder supports NTSC (J/M/4.43), PAL (B/D/G/H/I/M/N), SECAM
	•	Integrates 4 x 54 MHz, Noise Shaped Video (NSV®), 12-bit ADCs
	•	SCART fast blank support
	•	Clocked from a single 28.63636 MHz crystal
	•	Line-locked clock-compatible (LLC)

ADV7184 - designed for noisy signals

Current projects:

	•	Multiformat video decoder supports NTSC (J/M/4.43), PAL (B/D/G/H/I/M/N), SECAM
	•	Integrates 4 x 54 MHz, 10-bit ADCs
	•	SCART fast blank support
	•	Clocked from a single 28.63636 MHz crystal
	•	Line-locked clock-compatible (LLC)
	•	Adaptive Digital Line Length Tracking (ADLLT™), signal processing, and enhanced FIFO management give mini-TBC functionality
	•	5-line adaptive comb filters
	•	Proprietary architecture for locking to weak, noisy, and unstable video sources such as VCRs and tuners
	•	Subcarrier frequency lock and status information output
	•	Integrated automatic gain control (AGC) with adaptive peak white mode
	•	Macrovision® copy protection detection
	•	Chroma transient improvement (CTI)

ADV7401

Four 10-bit ADCs sampling up to 140 MHz
12 analog input channel mux & SCART fast blank support
Internal Anti-Alias Filters
NTSC/PAL/SECAM color standards support
720p-/1080i-component HDTV support
Digitizes RGB graphics up to 1280 × 1024 @ 75 Hz (SXGA)
	•	525p-/625p-component progressive scan support
	•	24-bit digital input port supports data from DVI/HDMI Rx IC
	•	Any-to-any, 3 × 3 color-space conversion matrix
	•	Industrial temperature range (−40°C to +85°C)
	•	12-bit 4:4:4/8-bit 4:2:2 DDR pixel output interface
	•	VBI data slicer (including TeleText)

2 Likes

OK this is absolutely amazing work, bravo, much love and hats off :clap::heart::heart:

Do you have a donations page?

1 Like