Software-Defined Radio (SDR)

Real-time physical-layer testbeds, GNU Radio OOT modules, beamforming, and network coding

Software-Defined Radio (SDR) bridges signal processing theory and real-world hardware implementation. By replacing dedicated hardware components with software modules in C++ and Python, SDR platforms enable flexible, reconfigurable, and rapid prototyping of physical-layer communication protocols.

My work in SDR focuses on custom GNU Radio Out-Of-Tree (OOT) modules, multi-antenna clock/phase synchronization, Direction of Arrival (DoA) estimation using the MUSIC algorithm, OFDM testbeds, and physical-layer network coding on BladeRF and USRP platforms.

GNU Radio & SDR Projects
01 OFDM Testbed

gr-ofdm_testbed: GNU Radio OOT Module

OFDM Transceiver · C++ OOT Module · BladeRF

A custom GNU Radio Out-Of-Tree (OOT) module designed for real-time OFDM physical-layer prototyping. Implements frame preamble synchronization, channel estimation, equalization, and payload streaming directly on RF hardware.

Serves as a flexible base for testing advanced wireless algorithms (such as near-field channel estimators and relay protocols) under over-the-air channel conditions.

Repository: gr-ofdm_testbed.
gr-ofdm_testbed OFDM Transceiver Module
GNU Radio companion flowgraph & OFDM spectrum constellation analyzer.
02 Direction Finding

gr-DoA_BladeRF: Multi-SDR Synchronization & MUSIC DoA

BladeRF Array Sync · MUSIC Algorithm · Direction of Arrival

A multi-SDR array processing system developed for real-time Direction of Arrival (DoA) estimation using the MUSIC algorithm. Overcomes phase and clock jitter across independent BladeRF units through hardware clock sharing and phase calibration.

Enables accurate spatial beam tracking, direction finding, and array signal processing on low-cost SDR hardware platforms.

Son & Quynh, REV-ECIT (2021); Repository: gr-DoA_BladeRF.
gr-DoA_BladeRF Beamforming & DoA
Multi-antenna clock synchronization & MUSIC DoA polar beam estimation.
03 Network Coding

SDR_NC: Network Coding & Cognitive Wireless Networks

Physical-Layer Network Coding · Multi-Robot · Multimedia

Real-time physical-layer network coding testbed designed for cognitive wireless networking and multi-robot communication systems. Implements agile multimedia packet transmission and cooperative relaying.

Demonstrates significant throughput gains and energy efficiency in spectrum-constrained multi-hop wireless networks.

Son et al., REV-ECIT (2019), REV-ECIT (2023); Repository: SDR_NC.
SDR Network Coding & Multi-Robot Communication
Physical-layer network coding & multi-robot cognitive relaying on SDR.
Publications
  1. Do Hai Son, Tran Thi Thuy Quynh, Ngo K. Hoang, Nguyen Van Ly, and Nguyen Linh Trung. Thiết lập nền tảng SDR cho hệ thống OFDM. Chương 9 trong sách Truyền thông chuyển tiếp hai chiều: Lý thuyết và Thực nghiệm, Nhà xuất bản Đại học Quốc gia Hà Nội, tr. 151-235, Tháng 6/2025.
  2. Do Hai Son, Nguyen Huu Hung, Pham Duy Hung, and Tran Thi Thuy Quynh. Ước lượng kênh truyền trong hệ thống đa robot sử dụng SDR. In Hội nghị Quốc gia lần thứ XXVI về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT), Hanoi, Vietnam, December 2023.
  3. Do Hai Son and Tran Thi Thuy Quynh. Đồng bộ nhiều SDR trong thực thi thuật toán ước lượng hướng sóng đến MUSIC. In Hội nghị Quốc gia lần thứ XXIV về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT), Hanoi, Vietnam, December 2021.
  4. Do Hai Son, Tran Duc Manh, and Tran Thi Thuy Quynh. Định vị Robot di động trong nhà dựa trên tín hiệu WiFi. In Hội nghị Quốc gia lần thứ XXII về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT), Hanoi, Vietnam, December 2019.
  5. Do Hai Son. Xây dựng hệ thống xác định hướng sóng đến sử dụng thuật toán MUSIC trên thiết bị SDR. Khóa luận Cử nhân, Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội, Tháng 7/2020.
Repositories
  1. gr-ofdm_testbed: https://github.com/DoHaiSon/gr-ofdm_testbed — OFDM Transceiver Testbed OOT Module for GNU Radio.
  2. gr-DoA_BladeRF: https://github.com/DoHaiSon/gr-DoA_BladeRF — Multi-SDR Synchronization and MUSIC Direction of Arrival module.
  3. SDR_NC: https://github.com/DoHaiSon/SDR_NC — Network Coding with Multimedia Transmission for Cognitive Networking on SDR.