Commit Graph

424 Commits

Author SHA1 Message Date
Jakob Ketterl
70347d1ef9 use automatic ports unless explicitly configured 2019-12-31 15:24:11 +01:00
Jakob Ketterl
092a2e5ca0 handle soapy not being installed at all, references #42 2019-12-30 16:38:16 +01:00
Jakob Ketterl
d0d0ba6ba7 initialize dict in code to avoid wrong references 2019-12-29 17:34:58 +01:00
Jakob Ketterl
2bb2f65776 fix ppm parameter 2019-12-28 23:05:59 +01:00
Jakob Ketterl
86ceb7a274 use lists for all command stuff 2019-12-28 16:44:45 +01:00
Jakob Ketterl
489d2390c8 fix name 2019-12-28 15:56:36 +01:00
Jakob Ketterl
1a3a5b43a0 reformat with black 2019-12-28 01:24:07 +01:00
Jakob Ketterl
2c4c88e30d move this over so a normal soapy sdr source 2019-12-28 00:38:36 +01:00
Jakob Ketterl
f92c49cee6 fix overlooked bias tee in airspy 2019-12-28 00:33:27 +01:00
Jakob Ketterl
8371d3b67a refactor sources to be more flexible 2019-12-28 00:26:45 +01:00
Jakob Ketterl
ca4d9771cc soapy driver detection; clean up docs 2019-12-27 11:37:12 +01:00
Jakob Ketterl
11cfca5211 send a log message to the client when a device fails 2019-12-23 21:18:40 +01:00
Jakob Ketterl
46b5e9034f attempt to select new sdr on failure 2019-12-23 21:18:40 +01:00
Jakob Ketterl
4d0d316fdd improve sdr failure detection 2019-12-21 23:29:56 +01:00
Jakob Ketterl
b5c5bcb9f1 fix readline problem 2019-12-21 21:17:19 +01:00
Jakob Ketterl
8fe9bf6292 attempt better wsjt decoder handling 2019-12-21 21:08:44 +01:00
Jakob Ketterl
292fe80acf break apart the ever-growing owrx/source.py 2019-12-21 20:58:28 +01:00
Jakob Ketterl
10de50d251 remove old sources, make the connector-based ones default 2019-12-21 19:24:14 +01:00
Jakob Ketterl
e1d2ed8867 add fifisdr support (no frequency tuning) 2019-12-19 21:37:19 +01:00
Jakob Ketterl
0e8116b743 handle errors in json files 2019-12-15 17:44:31 +01:00
Jakob Ketterl
ef1435cef7 rtltcp_compat is now a flag; expose through config 2019-12-15 16:33:07 +01:00
Jakob Ketterl
1a092a1e24 remove debug message 2019-12-08 22:13:57 +01:00
Jakob Ketterl
57a61f0c40 close connection when queue overflows 2019-12-08 21:11:36 +01:00
Jakob Ketterl
5c8da76d9a move bands and bookmarks to the config, too 2019-12-08 21:00:01 +01:00
Jakob Ketterl
7a6d021e18 switch file loading to pkg_resources 2019-12-08 20:27:58 +01:00
Jakob Ketterl
9164a3ed3a restructure project for packaging 2019-12-08 17:15:48 +01:00
Jakob Ketterl
37086bc6c7 debian build (first take) 2019-12-08 14:02:09 +01:00
Jakob Ketterl
1d1851dc76 add airspyhf support 2019-12-06 11:39:23 +01:00
Jakob Ketterl
c8ddb121d0 simplify command execution 2019-12-05 21:07:56 +01:00
Jakob Ketterl
ba5613cf62 fix quoting 2019-12-05 20:57:03 +01:00
Jakob Ketterl
af4acd5623 parse device queries manually, since they are not x-www-urlencoded 2019-12-05 20:53:27 +01:00
Jakob Ketterl
19eb5c73e7 pre-filter soapy devices by driver 2019-12-05 19:51:55 +01:00
Jakob Ketterl
90d990bdfb add depencency for sox 2019-12-01 15:42:50 +01:00
Jakob Ketterl
11c2c8afe3 limit multiprocessing queue to avoid memory leak on failing connections 2019-11-26 20:13:04 +01:00
Jakob Ketterl
fe39c2712d keep the output_rate on sdr change 2019-11-26 20:13:04 +01:00
Jakob Ketterl
53de54120e only specify device strings when configured 2019-11-24 20:34:51 +01:00
Jakob Ketterl
481918ab5b better profile switching for the gui 2019-11-23 17:22:20 +01:00
Jakob Ketterl
b27caf2405 allow initial_squelch_level to be set per profile 2019-11-23 16:56:29 +01:00
Jakob Ketterl
9246500c95 run black 2019-11-23 01:12:21 +01:00
Jakob Ketterl
98901ac668 add pskreporter dupe check and stats 2019-11-22 17:16:40 +01:00
Jakob Ketterl
9f710cb70e fix for lfo_offset = None 2019-11-21 17:19:51 +01:00
root
dab62a04df fix offset switching 2019-11-21 16:07:20 +01:00
Jakob Ketterl
de51e266f6 add airspy source; fix offset tuning 2019-11-21 15:31:37 +01:00
root
5375580104 add device handling for rtl 2019-11-20 11:37:06 +01:00
Jakob Ketterl
964d9e873d add iq swapping capability 2019-11-19 14:03:32 +01:00
Jakob Ketterl
a9b99fa0ff introduce connector source for sdrplay 2019-11-17 20:52:16 +01:00
Jakob Ketterl
6619a1b4a6 the ServiceHandler is fully passive 2019-11-16 15:40:12 +01:00
Jakob Ketterl
a36f106c72 add source "busy state" to improve background scheduling 2019-11-15 23:05:52 +01:00
Jakob Ketterl
097f8a2b82 refactor event system 2019-11-15 22:13:00 +01:00
Jakob Ketterl
bcbb911b24 restore airspy feature test 2019-11-15 19:36:07 +01:00
Jakob Ketterl
f18efb2344 use Popen for feature detection to be able to take control of the
working directory
2019-11-14 22:13:02 +01:00
Jakob Ketterl
367bf666fc listen for frequency changes in the scheduler, too 2019-11-13 19:50:00 +01:00
Jakob Ketterl
7489a3bb9d try to improve memory footprint by rebuilding map dictionary in
intervals
2019-11-13 18:01:01 +01:00
Jakob Ketterl
2a6c7863b1 improve control socket handling 2019-11-12 15:57:10 +01:00
Jakob Ketterl
6ba74a0c30 add ppm 2019-11-11 20:35:50 +01:00
Jakob Ketterl
ada94f69c3 new modificitions for owrx_connector support 2019-11-11 18:07:14 +01:00
Jakob Ketterl
95253e40bd organize timers and threads to get proper shutdown 2019-10-31 22:24:31 +01:00
Jakob Ketterl
af1a99c130 prevent deadlocks by shutting down services in correct order 2019-10-31 19:13:33 +01:00
Jakob Ketterl
a24cb3e04a shutdown services properly 2019-10-27 12:16:17 +01:00
Jakob Ketterl
c7eb5c430c perform binary decoding on the server side 2019-10-25 21:09:31 +02:00
Jakob Ketterl
eb29d0ac99 protect websocket handling from any exceptions 2019-10-21 22:08:37 +02:00
Jakob Ketterl
13d7686258 refactor all the audio stuff into classes and a separate file 2019-10-20 18:53:23 +02:00
Jakob Ketterl
0b2c457030 kill client-side early rebuffering, improving the latency 2019-10-18 21:13:48 +02:00
Jakob Ketterl
de179d070d this is not theoretical any more 2019-10-13 18:28:58 +02:00
Jakob Ketterl
f45857f79b don't use the resampler if the optimization says so 2019-10-13 18:25:32 +02:00
Jakob Ketterl
eda556ef03 prevent start-up of services if requirements are not fulfilled.
closes #4
2019-10-13 17:51:00 +02:00
Jakob Ketterl
ea67340cab display message when sdr unavailable 2019-10-13 14:17:32 +02:00
Jakob Ketterl
70d8fe82b3 send failure message to client 2019-10-12 20:46:32 +02:00
Jakob Ketterl
fce8c294d3 first work at detecting failed sdr devices 2019-10-12 20:19:34 +02:00
Jakob Ketterl
f9f50e734f improved websocket handling 2019-10-11 12:08:43 +02:00
d9394
db663fe134
Update controllers.py
fix a bug with reading template file
2019-10-06 16:05:30 +08:00
Jakob Ketterl
b80fd9c023 update profile dropdown box on changes 2019-10-04 22:01:07 +02:00
Jakob Ketterl
e9f9bbb9c0 replace receiver_qra setting with locator calculation 2019-10-03 18:10:46 +02:00
Jakob Ketterl
2025ccb366 catch more generic OSError 2019-10-03 00:58:27 +02:00
Jakob Ketterl
630a542ed6 better websocket header handling 2019-10-02 11:28:41 +02:00
Jakob Ketterl
455001a759 protect pskreporter upload loop 2019-09-28 03:06:34 +02:00
Jakob Ketterl
cc98c94b2b send bookmarks to client 2019-09-28 00:53:58 +02:00
Jakob Ketterl
00febdf255 implement all methods for consistency 2019-09-28 00:27:42 +02:00
Jakob Ketterl
cbc7b73b1d hand over message handling after initial handshake instead of delegating 2019-09-28 00:25:36 +02:00
Jakob Ketterl
42c59a3aa0 fft needs the multiprocessing send, too 2019-09-27 23:29:22 +02:00
Jakob Ketterl
5f703a043b fix ping race condition 2019-09-27 23:28:43 +02:00
Jakob Ketterl
76fe11741a add ping / pong to keep the websockets running 2019-09-26 22:57:10 +02:00
Jakob Ketterl
6cb7e65231 differentiate between None and empty return 2019-09-26 00:24:55 +01:00
Jakob Ketterl
6911ca407e code format 2019-09-25 00:47:34 +02:00
Jakob Ketterl
68fbc436f2 fix length problem 2019-09-25 00:36:40 +02:00
Jakob Ketterl
ecb754ab29 disable reporting if not set in config 2019-09-25 00:36:22 +02:00
Jakob Ketterl
41bd018191 determine locator from gps coordinates 2019-09-25 00:35:57 +02:00
Jakob Ketterl
45479b9f65 Merge branch 'develop' into pskreporter 2019-09-24 21:43:00 +02:00
Jakob Ketterl
a68ba01320 handle socket timeouts 2019-09-24 21:42:41 +02:00
Jakob Ketterl
ba03243527 fix date 2019-09-24 21:42:00 +02:00
Jakob Ketterl
22f4504629 set random to be at least 5 minutes 2019-09-24 21:41:31 +02:00
Jakob Ketterl
bf59ed34cf no more conditional 2019-09-23 23:53:22 +02:00
Jakob Ketterl
d8bc2cab2e actual upload 2019-09-23 23:47:12 +02:00
Jakob Ketterl
f8dcff788b build valid packets (hopefully) 2019-09-23 22:45:55 +02:00
Jakob Ketterl
4be34e4dc1 integrate pskreporter scheduling (no upload yet) 2019-09-23 18:33:52 +02:00
Jakob Ketterl
b1742dafc2 incomplete implementation to extend a callsign location 2019-09-23 16:51:38 +02:00
Jakob Ketterl
ae87185ad0 run the formatter once more 2019-09-23 03:15:24 +02:00
Jakob Ketterl
72f92a1c2b use events instead of simple sleep for clean shutdown 2019-09-23 03:06:51 +02:00
Jakob Ketterl
8b9121a5c1 tone down http logging 2019-09-22 20:51:33 +02:00
Jakob Ketterl
cfb4208db2 improved api 2019-09-22 13:16:24 +02:00
Jakob Ketterl
52afe3fb02 tone down wsjt logging 2019-09-22 12:57:59 +02:00
Jakob Ketterl
57975b6f96 move connection tracking to all websockets 2019-09-22 12:57:13 +02:00
Jakob Ketterl
b4ffc6e2f0 replace os pipe with multiprocessing (seems to work better) 2019-09-22 12:56:35 +02:00
Jakob Ketterl
1ed69de5b0 un-couple messaging between connections; use non-blocking io 2019-09-21 22:10:16 +02:00
Jakob Ketterl
6ec85aa349 don't start up unnecesserily 2019-09-21 15:24:06 +02:00
Jakob Ketterl
671509df3b fix variable name 2019-09-21 15:19:10 +02:00
Jakob Ketterl
2edeffb761 close websocket connections in an improved way 2019-09-21 13:49:37 +02:00
Jakob Ketterl
ecbae5af2d implement icon rotation 2019-09-19 02:25:32 +02:00
Jakob Ketterl
996422ff4b show aprs symbols in decoding list, too 2019-09-19 00:18:51 +02:00
Jakob Ketterl
3e8e0c9224 first work on custom aprs icons 2019-09-18 18:50:48 +02:00
Jakob Ketterl
c6c4012a36 add aprs symbols to http server 2019-09-18 17:22:35 +02:00
Jakob Ketterl
30512e347a fix more threading issues; add users metric 2019-09-18 15:40:23 +02:00
Jakob Ketterl
6f983ccb6b synchronize scheduler access 2019-09-18 01:46:31 +02:00
Jakob Ketterl
3814767e28 count errors 2019-09-18 01:46:09 +02:00
Jakob Ketterl
243e73064a add band information to ysf locations 2019-09-17 18:44:37 +02:00
Jakob Ketterl
8df4f9ce52 add the ability to schedule profiles to be used when sources are idle 2019-09-16 00:31:35 +02:00
Jakob Ketterl
b0b2df5422 no need for shared instances here 2019-09-15 21:10:30 +02:00
Jakob Ketterl
5b6edd110d wsjt decoding depth configuration 2019-09-15 16:37:12 +02:00
Jakob Ketterl
392c226cbe overflow metrics 2019-09-15 12:23:35 +02:00
Jakob Ketterl
7689d1a2e2 narrow bandpass specifically for wspr 2019-09-15 12:23:11 +02:00
Jakob Ketterl
98f1545fca code format 2019-09-13 23:03:05 +02:00
Jakob Ketterl
311f22f6ba flag services (avoid connecting to aprs network twice) 2019-09-13 22:28:17 +02:00
Jakob Ketterl
be05b54053 jt65 seems very prone to false decodes 2019-09-13 20:58:37 +02:00
Jakob Ketterl
6ff55e1279 queue in / out stats 2019-09-13 00:16:36 +02:00
Jakob Ketterl
338a19373c count aprs decodes, too 2019-09-12 23:23:50 +02:00
Jakob Ketterl
bc5b16b5e3 rewire the metrics; make queue length metric available 2019-09-12 22:50:29 +02:00
Jakob Ketterl
a11875145b make wsjt queue configurable 2019-09-12 15:32:54 +02:00
Jakob Ketterl
25a1d06dcb Merge branch 'develop' into packet 2019-09-11 01:03:12 +02:00
Jakob Ketterl
d87e5da75c attempt to reduce cpu usage by pre-selecting parts of the spectrum with
resamplers
2019-09-11 00:30:14 +02:00
Jakob Ketterl
aac618bfee fix for python 3.5 2019-09-02 16:20:49 +01:00
Jakob Ketterl
2dcdad3a49 fix message parsing range 2019-08-28 22:09:52 +02:00
Jakob Ketterl
db8d4cd3fe display items and objects on the map 2019-08-28 22:01:01 +02:00
Jakob Ketterl
de22169ea8 implement item and object parsing 2019-08-28 21:56:50 +02:00
Jakob Ketterl
b24e56803c avoid overriding weather dict keys 2019-08-27 23:52:51 +02:00
Jakob Ketterl
5530c96f8e fix message offsets 2019-08-27 23:32:21 +02:00
Jakob Ketterl
1d8fea891a additional types; parse messages 2019-08-27 23:13:26 +02:00
Jakob Ketterl
707fcdb1ab convert fahrenheit to celsius 2019-08-27 11:42:48 +02:00
Jakob Ketterl
1a2f6b4970 improve weather decoding 2019-08-27 11:32:50 +02:00
Jakob Ketterl
4409a369fa implement weather report parsing 2019-08-26 23:43:08 +02:00
Jakob Ketterl
272c305ec2 handle exceptions that may occur when parsing strings to numbers 2019-08-26 13:24:23 +02:00
Jakob Ketterl
a81c5f44a2 improve thirtparty header parsing 2019-08-26 11:41:22 +02:00
Jakob Ketterl
2a09462f6f first work on the thirdparty header 2019-08-26 00:10:43 +02:00
Jakob Ketterl
5cc67aba15 handle execptions during decode to avoid worker drain 2019-08-23 22:32:46 +02:00
Jakob Ketterl
fadcb9b43f handle a full queue 2019-08-22 21:24:36 +02:00
Jakob Ketterl
24d134ad6c try to avoid stressing out the cpu by using a proper queue 2019-08-22 21:16:43 +02:00
Jakob Ketterl
faaef9d9f8 let's be nice 2019-08-22 20:51:36 +02:00
Jakob Ketterl
c5cc364918 filters don't seem to work 2019-08-22 20:51:09 +02:00
Jakob Ketterl
379251d29d filter smallest possible to avoid traffic from the network 2019-08-18 21:41:26 +02:00
Jakob Ketterl
94533e277c improve config 2019-08-18 01:39:23 +02:00
Jakob Ketterl
73102053dc code formatting 2019-08-18 00:16:08 +02:00