Skip to main content

GRC Basic

Jia-YinLess than 1 minutecoursecomm

Introduction to GRC

GNU Radio Companion (GRC) is the graphical user interface for GNU Radio, allowing users to design communication systems by dragging and dropping components, and generating corresponding Python/C++ code. GRC has rich functionality, and this unit mainly introduces some basic concepts of GRC, including data types, streams and vectors, choosers and selectors, GUI Hints, QT GUI Tab Widgets, Virtual Sources, and Virtual Sinks.

Data Types

The main data types in GNU Radio are divided into two categories: Streams and Vectors. A stream is a continuous sequence of data, commonly used to represent time series, such as the sampled values of an analog signal. A vector is used to represent a fixed-size block of data, which is particularly useful for operations that require fixed-length inputs, such as the Fast Fourier Transform (FFT).

Chooser and Selector

A chooser is used to select specific items, and a common example is a dropdown list. A selector is used to determine how inputs and outputs are mapped, and it is often used to select a specific data stream.

GUI Hint

The GUI Hint is primarily used to set the layout of QT GUI components.

QT GUI Tab Widget

The QT GUI Tab Widget allows users to create additional tab pages, increasing the flexibility of the system layout.

Virtual Source and Virtual Sink

Virtual Sources and Virtual Sinks can be used to break down a large system into smaller, more manageable blocks based on the data flow graph, allowing for a more hierarchical and flexible system design.