bayerlink

Raw sensor data over an HDMI/DVI link.

FPGA boards rarely have camera connectors; nearly everything has HDMI. bayerlink treats a display link's active area as a byte container: packed raw Bayer samples, one camera line per display line, self-described by a 48-byte header — magic, V4L2 fourcc, geometry, frame counter, stripe and source identity for multi-link use, CRC. Real sensor data into any board with HDMI-in: no MIPI hardware, no deserialisers, no per-sensor bring-up.

sensor ──CSI-2──▶ Raspberry Pi (libcamera raw) ──HDMI──▶ FPGA, or a capture stick
One rule governs the link: full-range RGB, no scaling, no overscan, 4:4:4. The test patterns exist to catch a limited-range clamp on day one.

The protocol

The tools