Communication systems engineering with GNU Radio : a hands-on approach / Jean-Michel Friedt, Herv�e Boeglen.

By: Friedt, Jean-Michel [author.]
Contributor(s): Boeglen, Herv�e [author.]
Language: English Publisher: Hoboken, New Jersey : John Wiley & Sons, Inc., [2025]Description: 1 online resource (xxiv, 320 pages) : illustrations (chiefly color)Content type: text Media type: computer Carrier type: online resourceISBN: 9781394218882 ; 1394218893; 1394218907; 1394218915; 9781394218899; 9781394218905; 9781394218912Subject(s): Software radio | Systems engineeringGenre/Form: Electronics books.DDC classification: 621.384 LOC classification: TK5103.4875 | .F75 2025Online resources: Full text is available at Wiley Online Library Click here to view
Contents:
Table of Contents About the Authors xi Foreword xiii Acknowledgments xvii Acronyms xix About the Companion Website xxi Introduction xxiii 1 Getting Started with GNU Radio: Synthetic Signals 1 1.1 Evolution of Radio Frequency Electronics Toward SDR 1 1.2 The Complex Envelope and the Justification of the IQ Structure 2 1.3 Complex Number Manipulation 7 1.4 GNU Radio and GNU Radio Companion 7 1.5 Sample Rates, Decimation and Aliasing 13 1.6 Low-pass Filtering or Working on Upper Nyquist Zones 19 1.7 ADC and DAC Resolution 24 1.8 Power Spectral Density Display with the Frequency Sink 27 1.9 Conclusion 29 References 29 2 Using GNU Radio with Signals Collected from SDR Hardware 31 2.1 SDR Hardware Architecture 32 2.2 Using Readily Available Processing Tools 33 2.3 Amplitude Modulation and Demodulation 36 2.4 Frequency Modulation and Demodulation 41 2.4.1 Commercial FM Broadcast: Demodulation and Audio Output 46 2.4.2 Stereo Sound and RDS 48 2.4.3 FSK Modulation 50 2.5 Phase Modulation and Demodulation 53 2.5.1 Phase Modulation 53 2.5.2 Phase Demodulation 55 2.5.3 Radio Data System (RDS) 55 2.5.4 The Global Positioning System (GPS) 57 2.6 Spectral Occupation of the Various Modulation Schemes 63 2.7 Local Oscillator Leakage Issue 63 2.8 Conclusion 67 References 67 3 Communicating with External Software (Python, Networking, ZeroMQ, MQTT) 69 3.1 Connecting to an External Sentence Decoding Tool Using Named Pipes 70 3.1.1 POCSAG Single Channel Decoding 70 3.1.2 POCSAG Multichannel Decoding 72 3.2 TCP/IP Server Running in a Separate Thread 75 3.3 XML-RPC 81 3.4 Zero MQ (0MQ) Streaming 84 3.5 MQTT 93 3.5.1 MQTT for Python, Bash and Octave 94 3.6 Conclusion 96 References 96 4 Correlating: Passive and Active Software-Defined Radio (SDR)–RADAR 99 4.1 SDR–RADAR Requirements and Design 99 4.2 Correlation: GNU Radio Implementation 103 4.3 Passive RADAR Principle and Implementation 113 4.4 Active RADAR Principle and Implementation 113 4.5 Measurement Principle 114 4.6 From Theory to Experiment: Ranging by Frequency Stacking 115 4.7 Results 120 4.8 Conclusion on Range Measurement 122 4.9 Azimuth Resolution Through Spatial Diversity: Synthetic Aperture RADAR 122 4.9.1 OFDM RADAR (WiFi) 126 4.10 Acquisition for Azimuth Measurement 129 4.11 Suppressing Direct Coupling Interference 132 4.12 Signal Processing 132 4.13 Result Analysis 135 4.14 Interferometric Measurement 136 4.15 Reproducible Positioning of the Receiving Antenna: Motorized Rail 138 4.16 The Radio Frequency Corner Reflector 139 4.17 Fine Displacement Measurement 141 4.18 Impact of the Atmosphere 142 4.19 Time of Flight Measurement with Sub-sampling Period Resolution and the Use of a Surface Acoustic Wave Cooperative Target for Reproducible Range Simulation 144 4.20 Conclusion 149 References 150 5 Digital Communications in Action: Design and Realization of a QPSK Modem 153 5.1 Digital Communication Concepts 153 5.1.1 What Is Digital Information? 153 5.1.2 From Digital Data to Electrical Pulses 155 5.1.3 Occupied Bandwidth and Spectral Efficiency 157 5.2 Building a QPSK Modulator with GNU Radio 160 5.3 Building a QPSK Demodulator with GNU Radio 165 5.3.1 Synchronization 167 5.3.1.1 The Digital PLL 168 5.3.1.2 Maximum Likelihood Estimation and the Costas Loop 174 5.3.1.3 QPSK Timing Recovery 176 5.3.2 Automatic Gain Control (AGC) 181 5.3.3 Assembling All the Components: The Ultimate QPSK Receiver Flowgraph 182 5.4 Conclusion 187 References 188 6 Messages, Tags, and Packet Communications 189 6.1 Introduction 189 6.2 Polymorphic Types 190 6.3 Messages 193 6.4 Tags 202 6.5 Case Studies 206 6.5.1 Improving the gr-nordic OOT Module 206 6.5.2 Converting the QPSK Modem to Packet Mode 212 6.6 Conclusion 216 References 217 7 A Digital Communication Standard: The DAB+ Radio Broadcasting System 219 7.1 Introduction 219 7.2 The DAB+ Standard 220 7.2.1 Foundations of Digital Audio Coding 220 7.2.1.1 The Absolute Threshold of Hearing 220 7.2.1.2 Critical Bands 220 7.2.1.3 Masking 222 7.2.2 Audio Coding Standards and Their Usage in DAB and DAB+ 224 7.2.2.1 The MPEG/ISO/IEC International Audio Standards 224 7.2.2.2 The DAB and DAB+ Audio Coders 225 7.2.3 Digital Transmission over Time and Frequency-Selective Channels: The Need for COFDM 228 7.2.3.1 Time and Frequency-Selective Wireless Channels 228 7.2.3.2 COFDM: Digital Communication Techniques for the Wireless Channel 232 7.2.3.3 The ETSI EN 300 401 DAB Standard 236 7.3 Building a DAB+ Transmitter 241 7.4 Building a DAB+ Receiver with GNU Radio 244 7.4.1 Basic Usage of gr-dab 244 7.4.2 gr-dab in More Details 246 7.5 Conclusion 249 References 249 8 QPSK and CCSDS Packets: Meteor-M 2N Satellite Signal Reception 251 8.1 Introduction 251 8.2 When Will the Satellite Fly Overhead? 255 8.3 Why Such a Complex Protocol? 258 8.4 How to Tackle the Challenge? 260 8.5 From the Radio frequency Signal to Bits 261 8.5.1 Data Format 262 8.5.2 Decoding Data 264 8.5.3 Convolutional Encoding of the Synchronization Word 265 8.5.4 Convolutional Code Representation as State Machines 267 8.5.5 Decoding a Convolutional Code: Viterbi Algorithm 269 8.5.6 Constellation Rotation 271 8.5.7 From Bits to Sentences: Applying the Viterbi Algorithm Decoding 273 8.6 From Sentences to Paragraphs 279 8.7 So Much Text … Pictures Now 281 8.8 JPEG Image Decoding 286 8.9 Conclusion 291 References 296 9 Custom Source and Sink Blocks: Adding Your Own Hardware Interface 297 9.1 Python Block 298 9.2 Out-of-Tree Blocks 300 9.3 Cross-compiling for Running on Headless Embedded Systems 310 9.4 Conclusion 312 References 312 10 Conclusion 315 References 318 Index 319
Summary: "Software defined radio (SDR) emerged in the 1990s and has been a core development method in numerous fields including military and space communications, but has remained restricted to such specialized fields for lack of affordable and widely available hardware, until the advent around 2010 of low cost hardware supported since 2012 as a general SDR signal source, complementing the more expensive platforms available to the general public. While amateur (ham) radio remains mostly focused on hardware implementation of radiofrequency communication devices, the software approach seems to better match a younger generation of engineers well versed in digital signal processing and programming techniques willing to tackle radiofrequency communication."-- Provided by publisher.
Tags from this library: No tags from this library for this title. Log in to add tags.
    Average rating: 0.0 (0 votes)
