-
Notifications
You must be signed in to change notification settings - Fork 419
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG: Enable gain controls and consistent options across RTL-SDR devices #1467
Comments
I'll take a look, but you might try running SDRangel on the Pi - then RemoteTCPInput will give you DC / IQ correction and a few other features that rtl_tcp doesn't support. |
SoapySDR plugin shows controls exposed by SoapySDR so this control is missing from SoapySDR (one more among other shortcomings...) not from SDRangel. |
Not sure why rtl_tcp.exe isn't working. In its log, I see:
So the commands to set the gain are being received OK, but it doesn't seem to work, as I'd expect. |
The problem isn't actually with the gain control, but unsigned data being read as signed. |
…SDRA commands when RTL0. Implements f4exb#1467
Please add to the RemoteTCPInput device (when using remote rtl_tcp server):
Please add to the SoapySDR[1:0] device (when using remote SoapySDR server with an RTL-SDR):
Images showing the issues:
The following images all use the same RTL-SDR dongle.
The first row of 3 images shows 3 different gain settings and spectrums for the RemoteTCPInput device using remote rtl_tcp server.
These images show that the gain and AGC controls do NOT alter the signal level (remains at about -75dB, unchanged for all 3 gain settings).
In contrast, the second and third rows of images show gain settings and spectrums for the RTL-SDR[0] device with local connection, and the SoapySDR[1:0] device with remote SoapySDR server, respectively.
These images show that for these other two devices, the gain and AGC controls DO alter the signal level (about -75dB to -50dB, and about -85dB to -60dB respectively).
So it appears something is wrong with the gain controls on the RemoteTCPInput device since its gain controls don't effect its signal level.
These images also show that the DC and IQ options are missing from the RemoteTCPInput device,
and that the "Bias T" option is missing from the SoapySDR[1:0] device.
Problems caused by gain control and DC/IQ issues:
FM broadcast audio is lost or sporadic when using rtl_tcp server on a "Raspberry Pi 4B" feeding RemoteTCPInput.
(Other server/device combinations do NOT have this issue. This audio issue only happens with rtl_tcp and RemoteTCPInput.)
To determine the cause of this issue, I first verified that the rtl_tcp server worked by testing it with other SDR packages.
I fed rtl_tcp into both SDR++ and Gqrx. Both SDR packages play FM audio with no problem. So rtl_tcp is working.
Then I tested the SDRangel "Broadcast FM Demodulator".
I fed rtl_tcp/RemoteTCPInput into "Broadcast FM demodulator" and found that the FM audio was lost or sporadic on the same stations that worked for SDR++ and Gqrx.
Next, I fed direct-connected/RTL-SDR[0] and SoapySDR/SoapSDR[1:0] into "Broadcast FM demodulator" and found that the FM audio worked for both devices.
So the SDRangel "Broadcast FM Demodulator" was not the problem, because it worked with direct-connected and SoapySDR devices.
The problem was with rtl_tcp/RemoteTCPInput (remote rtl_tcp server) because it was the only case that failed.
Looking at RemoteTCPInput, its spectrum shows a large (+35dB above signal) spike/artifact located at the center frequency.
If I leave this spike centered on the FM station frequency, then the FM audio fails.
If I apply an offset frequency to the "Broadcast FM Demodulator" to move the spike away from the station frequency, then the audio works.
So the difference between the signal level and this spike/artifact peak is causing the audio problem.
Using the gain controls, both the RTL-SDR[0] and SoapySDR[1:0] devices can raise the signal level relative to this spike peak and thus achieve good FM audio.
Unfortunately, the RemoteTCPInput device gain controls have no effect on the signal level, so its FM audio remains poor.
Also, the RTL-SDR[0] and SoapySDR[1:0] devices offer a "Software DC block" and "Software IQ correction" options to reduce this spike relative to the signal.
Unfortunately, these options are missing from the RemoteTCPInput device.
Problem caused my missing "Bias T" issue:
I purchased a "Nooelec SAWbird+ NOAA Saw Filter & LNA Module" for use with the Satellite tracker, and discovered that the SoapySDR device was missing the "Bias T" option to power it (when using an RTL-SDR).
Request:
Please enable the gain controls and add the DC and IQ options on the RemoteTCPInput device when using rtl_tcp server.
Also, please add the missing "Bias T" option on the SoapySDR[1:0] device.
SYSTEM:
The text was updated successfully, but these errors were encountered: