Commit graph

1373 commits

Author SHA1 Message Date
Jakob Ketterl 2477dc27b3 fix bookmark subscriptions 2023-05-23 19:57:27 +02:00
Jakob Ketterl ff50c0233a fix typo / wording 2023-05-15 20:50:08 +02:00
Jakob Ketterl 542f5db58e improve config version check 2023-05-15 19:00:17 +02:00
Jakob Ketterl b8808ac8b0 improve the receiver keys input
* use the improved input rendering
* disable word wrap
* omit empty keys
2023-05-15 18:40:07 +02:00
Jakob Ketterl 28ccf2e6f2 perform soapy driver feature checks using soapy_connector 2023-03-18 03:14:49 +01:00
Jakob Ketterl 949437c662 backport pickle detection from @luarvique 2023-03-18 00:51:58 +01:00
Jakob Ketterl 5d20157dca add the option to configure waterfall auto levels on device and profile
level
2023-03-17 23:04:15 +01:00
Jason Gaunt d58ad77da2 Added support for automatically enabling auto adjust waterfall levels - JBG 2023-03-17 22:35:42 +01:00
Jakob Ketterl 69ace3179e enable IPv6 in the webserver if configured 2023-03-17 21:44:46 +01:00
Jakob Ketterl 51fd6b625b add ipv6 setting to config 2023-03-17 20:18:19 +01:00
Jakob Ketterl 101d385c05 use bandpass from underlying mode if applicable 2023-03-17 17:47:11 +01:00
Jakob Ketterl a54a5fd560 allow underlying mode to be specified in bandplan 2023-02-28 15:30:31 +01:00
Jakob Ketterl cb5b2e64af change chunking to work with actual byte-sizes 2023-02-22 17:23:11 +01:00
Jakob Ketterl 685b9970d2 switch frequency field to 5 bytes to support QO-100 2023-02-22 16:19:18 +01:00
Jakob Ketterl b1684908a4 remove todo 2023-02-19 16:18:49 +01:00
Jakob Ketterl ed76fd7606 add MSK144 service demodulator 2023-02-19 16:18:08 +01:00
Jakob Ketterl 7b3f212ccb improve error handling during service initialization 2023-02-19 16:14:08 +01:00
Jakob Ketterl 216a3db45d add MSK144 to list of pskreporter modes 2023-02-16 19:47:46 +01:00
Jakob Ketterl afcd8277d1 add MSK144 parsing 2023-02-14 18:36:17 +01:00
Jakob Ketterl f58023f3e5 add msk144demodulator chain 2023-02-14 15:39:59 +01:00
Jakob Ketterl 252edb7a5a add feature detection 2023-02-14 15:38:33 +01:00
Jakob Ketterl 2993cc4279 update wsjt-x homepage url 2023-02-14 15:37:37 +01:00
Jakob Ketterl d79a1396a6 change name for sdrplay device in default config 2022-12-11 23:54:35 +01:00
Jakob Ketterl 1e6e7528b5 add a pseudo-input to display the sdr device type 2022-12-11 23:48:56 +01:00
Jakob Ketterl bbc9d9e7a8 log names instead of ids for improved transparency 2022-12-11 20:41:35 +01:00
Jakob Ketterl 13e323cdd2 show sdr device log messages in the web configuration 2022-12-10 19:50:26 +01:00
Jakob Ketterl 322b6a0d52 set loglevels sooner 2022-11-30 18:53:09 +01:00
Jakob Ketterl bba900d8f8 fix config default 2022-11-30 18:51:01 +01:00
Jakob Ketterl 64f0510da0 use a dropdown for callsign database setting; add aprs.fi 2022-11-30 16:54:22 +01:00
Jakob Ketterl 4050bd7f96 update version in feature check 2022-11-30 01:16:12 +01:00
Jakob Ketterl 258e41669e structured callsign data 2022-11-30 01:07:16 +01:00
Jakob Ketterl 975f5ffdf0 make loglevel adjustable in config or on CLI 2022-11-29 20:23:39 +01:00
Jakob Ketterl 90ed47a115 move pocsag demodulator to digiham to fix import problems 2022-11-10 22:43:08 +01:00
Jakob Ketterl c150eca75c fifisdr fixes 2022-09-19 18:46:11 +02:00
Marat Fayzullin 2ccdc90cc5 Added an option to add callsign database URL for lookups on a map. 2022-07-31 15:25:52 -04:00
Jakob Ketterl 1771fd55e1 move develop to the next minor version 2022-06-16 23:53:56 +02:00
Jakob Ketterl 921fb23c8d prepare release of version 1.2.0 2022-06-15 18:28:50 +02:00
Jakob Ketterl 35ad4712bb disable PPM input for devices that don't support it 2022-06-09 20:25:29 +02:00
Jakob Ketterl fe7f2317de add a quick note about HTML being supported 2022-06-09 19:22:45 +02:00
Jakob Ketterl b5bbdae317 fix failed logins for path-routed environemnts 2022-06-09 18:43:54 +02:00
Jakob Ketterl cec4e326c8 prevent "None" showing up in text inputs 2022-06-09 17:24:53 +02:00
Jakob Ketterl 08485f255a add return codes 2022-06-01 17:58:06 +02:00
Jakob Ketterl be8e35cbcf output more descriptive output when dependencies fail 2022-06-01 17:11:45 +02:00
Jakob Ketterl 843dde1a68 check for csdr & digiham python bindings 2022-06-01 16:43:18 +02:00
Jakob Ketterl f018ef1d81 turn off debug logging for now 2022-06-01 16:19:24 +02:00
Jakob Ketterl 7fd98c8c5c add support for blade rf devices 2022-01-12 15:48:06 +01:00
Jakob Ketterl 39bfba673b catch error resulting from monitor race condition 2022-01-11 21:56:16 +01:00
Jakob Ketterl 5adb53d990 distinguish between error condition and normal socket close 2022-01-11 19:57:52 +01:00
Jakob Ketterl f3dcf5c320 check closed condition after aquiring the lock to avoid deadlocks 2022-01-05 17:55:46 +01:00
Jakob Ketterl 2ce7d943fa fix a client counting bug by deferring client instantiation 2022-01-03 15:19:12 +01:00
Jakob Ketterl 221e0f232b try to avoid "can only be started once" error 2021-12-27 16:37:10 +01:00
Jakob Ketterl 46c78f6463 avoid demodulator concurrency
* this frees up resources used by the current demodulator before
  starting a new one
