Commit Graph

311 Commits

Author SHA1 Message Date
Andreas Eversberg
ffd3b848e1 Implementation of "Radiocom 2000", the analog French mobile network 2017-08-09 17:27:12 +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
f5e4058c6f work on docs 2017-08-08 12:54:56 +02:00
Andreas Eversberg
d20b41a457 Fixed command line option for call audio device (headset)
--call-device option now works.

Thanx to Fabricio pointing to this bug.
2017-08-08 12:54:45 +02:00
Andreas Eversberg
7c9ce960d7 Fixes of checking digits 2017-08-08 12:54:21 +02:00
Andreas Eversberg
5090f5a18d SDR: Show IQ data with three colors to detect input overdrive
green: up to 0.45
yellow: between 0.45 and 0.9
red: above 0.9
2017-08-08 12:54:03 +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
92ce6d4a42 SDR: Using threads for read and write when doing resampling 2017-08-08 12:53:02 +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
a088536533 Minor fix for IQ data display 2017-07-15 12:45:20 +02:00
Andreas Eversberg
fda224c27f Fixing and improving SDR support (SoapySDR and UHD)
- Soapy SDR now works.
- Channels can be selected.
- Antennas can be listed and selected.
- Device args, tune args, stream args can be specified.
2017-07-15 12:45:19 +02:00
Andreas Eversberg
538b4a42ec Add wave file playback to replace TX audio 2017-07-15 07:38:16 +02:00
Andreas Eversberg
aa20d4e50e Cleanup common/Makefile.am 2017-07-15 07:38:15 +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
085ceb9173 Minor fixes to compandor 2017-07-15 07:38:12 +02:00
Andreas Eversberg
a12329a884 Work on docs 2017-07-15 07:38:11 +02:00
Andreas Eversberg
3ce50f8ab3 AMPS: Fixes in message display and function names 2017-07-15 07:38:10 +02:00
Andreas Eversberg
3788b3e8a5 TACS support (variations added to AMPS code)
These are:

- Bandwidth only 25 KHz, so lower deviations
- Data rate only 8000 KHz
- SID is called AID (Area ID)
- MIN1 coding is different
2017-07-15 07:38:09 +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
3e86ef95c4 B-Netz: Minor printf fix 2017-06-10 17:49:59 +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
dbdedfe1a1 AMPS: Fixed selecting right CRC values for FOCC words 2017-06-10 13:08:26 +02:00
Andreas Eversberg
d23672354f Add option to set MNCC socket name (to run multiple base stations) 2017-06-10 13:08:26 +02:00
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