Signal Reflection - KrakenSDR Multi-Beam System

Recently Updated Rust Python

Contents

Concept

Distributed multi-beam signal reflection analysis system built on KrakenSDR hardware. A Raspberry Pi handles data acquisition and streams IQ data over UDP; a Mac or Linux workstation runs compute-intensive DSP. All four surveillance channels process in parallel with independent Range-Doppler visualization, per-beam configuration, and real-time performance monitoring.


Technical Reports


Architecture

The KrakenSDR provides five receive channels: one reference channel (direct signal from transmitter) and four surveillance channels (directional antennas capturing reflected signals). The Heimdall DAQ library runs on the Pi, streaming IQ at 65–80 FPS over UDP. The processing host receives IQ data, computes Range-Doppler maps using pyapril, and renders results in a Dash web dashboard.

Key design choices:

9,600 lines of Python. Four phases shipped across 25 plans.


Features

Shipped (v1.0):

In progress (v2.0 — target tracking):


Quick Facts

   
Status Recently Updated
Stack Rust, Python

What This Is

A distributed multi-beam signal reflection analysis system based on KrakenSDR hardware. Pi handles data acquisition, Mac/Linux handles compute-intensive DSP. All 4 reflection channels process in parallel with independent Range-Doppler visualization, per-beam configuration, and real-time performance monitoring. v2 adds per-beam target tracking with geographic visualization, ADS-B correlation, and detection recording for offline analysis.


Core Value

Clean, understandable, stable codebase that reliably tracks aircraft in real-time.


Current Milestone: v2.0 Target Tracking & Visualization

Goal: Turn raw Range-Doppler detections into persistent, geographically-visualized target tracks with ADS-B validation and detection recording.

Target features:


Current State (v1.0 shipped 2026-02-16)


Requirements


# Validated


# Active


# Out of Scope / Deferred to Later Milestones


Context

Hardware Setup:

Operational Environment:

Codebase Architecture (v1.0):


Constraints


Key Decisions

Decision Rationale Outcome
Phase 1 = foundation before features Original codebase too unstable to extend ✓ Good — clean base enabled rapid feature development
Distributed processing (Pi → Mac/Linux) Pi performance insufficient for expanded processing ✓ Good — 65-80 FPS streaming achieved
Keep Heimdall-based pipeline Proven DSP library, avoid rewriting core algorithms ✓ Good — stable DSP foundation
Defer cross-beam correlation to v5.0 Requires multi-beam fusion research and coherent array operation (KrakenSDR DoA) — Pending
UV for dependency management Faster, more reliable than pip/conda ✓ Good — reproducible environments
Asyncio-based distributed architecture Non-blocking I/O for streaming + control ✓ Good — clean concurrency model
ProcessPoolExecutor for multi-beam True parallelism for CPU-bound DSP, bypasses GIL ✓ Good — 4 beams process independently
Pydantic for configuration Type-safe validation, environment variable support ✓ Good — catches config errors at startup
Per-beam tracking before fusion (v2) Simpler, independently useful, validates detection pipeline — Pending
Both beam geometry and ADS-B for geo (v2) Geometry gives approximate position, ADS-B validates accuracy — Pending
Detection-level recording, not raw IQ (v2) Manageable storage, sufficient for tracking algorithm tuning — Pending

Last updated: 2026-03-04 after adding v5.0 research findings


Current Status

2026-03-05 — Completed 36-02-PLAN.md