14 votes
Accepted

GNU Radio sinusoid multiplication does not produce perfect results

I expect to see the sum & difference frequencies. You're multiplying two complex sinusoids, not a $\sin$ and a $\cos$, but $$e^{j2\pi f_1t}\cdot e^{j\left(2\pi f_2t-\frac\pi2\right)}= e^{j2\pi(...
Marcus Müller's user avatar
10 votes
Accepted

Sine signal distorted in GNU Radio

Your confusion stems from the fact that your mind (and the WX GUI scope sink) uses linear interpolation between the samples. That's not right – in your case, where the signal period isn't an integer ...
Marcus Müller's user avatar
10 votes
Accepted

FFT showing 2 signals - GNU Radio

What's going on Most software-defined radios use quadrature in their signal processing architecture. This means there are two copies of the signal processing chain, with local oscillators that are 90°...
Kevin Reid AG6YO's user avatar
  • 24.5k
9 votes
Accepted

Signal Source Block of GNU Radio

You're on to something very right! In signal processing, we define a basic waveform by its frequency, number of samples within the period and its amplitude. I'd go a step further: In digital ...
Marcus Müller's user avatar
8 votes
Accepted

How to choose the right sampling rate and bandwidth for RTL-SDR dongle?

What the FFT sink shows as frequency axis actually has no basis in "real world signal" – it just takes the sample rate you set (here, you set 1 MHz), and scales the full nyquist bandwidth to that. If ...
Marcus Müller's user avatar
7 votes
Accepted

I want to know the bandwidth of this signal; problems using "QT GUI Frequency sink" to show it

GNU Radio, like any DSP system, works primarily in terms of sample counts, not time. Therefore, you have to add on time information — a sample rate — to get correct frequency-domain information. GNU ...
Kevin Reid AG6YO's user avatar
  • 24.5k
7 votes

Output power from the TX/RX port of the USRP N210 decreases as the frequency increases

That's an expected phenomenon: Real-world physical systems tend to be frequency-selective (i.e. not constant over frequency), and "at large scale" low-pass systems. This applies to ...
Marcus Müller's user avatar
7 votes
Accepted

Why does a sine wave show two peaks in the frequency domain on GNUradio?

Because mathematically, a function like $\sin(\omega t)$ has an angular frequency of $\omega$ and $-\omega$. Consider: $$ e^{i\omega t} + e^{-i\omega t} $$ By Euler's formula this can be expanded to: $...
Phil Frost - W8II's user avatar
6 votes

GnuRadio RF transmission, legal and safety issues

The frequency allocation chart is really more artistic than informative. You can not and should not use that as a guide for selecting a frequency. There is too much information to fit on the chart, ...
user10489's user avatar
  • 6,255
6 votes

What cause the spectrum peak of `center frequency`?

