Andreas Eversberg
329463bb8c
SDR: Add option to give channel number
...
Using SoapySDR server allows to run different networks on multi channel
SDR devices.
2017-06-10 13:08:25 +02:00
Andreas Eversberg
aef4cf0997
Make spectrum display nicer by plotting continuous lines between samples
2017-06-10 13:08:24 +02:00
Andreas Eversberg
e0534db15c
Make spectrum display a little nicer by using '|' instead of ':'
2017-06-10 13:08:23 +02:00
Andreas Eversberg
e653475ff7
NMT: Allow NULL (B'0000') to be used as country selector in traffic area
2017-06-10 13:08:23 +02:00
Andreas Eversberg
57d4d1739e
AMPS/C-Netz: Correctly release pending transaction when creating a new one
...
If transactions is created, look on all channels for pending transaction
with same subscriber.
1. Remove that transaction.
2. Make channel return to IDLE.
3. Release call, if callref exists.
2017-06-10 13:08:22 +02:00
Andreas Eversberg
6adfcf7466
Status display
...
Alows to show status of current channels and users
2017-06-10 13:08:21 +02:00
Andreas Eversberg
bb64c6b3ba
AMPS: Add DTX support
...
When DTX is enabled (-S dtx=2 or 3), a missing SAT tone causes the receiver
to mute audio and insert a low level of comfort noise.
Also the missing SAT tone will not cause the connection to be terminated.
2017-06-10 13:08:19 +02:00
Andreas Eversberg
2c1ab89723
Notify about usage of channels that are next to each other
...
It is required to have at least one free channel between channels, to
avoid interferences.
This is only a warning, it will not reject channels next to each other.
2017-05-24 14:01:25 +02:00
Andreas Eversberg
fc3b3e07be
Finetuning LOSS (noise) detection
...
The algorithm is still bad, but works in most cases
2017-05-24 14:00:08 +02:00
Andreas Eversberg
56024b384b
AMPS: Serveral minor fixes
2017-05-23 18:11:10 +02:00
Andreas Eversberg
76a3484c5c
C-Netz: Make demodulation algorithm (slope or leve) slectable via option
...
By default (auto), the algorithm is selected, depending on sound card
or SDR usage. For testing and debugging purpose, the algorithm can be
forced.
2017-05-19 19:11:59 +02:00
Andreas Eversberg
c086e66b7c
minor cleanups
2017-05-17 20:14:37 +02:00
Andreas Eversberg
0557bbbc43
SDR: Checking given parameters with a tollerance of up to 0.001
...
Rounding errors may cause given parameters to be changed a little.
When comparing the set-values with the get-value, a small amount
of tollerance must be allowed.
Thanx to Syvain, pointing to this bug!
2017-05-17 20:06:47 +02:00
Andreas Eversberg
683078a7a0
SDR: Spectrum display will not scale FFT result
...
Instead the greatest possible width that will fit into the window will
be used. This width is 2 to the power of N.
2017-05-17 20:06:46 +02:00
Andreas Eversberg
ef7ff26793
C-Netz: SDR now uses zero-crossing to detect level changes.
...
This does not work with analog radio, but with SDR it works.
The quality should be better and the process is faster.
2017-05-17 20:06:46 +02:00
Andreas Eversberg
07e45103ef
Work on docs
2017-05-17 20:06:45 +02:00
Andreas Eversberg
9d87b5bf0f
C-Netz: Improved transmission of speech
...
The speech is now correctly ramped up and down during pause bits.
2017-05-17 20:06:44 +02:00
Andreas Eversberg
12dcc6c40f
Minor fixes on AMPS messages
...
- Flipping polarity is now performed after B/I has been applied
- Correcting sysinfo
2017-05-17 20:06:43 +02:00
Andreas Eversberg
4d10ee7c82
No "sdr" audio device option required anymore (when using SDR)
2017-05-17 20:06:42 +02:00
Andreas Eversberg
ca10048e5c
Rename filter -> iir_filter (file name and instance name)
...
This is useful when using fir_filter in the future.
2017-05-15 21:46:32 +02:00
Andreas Eversberg
d03443c4f1
SDR: Added SoapySDR's compiler flags to common/Makefile
2017-05-15 21:46:30 +02:00
Andreas Eversberg
c04d046210
SDR: Fixed SoapySDR's arguments parsing
2017-05-15 21:46:30 +02:00
Andreas Eversberg
fbdb9ece01
SDR: Allow direct IQ TX and RX instead of fm modulating a list of channels
...
This is performed by reading and writing IQ data to "sample" pointer with
channel number set to 0.
2017-05-15 21:46:29 +02:00
Andreas Eversberg
65694f3b80
SDR: disable TX or RX by setting TX or RX frequency to 0
...
This way it is possible to use SDR simplex
2017-05-15 21:46:29 +02:00
Andreas Eversberg
6e0e0c9ce8
fixup Rework on audio buffer management
2017-05-15 21:46:28 +02:00
Andreas Eversberg
9dda9e1efc
SDR: Add option to set IF bandwidth. If not defined, sampling rate is used.
2017-05-15 21:46:27 +02:00
Andreas Eversberg
1445ca2fac
SDR: Add option to send (previously recorded) IQ data instead of TX data
2017-05-15 21:46:26 +02:00
Andreas Eversberg
369bda87a9
C-Netz: Improved decoder debugging
...
FM decoder debug output is now written to text files for better
debugging of process.
2017-05-15 21:46:25 +02:00
Andreas Eversberg
8e0d7d2513
samplerate.c: Allow transcoding to lower sample rate other than 8000 Hz
2017-03-04 16:52:20 +01:00
Andreas Eversberg
3fc4fc54be
main_common: Move init and cleanup function to main function
2017-03-04 07:12:12 +01:00
Andreas Eversberg
4201717f36
Rework on audio buffer management
...
Use function to get samples to be sent to fill audio buffers to a
level. This replaces the function that only shows how much data
is in the buffer.
This way the function itself can control how much data will be
sent.
2017-03-04 06:35:38 +01:00
Andreas Eversberg
9d0e6b82b7
Work on docs
2017-03-04 06:34:04 +01:00
Andreas Eversberg
2e1999b1ee
Start streaming of sound/SDR just before main loop
...
This prevents buffer overflow during init/creation processes
2017-02-25 07:09:53 +01:00
Andreas Eversberg
04fd1ddcea
Use thread to record and playback wave files without blocking
2017-02-25 06:29:09 +01:00
Andreas Eversberg
f689244f98
C-Netz: OgK must be on first channel, so sync works correctly
2017-02-18 21:02:56 +01:00
Andreas Eversberg
438ce08add
SoapySDR support
...
There is no time stamp handling. It is just TX'ing in advance and
synchronous to received RX rate.
2017-02-18 21:02:55 +01:00
Andreas Eversberg
17b6124122
C-Netz: Remove useless -V option
2017-02-18 21:02:54 +01:00
Andreas Eversberg
58ebc15292
Add test to measure performance of FM modulation and filtering
2017-02-18 21:02:53 +01:00
Andreas Eversberg
4de1e0188d
C-Netz: Add low pass filter to eliminate high frequency noise
...
This improves the FSK decoding quite allot, especially with SDR.
2017-02-18 21:02:52 +01:00
Andreas Eversberg
290b365d67
SDR: Move FM modulation algorithms to a seperate file
2017-02-18 21:02:51 +01:00
Andreas Eversberg
4c0f8e7e95
Rework of sample rate conversion by using linear interpolation
2017-02-18 21:02:51 +01:00
Andreas Eversberg
47f74b38ce
SDR transmits with full amplitude
2017-02-18 21:02:50 +01:00
Andreas Eversberg
6a3cfd608e
Add ascii-art spectrum analyzer for SDR support
2017-02-18 21:02:49 +01:00
Andreas Eversberg
3fb2ade352
C-Netz: Fix release of call process when no dialing was received from phone
2017-02-18 21:02:48 +01:00
Andreas Eversberg
0611f62b52
Show channel number and basic info when channel was created
2017-02-18 21:02:47 +01:00
Andreas Eversberg
5f1d7bc970
C-Netz: Improve clock speed measurements.
...
Sound card's clock measurements only requires a few minutes to get sub-ppm
accuracy results.
2017-02-18 21:02:46 +01:00
Andreas Eversberg
54ed5d5f82
AMPS: Fixed setting of signal polarity when using SDR
2017-02-18 21:01:19 +01:00
Andreas Eversberg
faa3dfb7d4
C-Netz: Make average to clock measurements for a quicker result
2017-02-18 21:01:19 +01:00
Andreas Eversberg
5026e161aa
Open audio device for call (headset) after everything is prepared
...
It is not allowed to stall after trigger reading of audio device.
2017-02-18 21:01:18 +01:00
Andreas Eversberg
8cb0187133
C-Netz: Remove the obviously useless noise function for unused timeslots
2017-02-18 21:01:17 +01:00