* this addresses an issue where users of single-channel AMBE sticks
  could not seamlessly switch between digital modes
2021-12-23 16:32:51 +01:00
Jakob Ketterl 4ce3816f48 show codecserver errors in the client 2021-12-13 13:26:47 +01:00
Jakob Ketterl 397155983d improve handling of failed devices 2021-12-06 15:50:03 +01:00
Jakob Ketterl 9c28143dfb add debugging to the feature detection system 2021-12-01 19:22:48 +01:00
Jakob Ketterl dcdfe7969a fix sample rate updates for secondary demods 2021-11-08 17:52:37 +01:00
Jakob Ketterl 85c7a05978 use ImportError for python 3.5 compatibility 2021-10-27 18:33:23 +02:00
Jakob Ketterl 33c8e34456 use the resume call before pumping data from a reader 2021-10-26 16:40:38 +02:00
Jakob Ketterl f967a8d87a catch exceptions while parsing ax25 frames 2021-10-22 15:07:42 +02:00
Jakob Ketterl d757b817b1 make digimodes work in start_mod again 2021-10-15 16:41:07 +02:00
Andre Schinkel efa305eeec normalize metric label to match prometheus data-model guide 2021-10-03 08:48:40 +02:00
Andre Schinkel eb43e39a81 normalize metric label to match prometheus data-model guide 2021-10-03 08:39:57 +02:00
Jakob Ketterl 8cce5bd889 add metrics for pocsag 2021-10-01 00:52:32 +02:00
Jakob Ketterl 66dd4b4581 update list of supported modes for pskreporter 2021-10-01 00:09:20 +02:00
Jakob Ketterl 9689ce5202 catch invalid config values for enum dropdowns and reset to default 2021-09-30 23:32:46 +02:00
Jakob Ketterl 818b9d87b8 add a validator that prevents invalid locations 2021-09-30 23:26:26 +02:00
Jakob Ketterl 0f2aca62f3 code style 2021-09-30 23:09:22 +02:00
Jakob Ketterl 0b64b4ac97 handle errors when gps coordinates are out of range 2021-09-30 23:03:21 +02:00
Jakob Ketterl 330598ddf2 use check implemented in python 2021-09-29 17:23:23 +02:00
Jakob Ketterl d869c5ee2d restore live switching capability for fft compression 2021-09-28 16:55:17 +02:00
Jakob Ketterl 25e2a8013e parser typing 2021-09-28 00:27:01 +02:00
Jakob Ketterl e77b0f4a67 fix the secondary fft display 2021-09-27 18:18:31 +02:00
Jakob Ketterl 909a969e04 restore wfm deemphasis tau functionality 2021-09-27 17:46:19 +02:00
Jakob Ketterl edace3d451 work on some todos 2021-09-27 17:29:51 +02:00
Jakob Ketterl cbcba5807f restore PSK decoding 2021-09-23 18:43:41 +02:00
Jakob Ketterl 3fa3aac766 introduce defaults layer to fix codecserver when empty 2021-09-23 15:17:46 +02:00
Jakob Ketterl 6589c9dbe1 add a feature check for js8py since it's optional now 2021-09-22 13:11:27 +02:00
Jakob Ketterl acc70b6449 re-implement format conversion with pycsdr 2021-09-20 18:36:24 +02:00
Jakob Ketterl 83d01553e3 use "Optional" in typing 2021-09-20 17:24:10 +02:00
Jakob Ketterl f2a97415b9 more localized imports 2021-09-20 16:55:17 +02:00
Jakob Ketterl 95b4510c3a more localized imports 2021-09-20 16:53:00 +02:00
Jakob Ketterl 81ed1a9ebb abstract chain features; use local imports to avoid hard dependencies 2021-09-20 16:14:23 +02:00
Jakob Ketterl b2e15c559e refactor 2021-09-20 15:32:26 +02:00
Jakob Ketterl c10fdd2a53 move 2021-09-20 15:16:06 +02:00
Jakob Ketterl 9efe41a2b1 move the pump mechanism, allowing the old output code to be removed 2021-09-20 15:09:26 +02:00
Jakob Ketterl cb29fc251c update dependencies 2021-09-17 18:58:48 +02:00
Jakob Ketterl 78dcdd5715 add support for DMR locations 2021-09-17 18:24:33 +02:00
Jakob Ketterl 6fbe6b4983 restore automatic config application for direwolf 2021-09-15 15:37:09 +02:00
Jakob Ketterl 284059a920 clean up direwolf config file after use 2021-09-15 15:04:12 +02:00
Jakob Ketterl 0403ebff5c improve handling of source processes 2021-09-15 15:03:11 +02:00
Jakob Ketterl 6129b92277 avoid duplicate method 2021-09-15 15:01:36 +02:00
Jakob Ketterl e5b120311d get freedv back by modeling a corresponding module and chain 2021-09-13 16:58:02 +02:00
Jakob Ketterl 1c937e147e use a generic unpickler 2021-09-13 00:14:38 +02:00
Jakob Ketterl ee9b602e4f catch http errors 2021-09-12 23:31:33 +02:00
Jakob Ketterl 72f925e537 receive pocsag messages in pickled form 2021-09-10 15:38:36 +02:00
Jakob Ketterl bf37dee78b receive metadata in pickled form 2021-09-09 22:25:45 +02:00
Jakob Ketterl 72920135e9 fix initial setup of dial frequency 2021-09-09 22:24:41 +02:00
Jakob Ketterl 66cf940523 refactor the metaparser into a modules and use accordingly 2021-09-09 15:11:33 +02:00
Jakob Ketterl c8ebbb505a restore dmr filter 2021-09-07 17:37:32 +02:00
Jakob Ketterl 9ca5e0ebd6 restore DRM functionality 2021-09-07 17:31:32 +02:00
Jakob Ketterl f3b05c6318 re-add m17 2021-09-07 14:45:52 +02:00
Jakob Ketterl f9f0bdde12 restore js8 functionality 2021-09-06 22:50:57 +02:00
Jakob Ketterl 6014ce8921 restore pocsag functionality 2021-09-06 20:00:14 +02:00
Jakob Ketterl b9f43654cd restore aprs functionality 2021-09-06 15:05:33 +02:00
Jakob Ketterl 7c43c78c4b refactor aprs stuff 2021-09-02 11:00:57 +02:00
Jakob Ketterl efa7faaa2a correctly shutdown resampler 2021-09-02 10:53:05 +02:00
Jakob Ketterl f9df35ffd4 rebuilt the resampler using pycsdr 2021-09-01 15:58:39 +02:00
Jakob Ketterl 01260d66c8 create a base class for python-implemented modules 2021-09-01 15:08:28 +02:00
Jakob Ketterl 51453662e2 fix dial frequencies 2021-08-31 22:46:11 +02:00
Jakob Ketterl 120328ce12 restore background services 2021-08-31 21:53:15 +02:00
Jakob Ketterl 869f971ced add the remaining modes 2021-08-31 17:01:52 +02:00
Jakob Ketterl 73d326037c restore audio chopper decoding 2021-08-31 16:54:37 +02:00
Jakob Ketterl 4a4901fa38 restore secondary fft 2021-08-28 00:10:46 +02:00
Jakob Ketterl 47e78579d4 handle unparseable utf meta data 2021-08-27 18:31:10 +02:00
Jakob Ketterl 54a1cae352 fix hd audio 2021-08-27 18:30:46 +02:00
Jakob Ketterl 4c1777dc19 refactor 2021-08-27 17:34:48 +02:00
Jakob Ketterl 42b315ef86 handle empty converter chain 2021-08-27 16:11:03 +02:00
Jakob Ketterl 3bb4f48faf fix errors on shutdown (duplicate calls) 2021-08-26 17:22:10 +02:00
Jakob Ketterl ee3d934529 fix thread leak 2021-08-26 17:21:52 +02:00
Jakob Ketterl aecb79a4d4 restore demodulation of digital voice modes 2021-08-26 15:58:02 +02:00
Jakob Ketterl 5032f4b66d first steps at rewiring the dsp stuff 2021-08-23 14:25:28 +02:00
Jakob Ketterl 0f1feb9d47 return to the simpler API 2021-08-16 16:41:18 +02:00
Jakob Ketterl 8e945d4149 update metadata asynchronously when download finishes 2021-08-06 21:23:44 +02:00
Jakob Ketterl 307e944911 split metadata into lines (if more than one was received) 2021-08-06 20:01:35 +02:00
Jakob Ketterl 175e140f86 Merge branch 'develop' into pycsdr 2021-08-04 00:01:11 +02:00
Jakob Ketterl ad59b1b3b7 add codecserver help text 2021-08-03 19:52:49 +02:00
Jakob Ketterl 65950565b6 bump develop to next version (1.2.0) 2021-08-03 15:57:36 +02:00
Jakob Ketterl 66492ff40a make sure we send all the data 2021-08-03 15:03:20 +02:00
Jakob Ketterl 1845fa3f39 prepare release 1.1.0 2021-08-02 18:26:16 +02:00
Jakob Ketterl fa49e59200 increase required connector version to 0.5 (0.4 would work but cannot be
parsed)
2021-08-02 18:11:45 +02:00
Jakob Ketterl d0d3e67174 add missing digiham components 2021-08-02 17:39:18 +02:00
Jakob Ketterl 207ada70fd restore s-meter display 2021-07-25 00:05:48 +02:00
Jakob Ketterl 7d7cec1ec3 update to match pycsdr chaanges 2021-07-24 18:50:30 +02:00
Jakob Ketterl b242f09d5d Merge branch 'develop' into pycsdr 2021-07-20 13:33:52 +02:00
Jakob Ketterl ad396fa970 remove "unvoiced quality" setting 2021-07-20 13:33:26 +02:00
Jakob Ketterl 5bb14a8997 first working nfm chain using pycsdr 2021-07-19 19:04:14 +02:00
Jakob Ketterl bb77d2ce0a fix subscription 2021-07-18 14:57:50 +02:00
Jakob Ketterl 320521a74a adopt to updated api 2021-07-16 16:12:16 +02:00
Jakob Ketterl 5e7a0a38aa Merge branch 'develop' into pycsdr 2021-07-15 18:09:39 +02:00
Jakob Ketterl 0277ae8722 fix plutosdr soapy module url 2021-07-15 12:53:48 +02:00
Jakob Ketterl 12c032112b handle errors caused by values that don't fit into json 2021-07-09 13:52:59 +02:00
Jakob Ketterl 4e61ed3645 handle errors while parsing dprs data 2021-07-09 13:52:33 +02:00
Jakob Ketterl 6a59369c62 update remote device input field behaviour 2021-07-05 12:58:16 +02:00
Jakob Ketterl 40075c1adb check if id contained in radioid data matches request 2021-06-28 13:04:47 +02:00
Jakob Ketterl 2ecefcecd5 update dependency handling for nxdn 2021-06-17 14:13:17 +02:00
Jakob Ketterl f5c2525f22 switch NXDN to use digiham decoder; add meta panel 2021-06-15 22:50:30 +02:00
Jakob Ketterl 34065e455f parse NMEA coordinates from metadata 2021-06-14 23:39:18 +02:00
Jakob Ketterl b142233d4e report as DPRS on the map 2021-06-11 16:43:28 +02:00
Jakob Ketterl e9b2007863 fix DPRS parsing and display 2021-06-11 14:36:11 +02:00
Jakob Ketterl 5b0aa274eb increase required digiham version to 0.5 2021-06-08 23:06:25 +02:00
Jakob Ketterl 234cbf0fa8 update dependency system to use digiham for d-star 2021-06-08 23:01:49 +02:00
Jakob Ketterl ba97f76737 add parsing of DPMR data 2021-06-08 18:38:53 +02:00
Jakob Ketterl 46d7fa7347 improve error message 2021-06-03 15:23:28 +02:00
Jakob Ketterl 845f937fa3 make property deletions evaluate to false for convenience 2021-06-01 11:37:51 +02:00
Jakob Ketterl 8923b90b3e check if AMBE is available at codecserver 2021-05-31 20:41:37 +02:00
Jakob Ketterl d04ab43977 add ability to configure codecserver 2021-05-29 18:50:17 +02:00
Jakob Ketterl 9cd730dc9a allow digiham binaries to return their own name 2021-05-28 00:02:20 +02:00
Jakob Ketterl 3f7a93acfc drop the scheduler from the config if it's empty 2021-05-19 16:02:44 +02:00
Jakob Ketterl ebc935c1a9 improve message 2021-05-18 20:46:33 +02:00
Jakob Ketterl 5b92c317c1 improve connection timeout handling 2021-05-18 20:44:05 +02:00
Jakob Ketterl 48dc75c728 improve handshake handling 2021-05-18 16:00:15 +02:00
Jakob Ketterl 3e7eb09f3e introduce a websocket handler interface 2021-05-18 15:42:30 +02:00
Jakob Ketterl 83feb2c0e0 parse individual connector versions 2021-05-17 23:57:37 +02:00
Jakob Ketterl 33a942707c allow slots to be off in the daylight scheduler 2021-05-17 23:23:25 +02:00
Jakob Ketterl 8550f10d88 allow svg to be gzipped 2021-05-14 23:10:17 +02:00
Jakob Ketterl 4f0d4983ca introduce http timeout; single router instance 2021-05-14 18:36:30 +02:00
Jakob Ketterl d34ac58e73 use placeholder for device and profile in tabs as well 2021-05-14 16:00:29 +02:00
Jakob Ketterl ee8688345e display a placeholder if device name is empty 2021-05-14 15:52:18 +02:00
Jakob Ketterl 4b969fa3b2
Merge pull request #235 from jancona/hpsdr_config
Set proper config options for HPSDR connector
2021-05-12 21:13:37 +02:00
Jakob Ketterl 1020c9bac9 improve form validation
* don't ingore errors in optional fields
* don't attempt parsing if key is not present in upload
* force display of fields with errors
2021-05-12 16:22:45 +02:00
Jim Ancona 87b9a52fcb Don't filter inputs, add a validator for RF Gain 2021-05-11 11:21:52 -04:00
Jakob Ketterl 2d2f9bed40 add empty __init__.py (PEP420 doesn't always work...) 2021-05-11 14:28:35 +02:00
Jim Ancona e37bc0573d Set proper config options for HPSDR connector 2021-05-10 20:35:49 -04:00
Jakob Ketterl 301b3b59a5 fix linter issues 2021-05-10 23:02:43 +02:00
Jakob Ketterl 40c78940ef don't close twice 2021-05-10 21:27:40 +02:00
Jakob Ketterl a006d8c125 bumb develop to the next minor version 2021-05-09 16:06:03 +02:00
Jakob Ketterl 0c9d37e381 Merge branch 'develop' into release-1.0 2021-05-08 21:10:58 +02:00
Jakob Ketterl dc848a7006 fix bandwidth calculation for single-service groups 2021-05-08 00:59:57 +02:00
Jakob Ketterl 093ad6cd0d improve oversampling for resampling 2021-05-08 00:38:00 +02:00
Jakob Ketterl fd26acca68 don't resample when there's only one service 2021-05-08 00:37:30 +02:00
Jakob Ketterl 3daf005c81 Merge branch 'develop' into release-1.0 2021-05-07 17:53:51 +02:00
Jakob Ketterl 484b829b90 fix problem when switching image file types 2021-05-07 17:19:11 +02:00
Jakob Ketterl ad8877f83c add webp support for uploadable images 2021-05-07 16:57:54 +02:00
Jakob Ketterl f86487f459 prepare release 1.0.0 2021-05-06 19:27:43 +02:00
Jakob Ketterl 7fc7fe5e82 fix audio chopper mode timestamp problem 2021-05-05 22:55:20 +02:00
Jakob Ketterl cd935c0dcb check for empty return 2021-05-04 16:05:44 +02:00
Jakob Ketterl a17690dc91 clear session cookie if invalid 2021-05-03 23:22:28 +02:00
Jakob Ketterl fe1a1207e6 implement session timeout 2021-05-03 23:07:27 +02:00
Jakob Ketterl 041e8930bf don't send native deletions 2021-05-03 19:28:03 +02:00
Jakob Ketterl d9fe604171 improve error handling on file switches 2021-05-02 00:07:24 +02:00
Jakob Ketterl 290f67735d improve decoding file switchover 2021-05-02 00:06:50 +02:00
Jakob Ketterl 11568256ed remove unused imports 2021-05-01 16:51:02 +02:00
Jakob Ketterl 2152184bf9 fix compatibility issues with python 3.5 2021-05-01 16:49:53 +02:00
Jakob Ketterl f8971ac704 protect against low-level errors during switching 2021-04-30 01:20:33 +02:00
Jakob Ketterl af553c422d implement file size upload limit 2021-04-29 18:18:18 +02:00
Jakob Ketterl 29bce9e07a refactor: move form stuff out of source code 2021-04-29 15:28:18 +02:00
Jakob Ketterl 35dcff90ea refactor owrx.form -> owrx.form.input 2021-04-29 15:17:21 +02:00
Jakob Ketterl 4a77d2cc38 fill error variable with an empty string for the device list 2021-04-27 23:19:48 +02:00
Jakob Ketterl c6e01eed1a implement top-level error handling 2021-04-27 18:23:59 +02:00
Jakob Ketterl 118335b2b6 lock on dsp to avoid race conditions 2021-04-27 16:58:23 +02:00