Commit Graph

158 Commits

Author SHA1 Message Date
Andreas Eversberg
ee3fbeb03b Split call control from built-in call console by using MNCC layer 2017-11-05 16:58:31 +01:00
Andreas Eversberg
b32e0ab602 Implementation of RX level squelch (for A-Netz and B-Netz)
Use -S <dB> for setting RF level or use -S auto for auto level.

When squelch closes, audio is muted. If squelch is closed for some
seconds (depending on network), call is released. (RF loss condition)

The previous loss detection has been removed
2017-10-22 19:23:08 +02:00
Andreas Eversberg
f7a0e4622b Display channel offset with TX and RX channel frequencies on startup 2017-10-22 19:23:06 +02:00
Andreas Eversberg
f7476bce41 NMT-900: Handle channels >= 1025 correctly 2017-10-22 19:23:04 +02:00
Andreas Eversberg
3218d1a8e0 NMT: Fixed segfault when decoding certain (invalid) messages 2017-10-22 19:23:03 +02:00
Andreas Eversberg
595fd845e0 NMT: Removed double implementation of caller ID encoding 2017-10-12 19:46:32 +02:00
Andreas Eversberg
ba036de226 Add function to display measurements on screen
Use 'm' key to toggle display.
2017-10-12 19:46:30 +02:00
Andreas Eversberg
e84d7a082c Use braces to make GCC happy 2017-10-02 12:34:38 +02:00
Andreas Eversberg
b6468b585d NMT: Minor fixes on frame data 2017-09-22 16:51:47 +02:00
Andreas Eversberg
5b1956fe49 Move sms and dms code (NMT) to separate lib.a 2017-09-11 20:37:03 +02:00
Andreas Eversberg
a52c89800c SDR: Split SDR config from main_mobile.c to sdr_config.c 2017-09-02 07:34:48 +02:00
Andreas Eversberg
cff7622f5c Move mobile phone specific code from libcommon.a to libmobile.a 2017-09-01 18:42:49 +02:00
Andreas Eversberg
743d147d16 SDR: Turn TX power off if requested by network
The power level is ramped smoothly within 1 ms up or down.

R2000, AMPS and C-Netz turn off power when voice channel is not i use.

C-Netz turns off power between OgK timeslots.
2017-09-01 18:42:46 +02:00
Andreas Eversberg
534411d660 New common FSK implementation, replaces all individual implementations 2017-08-09 17:27:13 +02:00
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
7c9ce960d7 Fixes of checking digits 2017-08-08 12:54:21 +02:00
Andreas Eversberg
0cbd9657d2 Move Hagelbarger error correction code from NMT to common code
It will be used by Radiocom 2000 also.
Some minor fixes and improvements apply.
2017-08-08 12:53:48 +02:00
Andreas Eversberg
6c64025717 Move FFSK modem from NMT to common code, so it can be used by other networks 2017-08-08 12:53:34 +02:00
Andreas Eversberg
3274812eab NMT-900 System implementation
NMT can now be run as 450 or 900 Network.
2017-08-08 12:52:45 +02:00
Andreas Eversberg
0c9de251be NMT: Implement Hagelbarger Code
This will correct burst errors of received messages. If the message
is too corrupted, it will be ignored, because some element may not
match then. The digits and line signals are checked for consistency,
since they are repeated serveral times in a message.
2017-08-08 12:52:29 +02:00
Andreas Eversberg
cd9cb9a107 Minor fix for NMT debug output 2017-07-15 12:45:20 +02:00
Andreas Eversberg
538b4a42ec Add wave file playback to replace TX audio 2017-07-15 07:38:16 +02:00
Andreas Eversberg
557d19de66 NMT: Show trafic areas in hex and allow to select unsupported areas 2017-07-15 07:38:14 +02:00
Andreas Eversberg
3774519631 NMT: Fixed "use after free" bug 2017-07-15 07:38:13 +02:00
Andreas Eversberg
7af886c600 NMT: Fixed NMT digit decoding 2017-07-15 07:38:13 +02:00
Andreas Eversberg
d52f4cd29d NMT: Mark Benelux and Czech/Slovak networks as tested
I have tested the network with B/NL/L and CZ/SK phones, and they work!
2017-06-15 18:28:26 +02:00
Andreas Eversberg
1aebedc66a NMT: Fixed line signal description 2017-06-11 09:01:21 +02:00
Andreas Eversberg
7a9762e28e NMT: Disable Supervisory signal during DMS (SMS) transfer and use Timeout
There is no Supervisory signal during DMS transfer, so there must be
no timeout for Supervisory signal. Instead, the SMS layer will timeout
after some seconds without receiving data.
2017-06-11 08:13:52 +02:00
Andreas Eversberg
19afb792b5 NMT: Fix and adjustements to supervisory signal detection 2017-06-10 17:11:47 +02:00
Andreas Eversberg
50b2021d21 NMT 450: Support for other European counties, like Belgium, Czech, Slovakia 2017-06-10 13:08:51 +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
6adfcf7466 Status display
Alows to show status of current channels and users
2017-06-10 13:08:21 +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
3fc4fc54be main_common: Move init and cleanup function to main function 2017-03-04 07:12:12 +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
0611f62b52 Show channel number and basic info when channel was created 2017-02-18 21:02:47 +01:00
Andreas Eversberg
f72c53757d B-Netz, NMT: Improved check for minimum required sample rate 2017-02-18 21:01:15 +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
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
2d8d7e62c1 Use global init/cleanup function 2017-02-18 21:00:58 +01:00
Andreas Eversberg
bc028cd4d3 NMT: Make supervisory signal default, also allow setting per channel. 2017-02-18 21:00:57 +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
d447be5e26 NMT: Rework on FSK process, no more requirement for special sample rates 2017-01-07 06:28:20 +01:00