← Back to Portfolio

GSoC 2025

GNU Radio 4.0 Block Set Expansion

🏢 GNU Radio
👨‍💼 Mentor: Josh Morman
📅 May - August 2025
💻 C++23, Signal Processing

Project Overview

This project focused on expanding the GNU Radio 4.0 block set by porting and modernizing critical signal processing blocks from GNU Radio 3.x to the new 4.0 architecture. The work involved implementing modern C++23 features, template-first design patterns, and comprehensive testing frameworks to deliver Math, Analog, and Digital block families totaling over 4,000 lines of code.

Key Achievement: Successfully delivered three complete block families (Math, Analog, Digital) with modern C++23 CRTP implementation, enabling GNU Radio 4.0 adoption without losing critical DSP functionality.

Documentation

📊

Final Report

Comprehensive project summary detailing technical contributions, engineering practices, challenges overcome, and quantitative outcomes.

Read Full Report →
📚

Complete Porting Guide

Detailed technical guide for porting GNU Radio 3.x blocks to 4.0, covering API migration, SIMD optimization, and best practices.

View Guide →
📖

Quick Reference

Structured outline version of the porting guide for quick navigation and reference during development work.

Quick Reference →

Progress Blog

GSoC 2025 Final Report

Final project report, accomplishments summary, and future work for the GNU Radio 4.0 Block Set expansion.

Read Post →

Week-12 Check-in (Mentor — Josh Morman)

OFDM implementation progress, packet handling components, and final project phase planning.

Read Post →

Week-11 Check-in (Mentor — Josh Morman)

Digital timing recovery completed, OFDM components started, and PR review progress.

Read Post →

Week-10 Check-in (Mentor — Josh Morman)

Digital PR submitted, implementation of timing recovery blocks, and CI optimization successes.

Read Post →

Week-9 Check-in (Mentor — Josh Morman)

Digital PR preparation, directory structure finalization, and resolving remaining CI issues.

Read Post →

Week-8 Check-in (Mentor — Josh Morman)

Digital constellation implementation, Analog PR feedback, and optimizing CI for large PRs.

Read Post →

Week-7 Check-in (Mentor — Josh Morman)

Analog PR submitted, Digital core implementations, and CI improvements.

Read Post →

Week-6 Check-in (Mentor — Josh Morman)

Completed Analog demodulators, AGC implementation, and Digital blocks planning.

Read Post →

Week-5 Check-in (Mentor — Josh Morman)

Analog modulators implementation, repository transition, and Math PR review.

Read Post →

Week-4 Check-in (Mentor — Josh Morman)

Math blocks PR ready, strategy for Analog block porting, and addressing CI memory constraints.

Read Post →

Week-3 Check-in (Mentor — Josh Morman)

Progress update on block implementation, testing frameworks, and technical decisions for the Math and Analog block families.

Read Post →

Week-2 Check-in (Mentor — Josh Morman)

Repository and workflow decisions, technical architecture discussions, and multi-header organization strategies.

Read Post →

First Mentor Meeting

Initial project planning, setup discussions, and establishing development workflows with mentor Josh Morman.

Read Post →

GSoC 2025 Kick-off: Expanding GNU Radio 4.0

Project introduction, motivation, and overview of the GNU Radio 4.0 block set expansion goals and expected outcomes.

Read Post →

Project Information

Repository
Organization
GNU Radio
Technologies
C++23, CMake, Boost.UT
Code Contribution
4,000+ LOC