1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-29 19:28:47 -05:00
Commit Graph

674 Commits

Author SHA1 Message Date
f4exb
e723764376 New PLL: removed locked status heuristics for order > 1 2018-05-17 02:35:06 +02:00
f4exb
d29958d51f Added a frequency lock loop 2018-05-17 01:05:48 +02:00
f4exb
c495f82235 Imported Iowa Hills Software IIR and FIR calculator 2018-05-17 00:09:56 +02:00
f4exb
d38d926a87 New PLL: simple FLL code to be put in its own class later 2018-05-16 18:53:16 +02:00
f4exb
a1a2078d7d New PLL: experimental lock condition algorithm based on phi hat averaging (2) + FLL input and locking mechanixm 2018-05-16 14:20:26 +02:00
f4exb
10c56fc47a New PLL: experimental lock condition algorithm based on phi hat averaging 2018-05-16 08:42:08 +02:00
f4exb
660d8d22ae New PLL: heuristics to find locked state 2018-05-16 01:57:16 +02:00
f4exb
bb2d530122 New PLL: phase lock status draft 2018-05-15 19:40:53 +02:00
f4exb
68c50769fe New PLL: implemented trick on the phase comparator for M-ary PSK operation 2018-05-14 19:14:30 +02:00
f4exb
21840c5dd3 AM demod: synchronous AM: implemented sidebands selection 2018-05-13 22:30:50 +02:00
f4exb
e9f64a05f2 AM demod: basic synchronous AM detection option 2018-05-13 17:27:24 +02:00
f4exb
1549ecaa0f New PLL with complex signal input and w, zeta, K parameters 2018-05-13 08:55:14 +02:00
f4exb
65df319167 RTL-SDR: fixed inf/sup decimators (2) 2018-05-12 08:05:46 +02:00
f4exb
f4ac9bf114 RTL-SDR: fixed inf/sup decimators 2018-05-12 07:25:53 +02:00
f4exb
3ae7cda9be ChanelAnalyzerNG: added PLL option 2018-05-12 06:01:54 +02:00
f4exb
d9d69c2060
Merge branch 'dev' into dev 2018-05-11 10:11:28 +02:00
beta-tester
15078c9c07 modified unique file name 2018-05-11 09:08:20 +02:00
f4exb
50c868562a Decimators simplification 2018-05-11 00:48:37 +02:00
f4exb
4bb749ce65 Inf/Sup frequency shift scheme change to set bandwidth closer to device center frequency 2018-05-10 22:17:39 +02:00
f4exb
fd4d2bb64f Common static function to calculate device center frequency from all contributing parameters 2018-05-10 11:47:13 +02:00
f4exb
1fadbf3b8a Inf/Sup decimators fix (4): added decimators by 64 2018-05-10 10:07:42 +02:00
f4exb
41319b63e5 Inf/Sup decimators fix (3): all decimators but by 64 2018-05-10 04:37:51 +02:00
f4exb
f99f7cd598 Inf/Sup decimators fix (2): decimators by 4 2018-05-10 02:51:45 +02:00
f4exb
6841bf3efa Center decimator by 2 optimization 2018-05-10 02:26:38 +02:00
f4exb
0e55accd0f Inf/Sup decimators fix (1): decimators by 2 2018-05-10 02:14:16 +02:00
f4exb
0981d04904 File record default file name fix (1) 2018-05-08 11:03:09 +02:00
f4exb
0c946d86e2 Use unified even/odd half band decimator 2018-05-08 01:35:08 +02:00
f4exb
56c0aaedcd Mag AGC: corrected step calculation. Added method to combine step up and down smoothing 2018-05-06 02:39:39 +02:00
f4exb
17aa15c4d0 Unified the even/odd integer halfband filters 2018-05-02 14:00:03 +02:00
f4exb
058f3d5af8 RTLSDR: optimized decimator 2018-05-02 00:24:50 +02:00
f4exb
19c32b4354 Removed 24/16 bit differentiation on Decimator instantiation where possible 2018-05-01 23:57:12 +02:00
f4exb
4924e3edbd Down channelizer optimization: use even/odd technique halfband filter 2018-05-01 22:02:30 +02:00
f4exb
a81e2f297a Benchmarking: added int to float decimation 2018-05-01 19:49:47 +02:00
f4exb
efa168ec77 Floating point to floating point decimator optimization using the even/odd algorithm 2018-04-30 11:08:08 +02:00
f4exb
48cc6df8a7 Floating point to integer decimator optimization using the even/odd algorithm 2018-04-29 22:56:34 +02:00
f4exb
1213ad2a71 Simplified float halfband filters with unique class for floating point 2018-04-29 11:48:46 +02:00
f4exb
9c49be1313 Removed intrinsics completely from IntHalfbandFilterEO2 2018-04-29 11:38:42 +02:00
f4exb
d735025c6c With global adoption of even/odd decimators the accu type must be 32 not 64 bits 2018-04-29 10:38:25 +02:00
f4exb
2252dcb06a Do not use intrinsics at all for IntHalfbandFilterEO1 2018-04-29 10:37:36 +02:00
f4exb
b23d1f6a63 Optimization: always use the even/odd decimators 2018-04-28 05:08:01 +02:00
f4exb
27623709f0 Rewrite of decimator ifdefs 2018-04-28 03:04:34 +02:00
f4exb
33e171bd9b Moving average: fixed initialization 2018-04-27 20:40:17 +02:00
f4exb
2427c885f7 Benchmarking: added option to deactivate SIMD for decimators 2018-04-26 22:45:47 +02:00
f4exb
17ea5f29b3 Benchmarking: added float->float decimators and corresponding benchmark test 2018-04-25 18:01:01 +02:00
f4exb
b03e9c59cb Benchmarking: implemented decimator float to int test 2018-04-25 01:44:54 +02:00
f4exb
2efa7ab594 DSD demod: allow use of audio rates that are integer multiples of 8k other than 48k (x2,3,4,5) 2018-04-23 01:04:47 +02:00
f4exb
7e6267f41c SSB demod: use delay line to squeeze squelch tail 2018-04-22 09:37:34 +02:00
f4exb
9c7026ae5e NFM demod: fixed AF squelch setting according to audio sample rate. Fixed discriminator. Added details to documentation. 2018-04-14 21:45:45 +02:00
f4exb
9fd33a4101 Removed liquid-dsp internal build and dependencies. Abandon clock recovery in ScopeNG 2018-04-04 02:03:37 +02:00
f4exb
827c9b6b73 ScopeNG: first symbol clock synchro implementation 2018-04-03 23:33:55 +02:00
f4exb
b8b2ceb47d Removed SymbolSynchronizer from Projector 2018-04-03 21:32:52 +02:00
f4exb
8ce1c76a40 ScopeNG: moved Projector class to sdrbase to avoid excessive dependency on liquid-dsp 2018-04-03 18:51:21 +02:00
f4exb
b856bc2aac Liquid-dsp support correction. Created SymbolSynchronzier as an interface 2018-04-03 18:23:39 +02:00
f4exb
53beb8a92d Removed UDP address and port from Channel marker 2018-03-30 19:06:27 +02:00
f4exb
dbc9e78077 DATV demod: fixed message handling 2018-03-29 10:03:52 +02:00
f4exb
f71446b6ec Multiple audio support: DSD demodulator: allow to use native 8k decoder if audio sample rate is 8k 2018-03-28 08:43:11 +02:00
f4exb
095ab14a14 Multiple audio support: New audio preferences dialog (3). Application to AM demod 2018-03-26 11:55:45 +02:00
f4exb
c500b1853b Multiple audio support: use device names for sample rates and volumes maps 2018-03-25 01:47:22 +01:00
f4exb
7aaa230eb4 Multiple audio support: added ability to manage more than one audio output 2018-03-24 23:50:28 +01:00
f4exb
d7db3405a0 ThreadedBasebandSampleSource: destructor: call stop only if thread is running 2018-03-24 22:39:16 +01:00
f4exb
1156a1931f ThreadedBasebandSampleSink: destructor: call stop only if thread is running 2018-03-24 22:37:36 +01:00
f4exb
5b7cbdf0e5 Multiple audio support: transfer start/stop audio to audio FIFO management in AudioDeviceManager 2018-03-24 04:18:58 +01:00
f4exb
15e62814de Multiple audio support: removed audio methods from DSP engine and use AudioDeviceManager instead 2018-03-24 03:36:49 +01:00
f4exb
95ac9a41d3 Multiple audio support: DSPEngine: cleanup of unused audio routines (2) 2018-03-23 18:32:55 +01:00
f4exb
20527975c9 Multiple audio support: DSPEngine: cleanup of unused audio routines 2018-03-23 18:30:28 +01:00
f4exb
e2aabde641 Multiple audio support: renamed AudioDeviceInfo to AudioDeviceManager 2018-03-23 18:08:38 +01:00
f4exb
f85111251b Multiple audio support: moved AudioDeviceInfo in DSPEngine and added management methods to AudioDeviceInfo 2018-03-23 17:52:16 +01:00
f4exb
72e29fd3f8 Moved export.h file to root of exports directory and removed util 2018-03-20 13:49:21 +01:00
f4exb
8d69272a76 Threaded baseband source/sink stop before delete 2018-03-16 10:15:35 +01:00
f4exb
60568de298 Always delete BasebandSampleSink::MsgThreadedSink on return of processing 2018-03-06 08:40:46 +01:00
f4exb
9dacbb6d83 qrtplib: NFM demod implementation. Also solve issue Cannot create children for a parent that is in a different thread on UDP sink used for copy audio to UDP 2018-03-06 02:23:47 +01:00
f4exb
980192548d Adapt to MSVC linker: removed SDRANGEL_API 2018-03-03 21:19:59 +01:00
f4exb
c22d146376 Adapt to MSVC linker 2018-03-03 20:23:38 +01:00
f4exb
2b1d5f0838 Fixed -Woverloaded-virtual warnings 2018-03-03 10:06:47 +01:00
f4exb
34bdfbf495 class vs struct mismatch fixes 2018-03-01 09:14:37 +01:00
f4exb
e53da4e9a8 DATV demod: make sure that when baseband rate changes the channelizer is reconfigured to get all available bandwidth 2018-02-25 03:22:30 +01:00
f4exb
2e5cfcafee PVS-Studio static analysis corrections (3) issue #137 2018-02-24 10:29:27 +01:00
f4exb
2b846f5d28 PVS-Studio static analysis corrections (2) issue #137 2018-02-22 03:04:42 +01:00
f4exb
f01b90094b PVS-Studio static analysis corrections (1) issue #137 2018-02-21 18:54:59 +01:00
f4exb
ffbc08841e Fixed possible memory leak in green FFT (g_fft) 2018-02-18 00:20:37 +01:00
f4exb
31c3b11194 DSP source enging DC and IQ correction: reset averages when changing settings 2018-02-16 01:23:49 +01:00
f4exb
b680b11206 AM demod: fixed volume AGC 2018-02-16 00:43:21 +01:00
f4exb
34081dd50b NCOF: secure possible index overflow by 1 due to float to int conversion 2018-02-15 23:58:01 +01:00
f4exb
c827879613 AF Squelch: removed useless default constructor 2018-02-15 18:47:46 +01:00
f4exb
c632e6e55a DSP moving average: corrected wrong index calculation 2018-02-15 16:35:43 +01:00
f4exb
af5579ad7d Removed useless class PIDController 2018-02-14 20:12:51 +01:00
f4exb
e9c8dad663 Fixed DSP device source/sink run command 2018-02-14 17:33:08 +01:00
f4exb
e8537d6582 Web API and related: fixed memory leaks and some malfunctions 2018-02-14 11:27:57 +01:00
f4exb
4b2dfd488e IQ imbalance fix: the I branch has to remain the reference 2018-02-11 01:42:35 +01:00
f4exb
70ce8f1044 Perseus support (6) 2018-02-07 23:44:20 +01:00
f4exb
6b26543655 Test Source: new combo box for auto correction options (2) 2018-02-04 22:52:31 +01:00
f4exb
1efc509296 DC and IQ correction: added a defiend out integer version (no advantage over floating point) 2018-02-04 18:20:16 +01:00
f4exb
b9b2c41ba2 IQ correction with phase imbalance: floating point implementation 2018-02-04 10:49:13 +01:00
f4exb
24080bafd3 Alpha AGC cleanup 2018-02-03 17:07:37 +01:00
f4exb
a1c84718ef Simple AGC cleanup 2018-02-03 17:06:16 +01:00
f4exb
d43ecaf8f7 AirspyHF (float): working plugin 2018-02-02 02:12:49 +01:00
f4exb
be049374ad Improved DC offset correction 2018-02-01 02:45:55 +01:00
f4exb
373aa6960f Test Source: add phase imbalance control 2018-01-31 22:34:55 +01:00
f4exb
ba4d9ec0ca Airspy HF: added missing files to the libairspyhf built in libary cmake file 2018-01-26 03:00:10 +01:00
f4exb
cc1033b3c5 File Input and record: 16/24 bit DSP compatibility: bug fixes 2018-01-25 23:52:36 +01:00
f4exb
12a97b9644 File Input and record: 16/24 bit DSP compatibility 2018-01-25 18:39:54 +01:00
f4exb
a78997b5e7 24 bit DSP build: corrected IQ imbalance calculation for any sample size 2018-01-25 00:48:11 +01:00
f4exb
3d77c9af9b SDRDaemon input: adaptation for 24 bit Rx DSP 2018-01-24 08:49:18 +01:00
f4exb
61a16eade9 Use always 16 bit DSP on Tx side 2018-01-22 10:46:57 +01:00
f4exb
2ddcb8c358 Differentiate Rx and Tx DSP sample sizes 2018-01-22 08:46:05 +01:00
f4exb
bacc6659b0 24 bit DSP: use a different define for Tx chain so that it can stay on 16 bit DSP 2018-01-22 03:00:08 +01:00
f4exb
732561152b 24 bit DSP fix 2018-01-22 02:49:06 +01:00
f4exb
ad219d50cc Implemented 24 bit internal DSP (with bugs ...) 2018-01-21 21:48:36 +01:00
f4exb
08ce7f423b Templatize the accumulator type of integer half-band filters (non SIMD) 2018-01-21 19:39:51 +01:00
f4exb
8cd462a338 IntHalfbandFilterDB: use specific storeSample method when samples are defined om 32 bit wide fields 2018-01-21 12:12:20 +01:00
f4exb
491b8a6d33 Replaced hardcoded bit scaling literals by defines 2018-01-21 10:57:04 +01:00
f4exb
f34750716a Added define for 32 bit sample compilation 2018-01-21 01:45:58 +01:00
f4exb
5a594629b3 Use FixReal in place of qint16 2018-01-21 01:19:35 +01:00
f4exb
4db248c26a Halfband filters traits: use minimal scaling value so that the smallest coefficient is not zero. Avoids int32 multiplication overflow for large enough decimation factors and sample bit size 2018-01-18 00:21:50 +01:00
f4exb
c7e1526930 Added decimation class with unsigned to signed conversion with shift. Applied to RTL-SDR 2018-01-16 00:01:38 +01:00
f4exb
18fa3b6156 RTL-SDR: corrected bit shifts for 8 bit samples and corrected RTL-SDR unsigned to signed conversion 2018-01-15 23:37:26 +01:00
f4exb
45e04f06ae Compromise on 8 bit decimator pre process shift constants so that it pads to 15 bits instead of 16. Prevents saturation in all cases. 2018-01-14 05:12:24 +01:00
f4exb
176792c0ce Corrected 8 bit decimator pre process shift constants 2018-01-14 04:43:04 +01:00
f4exb
1ec8eecefb DSD demod: use lower cutoff for optional audio high pass filter 2018-01-02 20:02:30 +01:00
f4exb
36b3137a48 DSP device source/sink engines: reworked add source sequence of actions 2018-01-02 16:25:34 +01:00
f4exb
23e5ef76d4 Device sink engine: fixed adding source channels while it runs 2018-01-02 11:00:00 +01:00
f4exb
f30edc983d Tx: new handling of multiple channel sources. Fixed segfault 2018-01-02 04:01:01 +01:00
f4exb
df1e09fdb7 Tx: new handling of multiple channel sources (1) 2018-01-02 03:40:55 +01:00
f4exb
1056a39983 Tx support: single channel: make FIFO read and writes truly independent (optimized) 2018-01-02 02:14:31 +01:00
f4exb
420ef78ad5 Tx support: single channel: make FIFO read and writes truly independent (unoptimized) 2018-01-02 01:33:09 +01:00
f4exb
b731ff851a Renamed some DSP messages to make them more explicit 2018-01-02 01:04:49 +01:00
f4exb
9a2ae892ed Sample source FIFO: moved emit data write at top of method so that samples can be written with no delay 2018-01-02 01:04:04 +01:00
f4exb
8801462f96 DSP device sink engine: simplify code for single channel source handling 2018-01-02 00:27:45 +01:00
f4exb
906d04dd41 Up/Down channelizers: use input message queue for all message forwarding to sample source/sinks and do not forward unknown messages 2017-12-29 05:48:54 +01:00
f4exb
c6083ea6f4 Down/Up channelizers: enqeue MsgChannelizerNotification to sample sink/source instead of processing it directly 2017-12-29 05:14:40 +01:00
f4exb
0dd36d4f3e Sink plugins: put a serializer and deserializer in the core plugin for server 2017-12-28 04:04:50 +01:00
f4exb
8399baeb4e Source plugins: put a serializer and deserializer in the core plugin for server. NFM demod: fixed deserializer 2017-12-28 03:21:48 +01:00
f4exb
3bc221bab8 Server: web API: /sdrangel/deviceset/{deviceSetIndex}/device/run POST,DELETE. LimeSDR Tx example working 2017-12-27 11:10:47 +01:00
f4exb
ccffb5101d Web API: /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT, PATCH with all settings parameters optional 2017-12-27 01:46:33 +01:00
f4exb
2145eeb7b6 DSD demod: highpass filtering for audio completed 2017-12-26 20:29:23 +01:00
f4exb
e1d7ada5dd DSD demod: highpass filtering for audio (1) 2017-12-26 10:59:51 +01:00
f4exb
9213b3c0b2 Device sink plugins: implemented an init method for initializations to be done when all collaborating objects are created and possibly connected 2017-12-25 12:59:44 +01:00
f4exb
49d1439981 Device source plugins: implemented an init method for initializations to be done when all collaborating objects are created and possibly connected 2017-12-25 09:10:19 +01:00
f4exb
1987bbac77 Device plugins: make setMessageQueueToGUI pure virtual so that child classes must have to deal with this 2017-12-24 19:58:26 +01:00
f4exb
b127182062 All plugins: removed apply settings in constructors as it causes segfaults 2017-12-24 18:37:33 +01:00
f4exb
c7e75b4bef Server: implemented add device set and remove last device set and associated web API entry points 2017-12-20 01:01:53 +01:00
f4exb
e4b65b52b4 Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings PUT, PATCH for NFM demod and mod 2017-12-11 18:18:47 +01:00
f4exb
2dd82e9eca Web API: /sdrangel/deviceset/{deviceSetIndex}/channel/{channelIndex}/settings GET for NFM demod and mod 2017-12-10 20:27:08 +01:00
f4exb
565083e5f5 Web API: implemented device run APIs for BladeRF output, HackRF, PlutoSDR and LimeSDR ourput 2017-12-10 01:57:50 +01:00
f4exb
7d122b6b67 Web API: created run state getter. Implemented in RTLSDR 2017-12-09 10:49:20 +01:00
f4exb
9c581107e8 Web API: RTLSDR run implementation 2017-12-08 17:12:33 +01:00
f4exb
c38497d9df Web API: have /sdrangel/deviceset/{deviceSetIndex}/device/settings PUT,PATCH (1) 2017-12-07 13:55:42 +01:00
f4exb
fc4627f82e Web API: file source settings getter (1) 2017-12-06 19:23:42 +01:00
f4exb
3fb4af82e6 Web API: implement devicesetDeviceGet (2) 2017-12-04 23:07:30 +01:00
f4exb
7dafae3fa1 Web API: implement devicesetDeviceGet (1) 2017-12-04 18:22:25 +01:00