From 279dd25b155f886e717a275f8aa5e99b1d654a94 Mon Sep 17 00:00:00 2001 From: Andreas Eversberg Date: Sat, 25 Aug 2018 10:25:25 +0200 Subject: [PATCH] SDR: Add presets for LimeSDR-Mini --- docs/sdr.html | 27 ++++++++++++++++++++++++--- src/libmobile/main_mobile.c | 19 +++++++++++++++++++ src/radio/main.c | 18 ++++++++++++++++++ src/tv/main.c | 17 +++++++++++++++++ 4 files changed, 78 insertions(+), 3 deletions(-) diff --git a/docs/sdr.html b/docs/sdr.html index 4cc3c2f..0552bdc 100644 --- a/docs/sdr.html +++ b/docs/sdr.html @@ -12,7 +12,7 @@ @@ -63,7 +63,7 @@ and so on...

-LimeSDR +LimeSDR and LimeSDR-Mini

@@ -76,7 +76,7 @@ In case of B-Netz, I use the following parameters: # bnetz --sdr-soapy \ --sdr-rx-antenna LNAL \ - --sdr-rx-gain 30 \ + --sdr-rx-gain 25 \ --sdr-tx-gain 30 \ --sdr-samplerate 5000000 \ --sdr-bandwidth 15000000 \ @@ -109,6 +109,27 @@ But still you can add any SDR option afterwards to set or modify them. +

+LimeSDR-Mini does need some different antenna setting: +

+ +
+	...
+	--sdr-rx-antenna LNAW \
+	--sdr-tx-antenna BAND2 \
+	...
+
+ +

+As above, you can have these options pre-set by just a single option: --limesdr-mini +

+ +
+
+# bnetz --limesdr-mini -k 17
+
+
+

Importaint: Select your RX antenna input!

diff --git a/src/libmobile/main_mobile.c b/src/libmobile/main_mobile.c index 9ec11f6..97d6f34 100644 --- a/src/libmobile/main_mobile.c +++ b/src/libmobile/main_mobile.c @@ -154,6 +154,8 @@ void main_mobile_print_help(const char *arg0, const char *ext_usage) #ifdef HAVE_SDR printf(" --limesdr\n"); printf(" Auto-select several required options for LimeSDR\n"); + printf(" --limesdr-mini\n"); + printf(" Auto-select several required options for LimeSDR Mini\n"); sdr_config_print_help(); #endif printf("\nNetwork specific options:\n"); @@ -180,6 +182,7 @@ void main_mobile_print_hotkeys(void) #define OPT_CALL_SAMPLERATE 1005 #define OPT_MNCC_NAME 1006 #define OPT_LIMESDR 1100 +#define OPT_LIMESDR_MINI 1101 void main_mobile_add_options(void) { @@ -209,6 +212,7 @@ void main_mobile_add_options(void) option_add(OPT_READ_TX_WAVE, "read-tx-wave", 1); #ifdef HAVE_SDR option_add(OPT_LIMESDR, "limesdr", 0); + option_add(OPT_LIMESDR_MINI, "limesdr-mini", 0); sdr_config_add_options(); #endif }; @@ -330,6 +334,21 @@ int main_mobile_handle_options(int short_option, int argi, char **argv) int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); return options_command_line(argc_lime, argv_lime, main_mobile_handle_options); } + case OPT_LIMESDR_MINI: + { + char *argv_lime[] = { argv[0], + "--sdr-soapy", + "--sdr-rx-antenna", "LNAW", + "--sdr-tx-antenna", "BAND2", + "--sdr-rx-gain", "25", + "--sdr-tx-gain", "30", + "--sdr-samplerate", "5000000", + "--sdr-bandwidth", "15000000", + "-s", "200000", + }; + int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); + return options_command_line(argc_lime, argv_lime, main_mobile_handle_options); + } #endif default: #ifdef HAVE_SDR diff --git a/src/radio/main.c b/src/radio/main.c index dee07a4..1c399c5 100644 --- a/src/radio/main.c +++ b/src/radio/main.c @@ -142,10 +142,13 @@ void print_help(const char *arg0) printf(" It uses the 'Pilot-tone' system.\n"); printf(" --limesdr\n"); printf(" Auto-select several required options for LimeSDR\n"); + printf(" --limesdr-mini\n"); + printf(" Auto-select several required options for LimeSDR Mini\n"); sdr_config_print_help(); } #define OPT_LIMESDR 1100 +#define OPT_LIMESDR_MINI 1101 static void add_options(void) { @@ -164,6 +167,7 @@ static void add_options(void) option_add('E', "emphasis", 1); option_add('S', "stereo", 0); option_add(OPT_LIMESDR, "limesdr", 0); + option_add(OPT_LIMESDR_MINI, "limesdr-mini", 0); sdr_config_add_options(); } @@ -245,6 +249,20 @@ static int handle_options(int short_option, int argi, char **argv) int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); return options_command_line(argc_lime, argv_lime, handle_options); } + case OPT_LIMESDR_MINI: + { + char *argv_lime[] = { argv[0], + "--sdr-soapy", + "--sdr-rx-antenna", "LNAW", + "--sdr-tx-antenna", "BAND2", + "--sdr-rx-gain", "50", + "--sdr-tx-gain", "50", + "--sdr-samplerate", "5000000", + "--sdr-bandwidth", "15000000", + }; + int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); + return options_command_line(argc_lime, argv_lime, handle_options); + } default: return sdr_config_handle_options(short_option, argi, argv); } diff --git a/src/tv/main.c b/src/tv/main.c index 1cae1d8..f632a24 100644 --- a/src/tv/main.c +++ b/src/tv/main.c @@ -121,11 +121,14 @@ void print_help(const char *arg0) #ifdef HAVE_SDR printf(" --limesdr\n"); printf(" Auto-select several required options for LimeSDR\n"); + printf(" --limesdr-mini\n"); + printf(" Auto-select several required options for LimeSDR Mini\n"); sdr_config_print_help(); #endif } #define OPT_LIMESDR 1100 +#define OPT_LIMESDR_MINI 1101 static void add_options(void) { @@ -143,6 +146,7 @@ static void add_options(void) option_add('I', "station-id", 1); #ifdef HAVE_SDR option_add(OPT_LIMESDR, "limesdr", 0); + option_add(OPT_LIMESDR_MINI, "limesdr-mini", 0); sdr_config_add_options(); #endif } @@ -211,6 +215,19 @@ static int handle_options(int short_option, int argi, char **argv) int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); return options_command_line(argc_lime, argv_lime, handle_options); } + case OPT_LIMESDR_MINI: + { + char *argv_lime[] = { argv[0], + "--sdr-soapy", + "--sdr-tx-antenna", "BAND2", + "--sdr-tx-gain", "50", + "--sdr-lo-offset", "-3000000", + "--sdr-bandwidth", "60000000", + "-s", "13750000", + }; + int argc_lime = sizeof(argv_lime) / sizeof (*argv_lime); + return options_command_line(argc_lime, argv_lime, handle_options); + } #endif default: #ifdef HAVE_SDR