Item type Current location Home library Call number Status Date due Barcode Item holds
EBOOK EBOOK COLLEGE LIBRARY
COLLEGE LIBRARY
621.384 (Browse shelf) Available
Total holds: 0

Includes bibliographical references and index.

Table of Contents
About the Authors xi

Foreword xiii

Acknowledgments xvii

Acronyms xix

About the Companion Website xxi

Introduction xxiii

1 Getting Started with GNU Radio: Synthetic Signals 1

1.1 Evolution of Radio Frequency Electronics Toward SDR 1

1.2 The Complex Envelope and the Justification of the IQ Structure 2

1.3 Complex Number Manipulation 7

1.4 GNU Radio and GNU Radio Companion 7

1.5 Sample Rates, Decimation and Aliasing 13

1.6 Low-pass Filtering or Working on Upper Nyquist Zones 19

1.7 ADC and DAC Resolution 24

1.8 Power Spectral Density Display with the Frequency Sink 27

1.9 Conclusion 29

References 29

2 Using GNU Radio with Signals Collected from SDR Hardware 31

2.1 SDR Hardware Architecture 32

2.2 Using Readily Available Processing Tools 33

2.3 Amplitude Modulation and Demodulation 36

2.4 Frequency Modulation and Demodulation 41

2.4.1 Commercial FM Broadcast: Demodulation and Audio Output 46

