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
e67c171035
SDR: Minor fixes in error condition handling
2017-10-22 19:23:05 +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
975e34211b
Call control: Minor logging fixes
2017-10-22 19:23:02 +02:00
Andreas Eversberg
ae29f84ed7
Fixed typo
2017-10-12 19:46:32 +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
c645ef9c14
R2000: Use correct debug category
2017-10-02 12:34:35 +02:00
Andreas Eversberg
1a4a08386c
Only dial if call is on-hook or disconnected
2017-10-02 12:34:34 +02:00
Andreas Eversberg
3f2f0fdd8c
C-Netz: Show standard deviation of bit levels instead of jitter
2017-10-02 12:34:33 +02:00
Andreas Eversberg
5ea48588e5
AMPS/TACS: Change audio level range
2017-10-02 12:34:31 +02:00
Andreas Eversberg
3e1da04f14
AMPS: Minor fixes to loopback test
2017-10-02 12:34:27 +02:00
Andreas Eversberg
f469879ed0
SDR: Use filter to remove harmonics caused by downsampling/upsampling
...
This drastically increases the signal-noise-ratio and removes co-channel
interferences. It gains CPU usage, but only on SDR threads, not on the
main thread.
2017-09-24 15:59:24 +02:00
Andreas Eversberg
ff5faa8697
SDR: Improved IQ plot display, increase dynamics of spectrum display
2017-09-24 15:57:56 +02:00
Andreas Eversberg
c1fe179d5d
AMPS: Fix 'use-after-free-bug' after destroying transaction
2017-09-24 14:11:54 +02:00
Andreas Eversberg
b6468b585d
NMT: Minor fixes on frame data
2017-09-22 16:51:47 +02:00
Andreas Eversberg
08dd180ea0
Add echo test feature to check mobile phone's mic + speaker
...
Add '-e' to command line option, but do not select MNCC nor call device
2017-09-21 20:29:30 +02:00
Andreas Eversberg
274cb7992b
SDR: Improvement of spectrum view, peaks are drawn correctly
2017-09-16 10:48:48 +02:00
Andreas Eversberg
0b7b8f12c6
work on docs
2017-09-16 00:14:41 +02:00
Andreas Eversberg
3b7c515f6f
add new libs.a to .gitignore
2017-09-11 20:42:06 +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
b6326aa473
Move commonly used German tones (A/B/C-Netz) to separate lib.a
2017-09-11 20:35:18 +02:00
Andreas Eversberg
7017fd7b3c
Give hint to alter PKG_CONFIG_PATH, if SoapySDR or UHD was not found
2017-09-11 20:31:29 +02:00
Andreas Eversberg
c6875ea412
work on docs
2017-09-03 19:13:36 +02:00
Andreas Eversberg
d28a5df024
R2000: Minor fix in channel description
2017-09-03 19:13:21 +02:00
Andreas Eversberg
9205767f94
SDR: Display spectrum graph together with channel numbers and position
2017-09-02 15:41:11 +02:00
Andreas Eversberg
496aff5a79
Add implementation of analog TV signal generator (PAL so far)
...
Quick and dirty Howto:
make && tv/osmotv --sdr-soapy --sdr-tx-gain 60 -r 15000000 -c 21 tx-fubk --sdr-tune-args "OFFSET=-3000000"
2017-09-02 07:34:50 +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
94ed39f5e2
JTACS: Implementation of the Japanese variant of TACS
2017-09-01 18:42:54 +02:00
Andreas Eversberg
489ab9506c
TACS: Fix power levels
2017-09-01 18:42:53 +02:00
Andreas Eversberg
05c516ca16
SDR: Fixed stack overflow by allocating memory instead of local buffers
2017-09-01 18:42:52 +02:00
Andreas Eversberg
eb0c123433
C-Netz: Fixed overflow bug
2017-09-01 18:42:51 +02:00
Andreas Eversberg
dfdad21e3f
C-Netz: Work on system informations, metering and call queues
...
- Make system informations configurable
- Simulate call mertering
- Support for call queues on busy voice channels
2017-09-01 18:42:51 +02:00
Andreas Eversberg
3bfba37fff
Corrected print messages in wave file processing.
2017-09-01 18:42:50 +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
3c0bcce97b
Move German tones from common code to individual implementation
2017-09-01 18:42:48 +02:00
Andreas Eversberg
d2472cfca6
Emphasis: Add filter to prevent emphasis above 4000 Hz
...
Remove obsolete filter from fsk.c.
2017-09-01 18:42:47 +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
1c2e9180a2
Radiocom 2000: Use high-pass filter to remove supervisory signal
2017-09-01 18:42:45 +02:00
Andreas Eversberg
ae2b0cce0c
B-Netz: Be more tollerant with quality of continuous tones
2017-09-01 18:42:44 +02:00
Andreas Eversberg
064d95f37e
Fixup: SDR: Show IQ data with three colors
...
Use correct threshold values to display colors
2017-09-01 18:42:42 +02:00
Andreas Eversberg
ea7cbb8675
SDR: Add option to enable TX timestamps on UHD devices (disabled by default)
2017-08-16 18:51:47 +02:00
Andreas Eversberg
8489914bf0
SDR: Add time consumption debug code
2017-08-16 18:51:46 +02:00
Andreas Eversberg
42a87c1c2f
SDR: Name SDR TX and RX threads
2017-08-16 18:51:46 +02:00
Andreas Eversberg
ee61c4362b
B-Netz: Use standard deviation to determine if an FSK frame is valid or not
2017-08-16 18:51:45 +02:00
Andreas Eversberg
41bd9999b1
B-Netz: Add metering pulse support (Gebuehrenimpuls)
2017-08-16 18:51:44 +02:00
Andreas Eversberg
275be50225
R2000: Fixes
2017-08-16 18:51:43 +02:00
Andreas Eversberg
3afcac8342
SDR: Add option to swap RX and TX frequencies (for testing)
2017-08-10 17:42:54 +02:00
Andreas Eversberg
f2d439c1ae
UHD: Remove buggy sample rate check
2017-08-10 15:59:29 +02:00
Andreas Eversberg
29244bda38
work on docs
2017-08-10 15:58:58 +02:00
Andreas Eversberg
999b6a2b4d
UHD: Make frequency settings more tollerant (+-100 Hz are accepted)
2017-08-09 17:27:14 +02:00
Andreas Eversberg
534411d660
New common FSK implementation, replaces all individual implementations
2017-08-09 17:27:13 +02:00
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