Skip to main navigation Skip to main content Skip to page footer
01 · ONE COMPUTER, EIGHT ENDPOINTS

One Jetson AGX Orin runs the whole system.

A single Jetson AGX Orin 64 GB terminates up to eight Valens A-PHY endpoints and runs the entire real-time pipeline — ingest, signal processing and outputs on one module.

8×
A-PHY ENDPOINTS (UP TO)
16×
V4L2 STREAMS
~2.2 GiB/s
SUSTAINED @ 30 HZ
2048
CUDA CORES
02 · INGEST TOPOLOGY

Ingest without detours.

Up to eight long-reach links land at the Valens deserializer bank, cross into C-PHY trios and flow through NVCSI, VI and DMA straight into V4L2 buffers — no TCP, no userspace hop.

A-PHY · 8× UP TO 8 ENDPOINTS VALENS DES BANK C-PHY NVCSI → VI → DMA V4L2 CONSUMERS A-PHY 1 A-PHY 2 A-PHY 3 A-PHY 4 A-PHY 5 A-PHY 6 A-PHY 7 A-PHY 8 Σ ≤ 8 LINKS · 4.6 GBIT/S EACH VALENS VA70xx DESERIALIZER BANK 8× A-PHY IN FEC VC SPLIT → 16 VCs → C-PHY OUT 4× C-PHY TRIOS 3-WIRE · ~2× D-PHY / PIN NVCSI 4× PORTS 2× VI ENGINES DMA JETSON AGX ORIN /dev/video0..15 16 STREAMS · MMAP ZERO-COPY RING radar-cli CONTROL STREAMING · UI radar-proc. CUDA DoA · TRACKING A-PHY · UP TO 8 ENDPOINTS CSI-2 / C-PHY V4L2 · DMA
03 · SOFTWARE STACK

Four layers, kernel to browser.

The radar rides the Tegra camera stack: a kernel driver presents IQ frames as video devices, and two Rust applications take it from there.

KERNEL

Tegracam V4L2 driver

  • Radar frames as camera frames: RAW12 12-bit IQ (FourCC RG12 — not Bayer)
  • Two driver modes: 2048×384 (1.13 MB/frame) and 2048×1536 (4.5 MB/frame)
  • bypass_i2c=1 — the real chirp config travels over SPI from the STM32; frame rate 10–100 Hz set by framePeriodicity, not the driver
BRING-UP

Device tree & SerDes

  • Device-tree overlays describe sensors, lanes and modes to the Tegra capture stack
  • Valens SerDes configuration brings up each A-PHY link and its virtual channels
  • Endpoint count is a parameter — the same image serves 1 to 8 subarrays
CONTROL & CAPTURE

radar-cli

  • One Rust binary: I²C control, V4L2 capture, WebSocket bridge and browser UI
  • Hot-swaps the 8 tested measurement presets at runtime: pause → reconfigure → resume
  • Capture & replay — record raw streams, play them back into the pipeline
PROCESSING

radar-processor

  • Six DoA methods — Bartlett, Capon, MUSIC, OMP, ISTA, IHT — plus CFAR, DBSCAN and IMM tracking
  • Own browser app for live views; CUDA backend for the full aperture
  • Capon runs strictly per subarray; the cross-coherent aperture feeds advanced processing
04 · REAL-TIME PERFORMANCE

Measured, not estimated.

Every number below comes off the bench — the compact profile on CPU, the full 3072-antenna configuration on CPU and CUDA.

PIPELINE BENCHMARKS · JETSON AGX ORIN 64 GB
COMPACT · 192 ANT · CPU
9–11 ms · 91–111 Hz · across 6 DoA methods
FULL · 3072 ANT · CPU
39 ms · 25 Hz
FULL · 3072 ANT · cuFFT
~27 ms · ~37 Hz
cuFFT
up to 5.2× · 512×3072 batch FFT
VALIDATION
71 unit tests · CUDA rel_error < 1e-6
12-core CORTEX-A78AE 2048 AMPERE CUDA CORES 204 GB/s LPDDR5 JetPack 6.2 ~95 W SYSTEM · PEAK 130 W UNDER CUDA
05 · OUTPUTS

Point clouds out. Raw IQ in parallel.

The pipeline publishes tracked point clouds and 3D bounding boxes over ROS2, TCP or UDP — straight into Foxglove or Rviz. In parallel, the raw IQ stream stays accessible for your own algorithms.

ROS2 POINT CLOUDS · BOUNDING BOXES TCP / UDP STREAM OUT FOXGLOVE · RVIZ VISUALIZATION RAW IQ PARALLEL ACCESS

Modular by design.

From a single subarray to the full 8-subarray system — architecture, firmware and software scale by configuration, not redesign. We serve any configuration on request.

Get in touch
Wellenzahl ЯEPLICAR · A WELLENZAHL REFERENCE PROJECT