In addition to the clock leakage mentioned in the other answer, a DC offset spike can also show up in the downmixed IQ if the mixer(s) and/or the ADC(s) aren’t perfectly balanced (exactly equal gains ...
hotpaw2's user avatar
  • 13.3k
5 votes
Accepted

How to measure signal power in GNU Radio.(I wondered how much dBm is specific.)

They don't "measure", they just display. And yes, as you noticed, this is digital signal processing, so there's no physical units involved – the display axes are correctly labeled with "dB", as in "...
Marcus Müller's user avatar
5 votes
Accepted

Transmit on multiple frequencies with USRP using GRC

To transmit two signals at once, just generate the two signals with the appropriate frequency spacing between them, and add them together. With your mentioned frequencies, you might generate the ...
Kevin Reid AG6YO's user avatar
  • 24.5k
5 votes
Accepted

SDR GnuRadio gr-dsd decode D-STAR voice

You have the right general idea, but a couple of problems: The sample rate entering the DSD block (hence the output of the FM demodulator) must be 48000 Hz; this is hard-coded in gr-dsd. From your ...
Kevin Reid AG6YO's user avatar
  • 24.5k
5 votes
Accepted

How can I make WBFM receiver without using WBFM Receive block?

General principle: In GNU Radio you cannot ever have a flow graph with a loop in it. If you wish to have feedback of some kind, it must be implemented in a single block. (There are many existing ...
Kevin Reid AG6YO's user avatar
  • 24.5k
5 votes
Accepted

How much power does an RTL-SDR draw?

To extend what hotpaw2 said: So, it seems the front panel USB sockets are maybe not providing enough power for the Dongle to work? I googled how much power the Dongle draws? and apparently it ...
Marcus Müller's user avatar
5 votes
Accepted

Heterodyning complex values in gnuradio

This is how the mathematics of complex signals work. The proof begins with Euler's formula: $$ e^{i\varphi} = \cos \varphi + i \sin \varphi \tag 1 $$ For signal processing, instead of $\varphi$, we ...
Phil Frost - W8II's user avatar
5 votes
Accepted

Gnuradio bandwidth of sink cause signal frequency changed?

Gnu Radio doesn't really know anything about frequency in cycles per second (Hz), only cycles per sample. The left of the chart is -0.5 cycles per sample, the middle is 0 cycles per sample, and the ...
Phil Frost - W8II's user avatar
5 votes
Accepted

What's the `Minimum signal duration` and `Minimum detectable signal duraion` of Ettus B210?

A SDR peripheral like the Ettus USRP B210 continuously digitizes the incoming RF and sends it to the attached computer. There are no gaps in its coverage — anything that is within the bandwidth is ...
Kevin Reid AG6YO's user avatar
  • 24.5k
4 votes

How to make a software defined radio using USRP and GRC

In general, a software-defined radio and one implemented in hardware will have much the same signal paths, but how they are broken down into individual “blocks” will vary. In your case, following the ...
Kevin Reid AG6YO's user avatar
  • 24.5k
4 votes

gr-osmosdr Could NOT find Boost (C++ libraries)

Thanks to @Marcus Müller. It seemed in this instance it was the lack of the devel packages for boost. A simple... $ sudo dnf install boost-devel ...did the trick (Well, I mean it moved me on to ...
OhNoNotScott's user avatar
4 votes

Transposing gqrx setup to rtl_fm?

This will be an incomplete answer to begin with, hoping that collectively we can come up with a workable solution: Freq 156.425 Mhz -f 156.425e6 Filter: ...
Edwin van Mierlo's user avatar
4 votes
Accepted

Decimation to listen to FM radio with gnu radio

One reason in general to perform decimation in multiple steps is it reduces the computational requirements of the low-pass filtering. To achieve a sharp transition width in the filter requires a ...
Phil Frost - W8II's user avatar
4 votes
Accepted

Ettus B210 USRP Is it possible to transmit on both Tx Ports either with same or different application?

UHD requires a USRP to be owned by one process only, so no, you can't share the same USRP across two flow graphs, but you could use for example the ZeroMQ PUB/SUB sink/source pair to stream data in ...
Marcus Müller's user avatar
4 votes

How I can build dvb-t/dvb-t 2 transceiver?

Is there dvbt/dvbt-2 receiver? Yes and no: T2 reception is too computationally hard so far. It's work in progress, but it's almost certain that your average PC can't decode full standard T2 rates in ...
Marcus Müller's user avatar
4 votes
Accepted

Merging gnuradio generated python code into the Python web server

GNU Radio Companion (GRC) generates Python code that is something like this (not exact text). (Make sure you chose the "No GUI" option in GRC.) ...
Kevin Reid AG6YO's user avatar
  • 24.5k
4 votes

How much power does an RTL-SDR draw?

I have used RTL-SDR USB peripherals from several vendors. They run at different temperatures (implying different power draws), which suggests that your question does not have a single answer. The ...
hotpaw2's user avatar
  • 13.3k
4 votes

GNU Radio - Frequency parameter of Signal Source Block

For a complex-valued sampled stream, the sample rate must be greater than twice the signal represented. The sample rate in your graph is set to 384k, so it's not possible to represent a 98400 kHz ...
Phil Frost - W8II's user avatar
4 votes

What cause `multiply` has difference result between `float` and `complex` signal?

That's just the math behind it – everything is alright with these results! You need to write down the formula of the real-valued $\sin(t)$ in terms of $e^{j2\pi t}$ and $e^{-j2\pi t}$, and you'll see ...
Marcus Müller's user avatar

Only top scored, non community-wiki answers of a minimum length are eligible