最後活躍 1 month ago

OpenWebRX at https://websdr.lucasteske.dev/

bands.json 原始檔案
1[
2 {
3 "name": "160m",
4 "lower_bound": 1810000,
5 "upper_bound": 2000000,
6 "frequencies": {
7 "bpsk31": 1838000,
8 "ft8": 1840000,
9 "wspr": 1836600,
10 "jt65": 1838000,
11 "jt9": 1839000,
12 "js8": 1842000
13 }
14 },
15 {
16 "name": "80m",
17 "lower_bound": 3500000,
18 "upper_bound": 3800000,
19 "frequencies": {
20 "bpsk31": 3580000,
21 "ft8": 3573000,
22 "wspr": 3592600,
23 "jt65": 3570000,
24 "jt9": 3572000,
25 "ft4": [3568000, 3575000],
26 "js8": 3578000
27 }
28 },
29 {
30 "name": "60m",
31 "lower_bound": 5351500,
32 "upper_bound": 5366500,
33 "frequencies": {
34 "ft8": 5357000,
35 "wspr": 5364700
36 }
37 },
38 {
39 "name": "40m",
40 "lower_bound": 7000000,
41 "upper_bound": 7200000,
42 "frequencies": {
43 "bpsk31": 7040000,
44 "ft8": 7074000,
45 "wspr": 7038600,
46 "jt65": 7076000,
47 "jt9": 7078000,
48 "ft4": 7047500,
49 "js8": 7078000
50 }
51 },
52 {
53 "name": "30m",
54 "lower_bound": 10100000,
55 "upper_bound": 10150000,
56 "frequencies": {
57 "bpsk31": 10141000,
58 "ft8": 10136000,
59 "wspr": 10138700,
60 "jt65": 10138000,
61 "jt9": 10140000,
62 "ft4": 10140000,
63 "js8": 10130000
64 }
65 },
66 {
67 "name": "20m",
68 "lower_bound": 14000000,
69 "upper_bound": 14350000,
70 "frequencies": {
71 "bpsk31": 14070000,
72 "ft8": 14074000,
73 "wspr": 14095600,
74 "jt65": 14076000,
75 "jt9": 14078000,
76 "ft4": 14080000,
77 "js8": 14078000
78 }
79 },
80 {
81 "name": "17m",
82 "lower_bound": 18068000,
83 "upper_bound": 18168000,
84 "frequencies": {
85 "bpsk31": 18098000,
86 "ft8": 18100000,
87 "wspr": 18104600,
88 "jt65": 18102000,
89 "jt9": 18104000,
90 "ft4": 18104000,
91 "js8": 18104000
92 }
93 },
94 {
95 "name": "15m",
96 "lower_bound": 21000000,
97 "upper_bound": 21450000,
98 "frequencies": {
99 "bpsk31": 21070000,
100 "ft8": 21074000,
101 "wspr": 21094600,
102 "jt65": 21076000,
103 "jt9": 21078000,
104 "ft4": 21140000,
105 "js8": 21078000
106 }
107 },
108 {
109 "name": "12m",
110 "lower_bound": 24890000,
111 "upper_bound": 24990000,
112 "frequencies": {
113 "bpsk31": 24920000,
114 "ft8": 24915000,
115 "wspr": 24924600,
116 "jt65": 24917000,
117 "jt9": 24919000,
118 "ft4": 24919000,
119 "js8": 24922000
120 }
121 },
122 {
123 "name": "10m",
124 "lower_bound": 28000000,
125 "upper_bound": 29700000,
126 "frequencies": {
127 "bpsk31": [28070000, 28120000],
128 "ft8": 28074000,
129 "wspr": 28124600,
130 "jt65": 28076000,
131 "jt9": 28078000,
132 "ft4": 28180000,
133 "js8": 28078000
134 }
135 },
136 {
137 "name": "6m",
138 "lower_bound": 50030000,
139 "upper_bound": 51000000,
140 "frequencies": {
141 "bpsk31": 50305000,
142 "ft8": 50313000,
143 "wspr": 50293000,
144 "jt65": 50310000,
145 "jt9": 50312000,
146 "ft4": 50318000,
147 "js8": 50318000
148 }
149 },
150 {
151 "name": "4m",
152 "lower_bound": 70150000,
153 "upper_bound": 70200000,
154 "frequencies": {
155 "wspr": 70091000
156 }
157 },
158 {
159 "name": "2m",
160 "lower_bound": 144000000,
161 "upper_bound": 148000000,
162 "frequencies": {
163 "packet": 145570000
164 }
165 },
166 {
167 "name": "70cm",
168 "lower_bound": 430000000,
169 "upper_bound": 440000000,
170 "frequencies": {
171 "pocsag": 439987500
172 }
173 },
174 {
175 "name": "23cm",
176 "lower_bound": 1240000000,
177 "upper_bound": 1300000000
178 },
179 {
180 "name": "13cm",
181 "lower_bound": 2320000000,
182 "upper_bound": 2450000000
183 },
184 {
185 "name": "9cm",
186 "lower_bound": 3400000000,
187 "upper_bound": 3475000000
188 },
189 {
190 "name": "6cm",
191 "lower_bound": 5650000000,
192 "upper_bound": 5850000000
193 },
194 {
195 "name": "3cm",
196 "lower_bound": 10000000000,
197 "upper_bound": 10500000000
198 },
199 {
200 "name": "120m Broadcast",
201 "lower_bound": 2300000,
202 "upper_bound": 2495000
203 },
204 {
205 "name": "90m Broadcast",
206 "lower_bound": 3200000,
207 "upper_bound": 3400000
208 },
209 {
210 "name": "75m Broadcast",
211 "lower_bound": 3900000,
212 "upper_bound": 4000000
213 },
214 {
215 "name": "60m Broadcast",
216 "lower_bound": 4750000,
217 "upper_bound": 4995000
218 },
219 {
220 "name": "49m Broadcast",
221 "lower_bound": 5900000,
222 "upper_bound": 6200000
223 },
224 {
225 "name": "41m Broadcast",
226 "lower_bound": 7200000,
227 "upper_bound": 7450000
228 },
229 {
230 "name": "31m Broadcast",
231 "lower_bound": 9400000,
232 "upper_bound": 9900000
233 },
234 {
235 "name": "25m Broadcast",
236 "lower_bound": 11600000,
237 "upper_bound": 12100000
238 },
239 {
240 "name": "22m Broadcast",
241 "lower_bound": 13570000,
242 "upper_bound": 13870000
243 },
244 {
245 "name": "19m Broadcast",
246 "lower_bound": 15100000,
247 "upper_bound": 15830000
248 },
249 {
250 "name": "16m Broadcast",
251 "lower_bound": 17480000,
252 "upper_bound": 17900000
253 },
254 {
255 "name": "15m Broadcast",
256 "lower_bound": 18900000,
257 "upper_bound": 19020000
258 },
259 {
260 "name": "13m Broadcast",
261 "lower_bound": 21450000,
262 "upper_bound": 21850000
263 },
264 {
265 "name": "11m Broadcast",
266 "lower_bound": 25670000,
267 "upper_bound": 26100000
268 }
269]
270
This file can't be rendered. 查看完整檔案。
config_webrx.py 原始檔案
1# -*- coding: utf-8 -*-
2
3"""
4config_webrx: configuration options for OpenWebRX
5
6 This file is part of OpenWebRX,
7 an open-source SDR receiver software with a web UI.
8 Copyright (c) 2013-2015 by Andras Retzler <[email protected]>
9 Copyright (c) 2019-2020 by Jakob Ketterl <[email protected]>
10
11 This program is free software: you can redistribute it and/or modify
12 it under the terms of the GNU Affero General Public License as
13 published by the Free Software Foundation, either version 3 of the
14 License, or (at your option) any later version.
15
16 This program is distributed in the hope that it will be useful,
17 but WITHOUT ANY WARRANTY; without even the implied warranty of
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 GNU Affero General Public License for more details.
20
21 You should have received a copy of the GNU Affero General Public License
22 along with this program. If not, see <http://www.gnu.org/licenses/>.
23
24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
25
26 In addition, as a special exception, the copyright holders
27 state that config_rtl.py and config_webrx.py are not part of the
28 Corresponding Source defined in GNU AGPL version 3 section 1.
29
30 (It means that you do not have to redistribute config_rtl.py and
31 config_webrx.py if you make any changes to these two configuration files,
32 and use them for running your web service with OpenWebRX.)
33"""
34
35# configuration version. please only modify if you're able to perform the associated migration steps.
36version = 3
37
38# NOTE: you can find additional information about configuring OpenWebRX in the Wiki:
39# https://github.com/jketterl/openwebrx/wiki/Configuration-guide
40
41# ==== Server settings ====
42web_port = 8073
43max_clients = 20
44
45# ==== Web GUI configuration ====
46receiver_name = "PU2NVX"
47receiver_location = "São Paulo, Brasil"
48receiver_asl = 745
49receiver_admin = "[email protected]"
50receiver_gps = {"lat": -23.638, "lon": -46.645}
51photo_title = ""
52# photo_desc allows you to put pretty much any HTML you like into the receiver description.
53# The lines below should give you some examples of what's possible.
54#photo_desc = """
55#You can add your own background photo and receiver information.<br />
56#Receiver is operated by: <a href="mailto:openwebrx@localhost" target="_blank">Receiver Operator</a><br/>
57#Device: Receiver Device<br />
58#Antenna: Receiver Antenna<br />
59#Website: <a href="http://localhost" target="_blank">http://localhost</a>
60#"""
61
62# ==== Public receiver listings ====
63# You can publish your receiver on online receiver directories, like https://www.receiverbook.de
64# You will receive a receiver key from the directory that will authenticate you as the operator of this receiver.
65# Please note that you not share your receiver keys publicly since anyone that obtains your receiver key can take over
66# your public listing.
67# Your receiver keys should be placed into this array:
68receiver_keys = []
69# If you list your receiver on multiple sites, you can place all your keys into the array above, or you can append
70# keys to the arraylike this:
71# receiver_keys += ["my-receiver-key"]
72
73# If you're not sure, simply copy & paste the code you received from your listing site below this line:
74
75# ==== DSP/RX settings ====
76fft_fps = 15
77fft_size = 8192 # Should be power of 2
78fft_voverlap_factor = (
79 0.3 # If fft_voverlap_factor is above 0, multiple FFTs will be used for creating a line on the diagram.
80)
81
82audio_compression = "adpcm" # valid values: "adpcm", "none"
83fft_compression = "adpcm" # valid values: "adpcm", "none"
84
85# Tau setting for WFM (broadcast FM) deemphasis\
86# Quote from wikipedia https://en.wikipedia.org/wiki/FM_broadcasting#Pre-emphasis_and_de-emphasis
87# "In most of the world a 50 µs time constant is used. In the Americas and South Korea, 75 µs is used"
88# Enable one of the following lines, depending on your location:
89# wfm_deemphasis_tau = 75e-6 # for US and South Korea
90wfm_deemphasis_tau = 75e-6 # for the rest of the world
91
92digimodes_enable = True # Decoding digimodes come with higher CPU usage.
93digimodes_fft_size = 2048
94
95# determines the quality, and thus the cpu usage, for the ambe codec used by digital voice modes
96# if you're running on a Raspi (up to 3B+) you'll want to leave this on 1
97digital_voice_unvoiced_quality = 1
98# enables lookup of DMR ids using the radioid api
99digital_voice_dmr_id_lookup = True
100
101"""
102Note: if you experience audio underruns while CPU usage is 100%, you can:
103- decrease `samp_rate`,
104- set `fft_voverlap_factor` to 0,
105- decrease `fft_fps` and `fft_size`,
106- limit the number of users by decreasing `max_clients`.
107"""
108
109# ==== I/Q sources ====
110# (Uncomment the appropriate by removing # characters at the beginning of the corresponding lines.)
111
112###############################################################################
113# Is my SDR hardware supported? #
114# Check here: https://github.com/jketterl/openwebrx/wiki/Supported-Hardware #
115###############################################################################
116
117# Currently supported types of sdr receivers:
118# "rtl_sdr", "rtl_sdr_soapy", "sdrplay", "hackrf", "airspy", "airspyhf", "fifi_sdr",
119# "perseussdr", "lime_sdr", "pluto_sdr", "soapy_remote"
120#
121# In order to use rtl_sdr, you will need to install librtlsdr-dev and the connector.
122# In order to use sdrplay, airspy or airspyhf, you will need to install soapysdr, the corresponding driver, and the
123# connector.
124#
125# https://github.com/jketterl/owrx_connector
126#
127# In order to use Perseus HF you need to install the libperseus-sdr
128#
129# https://github.com/Microtelecom/libperseus-sdr
130#
131# and do the proper changes to the sdrs object below
132# (see also Wiki in https://github.com/jketterl/openwebrx/wiki/Sample-configuration-for-Perseus-HF-receiver).
133#
134
135sdrs = {
136 "lmstcp": {
137 "name": "LimeNET Micro",
138 "type": "rtl_tcp",
139 "ppm": 0,
140 "profiles": {
141 "144 MHz": {
142 "device": "00001000",
143 "remote": "10.10.5.191:1234",
144 "rtltcp_compat": True,
145 "always-on": True,
146 "name": "Banda 2M (144MHz)",
147 "center_freq": 146000000,
148 "rf_gain": 10,
149 "samp_rate": 4000000,
150 "start_freq": 144000000,
151 "start_mod": "nfm",
152 },
153 },
154 },
155}
156
157# ==== Color themes ====
158
159### google turbo colormap (see: https://ai.googleblog.com/2019/08/turbo-improved-rainbow-colormap-for.html)
160waterfall_colors = [0x30123b, 0x311542, 0x33184a, 0x341b51, 0x351e58, 0x36215f, 0x372466, 0x38266c, 0x392973, 0x3a2c79, 0x3b2f80, 0x3c3286, 0x3d358b, 0x3e3891, 0x3e3a97, 0x3f3d9c, 0x4040a2, 0x4043a7, 0x4146ac, 0x4248b1, 0x424bb6, 0x434eba, 0x4351bf, 0x4453c3, 0x4456c7, 0x4559cb, 0x455bcf, 0x455ed3, 0x4561d7, 0x4663da, 0x4666dd, 0x4669e1, 0x466be4, 0x466ee7, 0x4671e9, 0x4673ec, 0x4676ee, 0x4678f1, 0x467bf3, 0x467df5, 0x4680f7, 0x4682f9, 0x4685fa, 0x4587fc, 0x458afd, 0x448cfe, 0x448ffe, 0x4391ff, 0x4294ff, 0x4196ff, 0x3f99ff, 0x3e9bff, 0x3d9efe, 0x3ba1fd, 0x3aa3fd, 0x38a6fb, 0x36a8fa, 0x35abf9, 0x33adf7, 0x31b0f6, 0x2fb2f4, 0x2db5f2, 0x2cb7f0, 0x2ab9ee, 0x28bcec, 0x26beea, 0x25c0e7, 0x23c3e5, 0x21c5e2, 0x20c7e0, 0x1fc9dd, 0x1dccdb, 0x1cced8, 0x1bd0d5, 0x1ad2d3, 0x19d4d0, 0x18d6cd, 0x18d8cb, 0x18dac8, 0x17dbc5, 0x17ddc3, 0x17dfc0, 0x18e0be, 0x18e2bb, 0x19e3b9, 0x1ae5b7, 0x1be6b4, 0x1de8b2, 0x1ee9af, 0x20eaad, 0x22ecaa, 0x24eda7, 0x27eea4, 0x29efa1, 0x2cf09e, 0x2ff19b, 0x32f298, 0x35f394, 0x38f491, 0x3cf58e, 0x3ff68b, 0x43f787, 0x46f884, 0x4af980, 0x4efa7d, 0x51fa79, 0x55fb76, 0x59fc73, 0x5dfc6f, 0x61fd6c, 0x65fd69, 0x69fe65, 0x6dfe62, 0x71fe5f, 0x75ff5c, 0x79ff59, 0x7dff56, 0x80ff53, 0x84ff50, 0x88ff4e, 0x8bff4b, 0x8fff49, 0x92ff46, 0x96ff44, 0x99ff42, 0x9cfe40, 0x9ffe3e, 0xa2fd3d, 0xa4fd3b, 0xa7fc3a, 0xaafc39, 0xacfb38, 0xaffa37, 0xb1f936, 0xb4f835, 0xb7f835, 0xb9f634, 0xbcf534, 0xbff434, 0xc1f334, 0xc4f233, 0xc6f033, 0xc9ef34, 0xcbee34, 0xceec34, 0xd0eb34, 0xd2e934, 0xd5e835, 0xd7e635, 0xd9e435, 0xdbe236, 0xdde136, 0xe0df37, 0xe2dd37, 0xe4db38, 0xe6d938, 0xe7d738, 0xe9d539, 0xebd339, 0xedd139, 0xeecf3a, 0xf0cd3a, 0xf1cb3a, 0xf3c93a, 0xf4c73a, 0xf5c53a, 0xf7c33a, 0xf8c13a, 0xf9bf39, 0xfabd39, 0xfaba38, 0xfbb838, 0xfcb637, 0xfcb436, 0xfdb135, 0xfdaf35, 0xfeac34, 0xfea933, 0xfea732, 0xfea431, 0xffa12f, 0xff9e2e, 0xff9c2d, 0xff992c, 0xfe962b, 0xfe932a, 0xfe9028, 0xfe8d27, 0xfd8a26, 0xfd8724, 0xfc8423, 0xfc8122, 0xfb7e20, 0xfb7b1f, 0xfa781e, 0xf9751c, 0xf8721b, 0xf86f1a, 0xf76c19, 0xf66917, 0xf56616, 0xf46315, 0xf36014, 0xf25d13, 0xf05b11, 0xef5810, 0xee550f, 0xed530e, 0xeb500e, 0xea4e0d, 0xe94b0c, 0xe7490b, 0xe6470a, 0xe4450a, 0xe34209, 0xe14009, 0xdf3e08, 0xde3c07, 0xdc3a07, 0xda3806, 0xd83606, 0xd63405, 0xd43205, 0xd23105, 0xd02f04, 0xce2d04, 0xcc2b03, 0xca2903, 0xc82803, 0xc62602, 0xc32402, 0xc12302, 0xbf2102, 0xbc1f01, 0xba1e01, 0xb71c01, 0xb41b01, 0xb21901, 0xaf1801, 0xac1601, 0xaa1501, 0xa71401, 0xa41201, 0xa11101, 0x9e1001, 0x9b0f01, 0x980d01, 0x950c01, 0x920b01, 0x8e0a01, 0x8b0901, 0x880801, 0x850701, 0x810602, 0x7e0502, 0x7a0402]
161
162### original theme by teejez:
163#waterfall_colors = [0x000000, 0x0000FF, 0x00FFFF, 0x00FF00, 0xFFFF00, 0xFF0000, 0xFF00FF, 0xFFFFFF]
164
165### old theme by HA7ILM:
166#waterfall_colors = [0x000000, 0x2e6893, 0x69a5d0, 0x214b69, 0x9dc4e0, 0xfff775, 0xff8a8a, 0xb20000]
167# waterfall_min_level = -115 #in dB
168# waterfall_max_level = 0
169# waterfall_auto_level_margin = {"min": 20, "max": 30}
170##For the old colors, you might also want to set [fft_voverlap_factor] to 0.
171
172waterfall_min_level = -88 # in dB
173waterfall_max_level = -20
174waterfall_auto_level_margin = {"min": 3, "max": 10, "min_range": 50}
175
176# Note: When the auto waterfall level button is clicked, the following happens:
177# [waterfall_min_level] = [current_min_power_level] - [waterfall_auto_level_margin["min"]]
178# [waterfall_max_level] = [current_max_power_level] + [waterfall_auto_level_margin["max"]]
179#
180# ___|________________________________________|____________________________________|________________________________________|___> signal power
181# \_waterfall_auto_level_margin["min"]_/ |__ current_min_power_level | \_waterfall_auto_level_margin["max"]_/
182# current_max_power_level __|
183
184# === Experimental settings ===
185# Warning! The settings below are very experimental.
186csdr_dynamic_bufsize = False # This allows you to change the buffering mode of csdr.
187csdr_print_bufsizes = False # This prints the buffer sizes used for csdr processes.
188csdr_through = False # Setting this True will print out how much data is going into the DSP chains.
189
190nmux_memory = 50 # in megabytes. This sets the approximate size of the circular buffer used by nmux.
191
192google_maps_api_key = "--------"
193
194# how long should positions be visible on the map?
195# they will start fading out after half of that
196# in seconds; default: 2 hours
197map_position_retention_time = 2 * 60 * 60
198
199# decoder queue configuration
200# due to the nature of some operating modes (ft8, ft8, jt9, jt65, wspr and js8), the data is recorded for a given amount
201# of time (6 seconds up to 2 minutes) and decoded at the end. this can lead to very high peak loads.
202# to mitigate this, the recordings will be queued and processed in sequence.
203# the number of workers will limit the total amount of work (one worker will losely occupy one cpu / thread)
204decoding_queue_workers = 6
205# the maximum queue length will cause decodes to be dumped if the workers cannot keep up
206# if you are running background services, make sure this number is high enough to accept the task influx during peaks
207# i.e. this should be higher than the number of decoding services running at the same time
208decoding_queue_length = 10
209
210# wsjt decoding depth will allow more results, but will also consume more cpu
211wsjt_decoding_depth = 3
212# can also be set for each mode separately
213# jt65 seems to be somewhat prone to erroneous decodes, this setting handles that to some extent
214wsjt_decoding_depths = {"jt65": 1}
215
216# JS8 comes in different speeds: normal, slow, fast, turbo. This setting controls which ones are enabled.
217js8_enabled_profiles = ["normal", "slow"]
218# JS8 decoding depth; higher value will get more results, but will also consume more cpu
219js8_decoding_depth = 3
220
221temporary_directory = "/tmp/openwebrx"
222
223services_enabled = True
224services_decoders = ["ft8", "ft4", "wspr", "packet"]
225
226# === aprs igate settings ===
227# if you want to share your APRS decodes with the aprs network, configure these settings accordingly
228aprs_callsign = "PU2NVX"
229aprs_igate_enabled = True
230aprs_igate_server = "soam.aprs2.net"
231aprs_igate_password = "---------"
232# beacon uses the receiver_gps setting, so if you enable this, make sure the location is correct there
233aprs_igate_beacon = True
234
235# path to the aprs symbols repository (get it here: https://[email protected]/hessu/aprs-symbols)
236aprs_symbols_path = "/opt/aprs-symbols/png"
237
238# === PSK Reporter setting ===
239# enable this if you want to upload all ft8, ft4 etc spots to pskreporter.info
240# this also uses the receiver_gps setting from above, so make sure it contains a correct locator
241pskreporter_enabled = False
242pskreporter_callsign = "PU2NVX"
243
244# === Web admin settings ===
245# this feature is experimental at the moment. it should not be enabled on shared receivers since it allows remote
246# changes to the receiver settings. enable for testing in controlled environment only.
247webadmin_enabled = False
248