From de84dc71e836141af566656863d7d1115f7d52a1 Mon Sep 17 00:00:00 2001 From: Jakob Ketterl Date: Sat, 11 May 2019 13:25:48 +0200 Subject: [PATCH] trim the config --- config_webrx.py | 78 ++++--------------------------------------------- openwebrx.py | 14 +++++---- owrx/config.py | 13 +++++++++ 3 files changed, 27 insertions(+), 78 deletions(-) diff --git a/config_webrx.py b/config_webrx.py index 434204e..ef39746 100644 --- a/config_webrx.py +++ b/config_webrx.py @@ -36,7 +36,6 @@ config_webrx: configuration options for OpenWebRX # ==== Server settings ==== web_port=8073 -server_hostname="localhost" # If this contains an incorrect value, the web UI may freeze on load (it can't open websocket) max_clients=20 # ==== Web GUI configuration ==== @@ -65,6 +64,7 @@ Website: http://localhost sdrhu_key = "" # 3. Set this setting to True to enable listing: sdrhu_public_listing = False +server_hostname="localhost" # ==== DSP/RX settings ==== fft_fps=9 @@ -77,8 +77,6 @@ fft_compression="adpcm" #valid values: "adpcm", "none" digimodes_enable=True #Decoding digimodes come with higher CPU usage. digimodes_fft_size=1024 -start_rtl_thread=True - """ Note: if you experience audio underruns while CPU usage is 100%, you can: - decrease `samp_rate`, @@ -95,16 +93,16 @@ Note: if you experience audio underruns while CPU usage is 100%, you can: # Check here: https://github.com/simonyiszk/openwebrx/wiki#guides-for-receiver-hardware-support # ################################################################################################# -# You can use other SDR hardware as well, by giving your own command that outputs the I/Q samples... Some examples of configuration are available here (default is RTL-SDR): - -# valid: "rtl_sdr", "sdrplay", "hackrf" -#rtl_type = "sdrplay" +# Currently supported types of sdr receivers: "rtl_sdr", "sdrplay", "hackrf" sdrs = { "rtlsdr": { "name": "RTL-SDR USB Stick", "type": "rtl_sdr", "ppm": 0, + # you can change this if you use an upconverter. formula is: + # shown_center_freq = center_freq + lfo_offset + # "lfo_offset": 0, "profiles": { "70cm": { "name": "70cm Relais", @@ -163,68 +161,14 @@ sdrs = { } } }, + # this one is just here to test feature detection "test": { "type": "test" } } -# >> RTL-SDR via rtl_sdr -#start_rtl_command="rtl_sdr -s {samp_rate} -f {center_freq} -p {ppm} -g {rf_gain} -".format(rf_gain=rf_gain, center_freq=center_freq, samp_rate=samp_rate, ppm=ppm) -#format_conversion="csdr convert_u8_f" - -#lna_gain=8 -#rf_amp=1 -#start_rtl_command="hackrf_transfer -s {samp_rate} -f {center_freq} -g {rf_gain} -l{lna_gain} -a{rf_amp} -r-".format(rf_gain=rf_gain, center_freq=center_freq, samp_rate=samp_rate, ppm=ppm, rf_amp=rf_amp, lna_gain=lna_gain) -#format_conversion="csdr convert_s8_f" -""" -To use a HackRF, compile the HackRF host tools from its "stdout" branch: - git clone https://github.com/mossmann/hackrf/ - cd hackrf - git fetch - git checkout origin/stdout - cd host - mkdir build - cd build - cmake .. -DINSTALL_UDEV_RULES=ON - make - sudo make install -""" - -# >> Sound card SDR (needs ALSA) -# I did not have the chance to properly test it. -#samp_rate = 96000 -#start_rtl_command="arecord -f S16_LE -r {samp_rate} -c2 -".format(samp_rate=samp_rate) -#format_conversion="csdr convert_s16_f | csdr gain_ff 30" - -# >> /dev/urandom test signal source -# samp_rate = 2400000 -# start_rtl_command="cat /dev/urandom | (pv -qL `python -c 'print int({samp_rate} * 2.2)'` 2>&1)".format(rf_gain=rf_gain, center_freq=center_freq, samp_rate=samp_rate) -# format_conversion="csdr convert_u8_f" - -# >> Pre-recorded raw I/Q file as signal source -# You will have to correctly specify: samp_rate, center_freq, format_conversion in order to correctly play an I/Q file. -#start_rtl_command="(while true; do cat my_iq_file.raw; done) | csdr flowcontrol {sr} 20 ".format(sr=samp_rate*2*1.05) -#format_conversion="csdr convert_u8_f" - -#>> The rx_sdr command works with a variety of SDR harware: RTL-SDR, HackRF, SDRplay, UHD, Airspy, Red Pitaya, audio devices, etc. -# It will auto-detect your SDR hardware if the following tools are installed: -# * the vendor provided driver and library, -# * the vendor-specific SoapySDR wrapper library, -# * and SoapySDR itself. -# Check out this article on the OpenWebRX Wiki: https://github.com/simonyiszk/openwebrx/wiki/Using-rx_tools-with-OpenWebRX/ -#start_rtl_command="rx_sdr -F CF32 -s {samp_rate} -f {center_freq} -p {ppm} -g {rf_gain} -".format(rf_gain=rf_gain, center_freq=center_freq, samp_rate=samp_rate, ppm=ppm) -#format_conversion="" - -# >> gr-osmosdr signal source using GNU Radio (follow this guide: https://github.com/simonyiszk/openwebrx/wiki/Using-GrOsmoSDR-as-signal-source) -#start_rtl_command="cat /tmp/osmocom_fifo" -#format_conversion="" - # ==== Misc settings ==== -# you can change this if you use an upconverter. formula is: -# shown_center_freq = center_freq + lfo_offset -lfo_offset = 0 - client_audio_buffer_size = 5 #increasing client_audio_buffer_size will: # - also increase the latency @@ -232,8 +176,6 @@ client_audio_buffer_size = 5 iq_port_range = [4950, 4960] #TCP port for range ncat to listen on. It will send I/Q data over its connections, for internal use in OpenWebRX. It is only accessible from the localhost by default. -#access_log = "~/openwebrx_access.log" - # ==== Color themes ==== #A guide is available to help you set these values: https://github.com/simonyiszk/openwebrx/wiki/Calibrating-waterfall-display-levels @@ -270,11 +212,3 @@ csdr_print_bufsizes = False # This prints the buffer sizes used for csdr proces csdr_through = False # Setting this True will print out how much data is going into the DSP chains. nmux_memory = 50 #in megabytes. This sets the approximate size of the circular buffer used by nmux. - -#Look up external IP address automatically from icanhazip.com, and use it as [server_hostname] -""" -print "[openwebrx-config] Detecting external IP address..." -import urllib2 -server_hostname=urllib2.urlopen("http://icanhazip.com").read()[:-1] -print "[openwebrx-config] External IP address detected:", server_hostname -""" diff --git a/openwebrx.py b/openwebrx.py index 113dfaf..07df451 100644 --- a/openwebrx.py +++ b/openwebrx.py @@ -13,12 +13,14 @@ class ThreadedHttpServer(ThreadingMixIn, HTTPServer): def main(): - print() - print("OpenWebRX - Open Source SDR Web App for Everyone! | for license see LICENSE file in the package") - print("_________________________________________________________________________________________________") - print() - print("Author contact info: Andras Retzler, HA7ILM ") - print() + print(""" + +OpenWebRX - Open Source SDR Web App for Everyone! | for license see LICENSE file in the package +_________________________________________________________________________________________________ + +Author contact info: Andras Retzler, HA7ILM + + """) cfg = __import__("config_webrx") pm = PropertyManager.getSharedInstance() diff --git a/owrx/config.py b/owrx/config.py index 7533b34..cc84c26 100644 --- a/owrx/config.py +++ b/owrx/config.py @@ -131,6 +131,19 @@ class FeatureDetector(object): def has_rx_tools(self): return os.system("rx_sdr --help 2> /dev/null") != 32512 + """ + To use a HackRF, compile the HackRF host tools from its "stdout" branch: + git clone https://github.com/mossmann/hackrf/ + cd hackrf + git fetch + git checkout origin/stdout + cd host + mkdir build + cd build + cmake .. -DINSTALL_UDEV_RULES=ON + make + sudo make install + """ def has_hackrf_transfer(self): # TODO i don't have a hackrf, so somebody doublecheck this. # TODO also check if it has the stdout feature