Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 13 additions & 12 deletions src/convenience/convenience.c
Original file line number Diff line number Diff line change
Expand Up @@ -239,14 +239,15 @@ int verbose_auto_gain(SoapySDRDevice *dev, size_t channel)
{
int r;
r = 0;
/* TODO: not bridged, https://github.com/pothosware/SoapyRTLSDR/search?utf8=✓&q=rtlsdr_set_tuner_gain_mode
r = rtlsdr_set_tuner_gain_mode(dev, 0);
if (r != 0) {
fprintf(stderr, "WARNING: Failed to set tuner gain.\n");
} else {
if (SoapySDRDevice_hasGainMode(dev, SOAPY_SDR_RX, channel)) {
r = SoapySDRDevice_setGainMode(dev, SOAPY_SDR_RX, channel, /*automatic*/ true);
if (r != 0) {
fprintf(stderr, "WARNING: Failed to enable auto gain: %s\n", SoapySDRDevice_lastError());
return r;
}
fprintf(stderr, "Tuner gain set to automatic.\n");
return 0;
}
*/

// Per-driver hacks TODO: clean this up
char *driver = SoapySDRDevice_getDriverKey(dev);
Expand Down Expand Up @@ -288,13 +289,13 @@ int verbose_gain_str_set(SoapySDRDevice *dev, char *gain_str, size_t channel)
{
int r = 0;

/* TODO: manual gain mode
r = rtlsdr_set_tuner_gain_mode(dev, 1);
if (r < 0) {
fprintf(stderr, "WARNING: Failed to enable manual gain.\n");
return r;
if (SoapySDRDevice_hasGainMode(dev, SOAPY_SDR_RX, channel)) {
r = SoapySDRDevice_setGainMode(dev, SOAPY_SDR_RX, channel, /*automatic*/ false);
if (r != 0) {
fprintf(stderr, "WARNING: Failed to enable manual gain: %s\n", SoapySDRDevice_lastError());
return r;
}
}
*/

if (strchr(gain_str, '=')) {
// Set each gain individually (more control)
Expand Down
7 changes: 0 additions & 7 deletions src/rtl_fm.c
Original file line number Diff line number Diff line change
Expand Up @@ -225,8 +225,6 @@ void usage(void)
"\t rdc: enable dc blocking filter on raw I/Q data at capture rate\n"
"\t adc: enable dc blocking filter on demodulated audio\n"
"\t dc: same as adc\n"
"\t rtlagc: enable rtl2832's digital agc (default: off)\n"
"\t agc: same as rtlagc\n"
"\t deemp: enable de-emphasis filter\n"
"\t direct: enable direct sampling (bypasses tuner, uses rtl2832 xtal)\n"
"\t no-mod: enable no-mod direct sampling\n"
Expand Down Expand Up @@ -1213,7 +1211,6 @@ int main(int argc, char **argv)
int custom_ppm = 0;
int r, opt;
int timeConstant = 75; /* default: U.S. 75 uS */
int rtlagc = 0;
char *antenna_str = NULL;
dongle_init(&dongle);
demod_init(&demod);
Expand Down Expand Up @@ -1292,8 +1289,6 @@ int main(int argc, char **argv)
dongle.direct_sampling = 3;}
if (strcmp("offset", optarg) == 0) {
dongle.offset_tuning = 1;}
if (strcmp("rtlagc", optarg) == 0 || strcmp("agc", optarg) == 0) {
rtlagc = 1;}
if (strcmp("zero", optarg) == 0) {
demod.squelch_zero = 1;}
if (strcmp("wav", optarg) == 0) {
Expand Down Expand Up @@ -1429,8 +1424,6 @@ int main(int argc, char **argv)
verbose_gain_str_set(dongle.dev, dongle.gain_str, dongle.channel);
}

SoapySDRDevice_setGainMode(dongle.dev, SOAPY_SDR_RX, dongle.channel, rtlagc);

if (custom_ppm) verbose_ppm_set(dongle.dev, dongle.ppm_error, dongle.channel);

verbose_set_bandwidth(dongle.dev, dongle.bandwidth, dongle.channel);
Expand Down