2.4.2 Stereo Sound and RDS 48

2.4.3 FSK Modulation 50

2.5 Phase Modulation and Demodulation 53

2.5.1 Phase Modulation 53

2.5.2 Phase Demodulation 55

2.5.3 Radio Data System (RDS) 55

2.5.4 The Global Positioning System (GPS) 57

2.6 Spectral Occupation of the Various Modulation Schemes 63

2.7 Local Oscillator Leakage Issue 63

2.8 Conclusion 67

References 67

3 Communicating with External Software (Python, Networking, ZeroMQ, MQTT) 69

3.1 Connecting to an External Sentence Decoding Tool Using Named Pipes 70

3.1.1 POCSAG Single Channel Decoding 70

3.1.2 POCSAG Multichannel Decoding 72

3.2 TCP/IP Server Running in a Separate Thread 75

3.3 XML-RPC 81

3.4 Zero MQ (0MQ) Streaming 84

3.5 MQTT 93

3.5.1 MQTT for Python, Bash and Octave 94

3.6 Conclusion 96

References 96

4 Correlating: Passive and Active Software-Defined Radio (SDR)–RADAR 99

4.1 SDR–RADAR Requirements and Design 99

4.2 Correlation: GNU Radio Implementation 103

4.3 Passive RADAR Principle and Implementation 113

4.4 Active RADAR Principle and Implementation 113

4.5 Measurement Principle 114

4.6 From Theory to Experiment: Ranging by Frequency Stacking 115

4.7 Results 120

4.8 Conclusion on Range Measurement 122

4.9 Azimuth Resolution Through Spatial Diversity: Synthetic Aperture RADAR 122

4.9.1 OFDM RADAR (WiFi) 126

4.10 Acquisition for Azimuth Measurement 129

4.11 Suppressing Direct Coupling Interference 132

4.12 Signal Processing 132

4.13 Result Analysis 135

4.14 Interferometric Measurement 136

4.15 Reproducible Positioning of the Receiving Antenna: Motorized Rail 138

4.16 The Radio Frequency Corner Reflector 139

4.17 Fine Displacement Measurement 141

4.18 Impact of the Atmosphere 142

4.19 Time of Flight Measurement with Sub-sampling Period Resolution and the Use of a Surface Acoustic Wave Cooperative Target for Reproducible Range Simulation 144

4.20 Conclusion 149

References 150

5 Digital Communications in Action: Design and Realization of a QPSK Modem 153

5.1 Digital Communication Concepts 153

5.1.1 What Is Digital Information? 153

5.1.2 From Digital Data to Electrical Pulses 155

5.1.3 Occupied Bandwidth and Spectral Efficiency 157

5.2 Building a QPSK Modulator with GNU Radio 160

5.3 Building a QPSK Demodulator with GNU Radio 165

5.3.1 Synchronization 167

5.3.1.1 The Digital PLL 168

