Commit Graph

37 Commits

Author SHA1 Message Date
Andreas Eversberg 0e132f6167 Fix minor compiler warning in sdr.c 2023-05-25 21:56:48 +02:00
Andreas Eversberg 8c382431b5 sdr: RF level is only provided when requested and available 2022-06-18 21:25:59 +02:00
Andreas Eversberg 1bd471a703 When a transmitter is off, send absolutely nothing
This is done by shifting away the transmitter from center (DC) freqency.
Useless code was removed, since there is nothing to be transmitted.
2021-12-12 10:53:27 +01:00
Andreas Eversberg b8352af84d SoapySDR: Minor debug output improvement 2021-12-12 10:53:26 +01:00
Andreas Eversberg 2d23c841a6 Cleanup SDR usage when no channel, but full spectrum is used.
Radio and TV uses full spectrum, so they set channels to 0, this will
define a center frequency only. The spectrum is then processed by the
applications and not by libsdr.

The sample rate must be a factor of 1e9, so that time stamps work
and signal has no gaps/glitchs.
2021-12-12 10:53:26 +01:00
Andreas Eversberg 86d4523cc7 Correctly show channel frequencies in spectrum view when swapping SDR links 2021-11-07 20:00:43 +01:00
Andreas Eversberg 869625cfcd SoapySDR: Fixed API change from version 0.8.0
The last API check was wrong. 0.7.2 is still old api, but 0.8.0 is new.
2021-11-07 20:00:42 +01:00
Andreas Eversberg 6fa74a1296 Refactor global variables for signal processing
These are:
	device, sample rate, buffer, latency
Called now:
	dsp_device, dsp_samplerate, dsp_buffer, dsp_latency
Call audio device:
	call_device, call_samplerate, call_buffer
2021-10-24 06:25:10 +02:00
Andreas Eversberg 8a1c5a1a5b SoapySDR uses time stamps to prevent gaps/overflows in transmit stream
A common option for both UHD and SoapySDR allows to turn off time stamps.
2021-09-24 17:20:27 +02:00
Andreas Eversberg 6aa8a237db SoapySDR: Fixed API change from version 0.7.1 2021-06-23 16:06:36 +02:00
Andreas Eversberg 8c0a25f3b0 Added special strdup to liboptions, to prevent memory leaks for option strings
If you are doing memory leak debugging you don't want to see any leaks when
stopping the program.
2021-03-07 10:38:38 +01:00
Martin Hauke a07764f0d9 Fixed typos in cli output and source code comments 2021-01-03 09:57:03 +01:00
Andreas Eversberg 6b07d8b274 A string is used to define what digits can be dialed via console
By default it is "0123456789". This is used by "eurosignal" to add
special A..E digits.
2020-04-04 16:34:39 +02:00
Andreas Eversberg 4af2dca10d Add power control to AM (power on/off per sample) 2019-12-08 17:26:47 +01:00
Andreas Eversberg 150a77b69d Add support for AM to libmobile and libsdr 2019-12-08 17:26:44 +01:00
Andreas Eversberg 860f91af6f Bugfix: Correct handling of n in strncat() 2019-11-29 15:58:32 +01:00
Andreas Eversberg 1a76aebbc4 SDR: Use greater offset from center frequency, if only one channel is used. 2019-08-26 21:10:31 +02:00
Martin Hauke 75765d49b7 Fixed many typos in output and source code comments 2019-07-15 21:14:52 +02:00
Andreas Eversberg 831b68401a SDR: Move center frequenc (DC) away from channels
If one channel is used, shift the center frequency down by half of the bandwidth.

If more channels are used, select a center frequency between two channels close to the center, but equal distance.

Show the spectum layout on startup.

This patch reverts f1292a985b
2019-05-30 21:07:41 +02:00
Andreas Eversberg f1292a985b SDR: Move channel away from center frequency, to avoid bad RX 2019-01-02 15:57:54 +01:00
Andreas Eversberg 881d4a9f72 SDR: Fix level range of IQ date; must not exceed range of -1 .. 1
LimeSDR mini (and maybe others) do not want IQ data to become a value below
-1 or above 1. This happens slightly when applying the IIR filter after
upsampling. To prevent this, we scale down the IQ level a little bit.

To test the problem:
- set the scale level to 1.0, so it does not take effect
- use LimeSDR mini
- use upsampling (sample rate differs SDR sample rate)
- run loopback mode 2 (-l 2)
- IIR filter must be initialized with 2 or more iterations to take effect
- check linear IQ graph; it will then plot dots inside the circle
2018-08-25 08:13:16 +02:00
Andreas Eversberg b7046a5283 SDR: Add clock source selection, untested yet 2018-06-24 11:36:56 +02:00
Andreas Eversberg 0b504dbeb3 SoapySDR: Flip initialization of RX and TX, so LimeSDR works with frequencies below 30 MHz 2018-05-21 19:39:09 +02:00
Andreas Eversberg 4e2ad7dae1 Fix compiler warning in conjunction with strncpy 2018-05-21 19:39:09 +02:00
Andreas Eversberg 3b81007210 Refactoring command line option handling
* Use own function to define and parse command line options

 * Command line options can be defined by config file also

 * --limesdr allows to auto-set required SDR option for LimeSDR
2018-05-21 19:39:09 +02:00
Andreas Eversberg 6ba1b8acab Make LimeSDR tune rx to tx frequency 2018-05-21 19:39:09 +02:00
Andreas Eversberg 9197320ee6 Improved audio (sdr) handling 2018-02-16 15:54:40 +01:00
Andreas Eversberg 9af2b6e007 Improved wave playback 2018-02-16 15:54:40 +01:00
Andreas Eversberg 4cc33c5b0d Make sound card support (Alsa) optional 2018-02-15 08:00:15 +01:00
Andreas Eversberg 0b129d3c7f libdisplay: Removing dependency from libmobile 2018-02-15 08:00:14 +01:00
Andreas Eversberg 9f901384de SDR: Add option to set local oscillator (LO) offset
By default it is set to -1 MHz.
2017-12-09 20:46:14 +01:00
Andreas Eversberg 417151e9a3 SDR: Add DC offset removal (DC bias) 2017-12-05 11:10:44 +01:00
Andreas Eversberg 1a341f6b4e Restructure: Move debug from common code to 'libdebug' 2017-12-03 08:45:58 +01:00
Andreas Eversberg 016e72d6d7 Restructure: Move display from common code to 'libdisplay' 2017-12-03 08:45:55 +01:00
Andreas Eversberg ab59a26a51 Restructure: Move mobile from common code to 'libmobile' 2017-12-03 08:45:54 +01:00
Andreas Eversberg ed31a26eba Restructure: Move sample from common code to 'libsample' 2017-12-03 08:45:48 +01:00
Andreas Eversberg 1650cc5ad2 Restructure: Move sdr from common code to 'libsdr' 2017-12-03 08:45:45 +01:00