Commit Graph

103 Commits

Author SHA1 Message Date
Andreas Eversberg
8ce3ff455d Add incoming answer to call control, also allow to send recall tone 2017-08-09 17:27:08 +02:00
Andreas Eversberg
538b4a42ec Add wave file playback to replace TX audio 2017-07-15 07:38:16 +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
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
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
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
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
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
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
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
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
faa3dfb7d4 C-Netz: Make average to clock measurements for a quicker result 2017-02-18 21:01:19 +01:00
Andreas Eversberg
8cb0187133 C-Netz: Remove the obviously useless noise function for unused timeslots 2017-02-18 21:01:17 +01:00
Andreas Eversberg
7e45f556ce Correcting all levels and move all remaining integer samples to sample_t
The leves are based on the standards of each mobile network. They
are adjusted to the specified frequency deviation now.
2017-02-18 21:01:13 +01:00
Andreas Eversberg
bd7ccc5fa0 Add global DC-Filter and remove all individual DC-Filters 2017-02-18 21:01:12 +01:00
Andreas Eversberg
71e556e7ff Work on emphasis filter: Neutral @ 1000 Hz; Use filter before de-emphasis 2017-02-18 21:01:11 +01:00
Andreas Eversberg
7ea3bc188d Move samples of int16_t format to sample_t, that is of type double
This prepares the correction of all levels
2017-02-18 21:01:08 +01:00
Andreas Eversberg
538a959128 Indexing tables by casting index to unsigned integer only 2017-02-18 21:01:06 +01:00
Andreas Eversberg
ac0da3f76e Filter improvement: LP and HP filters, added test function
The -3 dB level at cut-off frequency is now maintained for multiple
iterations.
2017-02-18 21:01:04 +01:00
Andreas Eversberg
2d8d7e62c1 Use global init/cleanup function 2017-02-18 21:00:58 +01:00
Andreas Eversberg
a5fd375237 Fixed typos 2017-02-18 21:00:55 +01:00
Andreas Eversberg
fee4846c3f SDR forces default settings: emphasis and FSK polarity 2017-02-18 21:00:52 +01:00
Andreas Eversberg
8b9277615d Neu structure for the paging process (B-Netz)
Paging tones are not created within sound_alsa.c
The audio API is now responsible to switch to paging channel.
In case of SDR, the sdr.c will switch frequency offset.
2017-02-18 21:00:50 +01:00
Andreas Eversberg
57993e3e48 Support for UHD SDR interface 2017-02-18 21:00:49 +01:00
Andreas Eversberg
c5cf88ce57 Prepare for SDR: Add bandwidth and deviation info to sender instance 2017-02-18 21:00:47 +01:00
Andreas Eversberg
9ff8c3bb25 Rework on audio interface
Sound instance is now called audio instance and uses funcation pointers.
This gives a clean interface to be exchanged with other technologies,
linke SDR.
2017-02-18 21:00:45 +01:00
Andreas Eversberg
d54d3ac265 prepare audio handling for multi carrier SDR 2017-01-07 06:28:24 +01:00
Andreas Eversberg
713b1ab118 Rename functions and structure of biquad lowpass filter 2017-01-07 06:28:23 +01:00
Andreas Eversberg
2d0bc92cde C-Netz: Make demodulation buffer size dynamic 2017-01-07 06:26:50 +01:00
Andreas Eversberg
a37dfe38ab C-Netz: Fixed double free bug 2017-01-07 06:26:49 +01:00
Andreas Eversberg
3400f555fe Add common function to give hotkey help
* Key to dial and hangup
* Key to display wave form
2016-12-09 16:42:38 +01:00
Andreas Eversberg
7585f9c22d Add function to change dsp state, more debug with channel info 2016-12-09 16:34:33 +01:00
Andreas Eversberg
27c6e3d860 C-Netz: Add code documentation... 2016-12-01 17:59:08 +01:00
Andreas Eversberg
e34d74aa23 C-Netz: Simplifying TX signal clock sync between two channels 2016-11-30 18:09:38 +01:00
Andreas Eversberg
0b43b63d1f Fixed command line option descriptions 2016-11-29 10:59:09 +01:00
Andreas Eversberg
d52d0242bf Output enhancements
* no more flicker on wave form display while scrolling
* dialing console gets cleared/overwritten correctly
* fixes on stderr output
2016-11-29 07:49:21 +01:00
Andreas Eversberg
b1c452cf12 Changed command line options
* All lower case options define common options
* All upper case options define network specific options
2016-11-27 22:06:47 +01:00
Andreas Eversberg
f911717aa4 C-Netz: Minor coding style changes, no changes to process 2016-11-22 19:09:05 +01:00
Andreas Eversberg
2a4abc62b2 Move realtime scheduling and signal handling to common code 2016-11-13 06:37:56 +01:00
Andreas Eversberg
c6d3a41b81 C-Netz: Increment error counter only when trying to reach the phone 2016-10-23 11:50:02 +02:00
Andreas Eversberg
1ea95de120 C-Netz: Use emphasis with 200 uS time constant 2016-10-23 08:46:05 +02:00