5.3.1.2 Maximum Likelihood Estimation and the Costas Loop 174

5.3.1.3 QPSK Timing Recovery 176

5.3.2 Automatic Gain Control (AGC) 181

5.3.3 Assembling All the Components: The Ultimate QPSK Receiver Flowgraph 182

5.4 Conclusion 187

References 188

6 Messages, Tags, and Packet Communications 189

6.1 Introduction 189

6.2 Polymorphic Types 190

6.3 Messages 193

6.4 Tags 202

6.5 Case Studies 206

6.5.1 Improving the gr-nordic OOT Module 206

6.5.2 Converting the QPSK Modem to Packet Mode 212

6.6 Conclusion 216

References 217

7 A Digital Communication Standard: The DAB+ Radio Broadcasting System 219

7.1 Introduction 219

7.2 The DAB+ Standard 220

7.2.1 Foundations of Digital Audio Coding 220

7.2.1.1 The Absolute Threshold of Hearing 220

7.2.1.2 Critical Bands 220

7.2.1.3 Masking 222

7.2.2 Audio Coding Standards and Their Usage in DAB and DAB+ 224

7.2.2.1 The MPEG/ISO/IEC International Audio Standards 224

7.2.2.2 The DAB and DAB+ Audio Coders 225

7.2.3 Digital Transmission over Time and Frequency-Selective Channels: The Need for COFDM 228

7.2.3.1 Time and Frequency-Selective Wireless Channels 228

7.2.3.2 COFDM: Digital Communication Techniques for the Wireless Channel 232

7.2.3.3 The ETSI EN 300 401 DAB Standard 236

7.3 Building a DAB+ Transmitter 241

7.4 Building a DAB+ Receiver with GNU Radio 244

7.4.1 Basic Usage of gr-dab 244

7.4.2 gr-dab in More Details 246

7.5 Conclusion 249

References 249

8 QPSK and CCSDS Packets: Meteor-M 2N Satellite Signal Reception 251

8.1 Introduction 251

8.2 When Will the Satellite Fly Overhead? 255

8.3 Why Such a Complex Protocol? 258

8.4 How to Tackle the Challenge? 260

8.5 From the Radio frequency Signal to Bits 261

8.5.1 Data Format 262

8.5.2 Decoding Data 264

8.5.3 Convolutional Encoding of the Synchronization Word 265

8.5.4 Convolutional Code Representation as State Machines 267

8.5.5 Decoding a Convolutional Code: Viterbi Algorithm 269

8.5.6 Constellation Rotation 271

8.5.7 From Bits to Sentences: Applying the Viterbi Algorithm Decoding 273

8.6 From Sentences to Paragraphs 279

8.7 So Much Text … Pictures Now 281

8.8 JPEG Image Decoding 286

8.9 Conclusion 291

References 296

9 Custom Source and Sink Blocks: Adding Your Own Hardware Interface 297

9.1 Python Block 298

9.2 Out-of-Tree Blocks 300

9.3 Cross-compiling for Running on Headless Embedded Systems 310

9.4 Conclusion 312

References 312

10 Conclusion 315

References 318

Index 319

"Software defined radio (SDR) emerged in the 1990s and has been a core development method in numerous fields including military and space communications, but has remained restricted to such specialized fields for lack of affordable and widely available hardware, until the advent around 2010 of low cost hardware supported since 2012 as a general SDR signal source, complementing the more expensive platforms available to the general public. While amateur (ham) radio remains mostly focused on hardware implementation of radiofrequency communication devices, the software approach seems to better match a younger generation of engineers well versed in digital signal processing and programming techniques willing to tackle radiofrequency communication."-- Provided by publisher.

About the Authors
Jean-Michel Friedt, PhD, is Associate Professor at the University of Franche-Comté, as well as a researcher with the Time and Frequency Department, FEMTO-ST, Besancon, France. He has previously worked as a Systems Engineer for the company SENSeOR, developing wireless passive cooperative targets probed by short-range radar systems.

Hervé Boeglen, PhD, is Associate Professor at the University of Poitiers and a member of the XLIM Laboratory, Futuroscope site, France. He has extensive teaching and research experience in digital communications, software-defined radio, embedded systems and related subjects.

There are no comments for this item.

to post a comment.