Commit Graph

721 Commits (master)

Author SHA1 Message Date
Andreas Eversberg d2c4ca4fa9 Implementation of Advanced Mobile Phone Service (AMPS) 2016-06-17 17:03:29 +02:00
Andreas Eversberg 7d5d3da8d3 Add function to display wave form from input/loop
Use 'w' to toggle display.

Move terminal input processing and main loop to main_common.c
2016-06-17 17:03:28 +02:00
Andreas Eversberg 4e0e13cb2d work on docs 2016-06-17 17:03:27 +02:00
Andreas Eversberg 1d20119d85 common code: Call control allows to re-dial after disconnect
No hangup key required before that anymore.
2016-06-12 16:16:37 +02:00
Andreas Eversberg 7cfd11eb17 common code: Add feature to select debug category rather than showing all 2016-06-12 16:14:29 +02:00
Andreas Eversberg 051cc81b13 C-Netz: Move transaction routines to seperate file 2016-06-12 16:11:20 +02:00
Andreas Eversberg 26593ed034 NMT: fix minor bug 2016-06-12 16:11:20 +02:00
Andreas Eversberg 4d22b11855 common code: Add debug #define for capture generated singal
Used for fundamental debugging of encoded signal
2016-06-12 16:11:20 +02:00
Andreas Eversberg c933250685 Add dsp mode change fuction to A and B Netz, fixed NMT 2016-06-12 16:11:20 +02:00
Andreas Eversberg 997f8eda43 B-Netz: Add timer for switching back from calling channel
The timer ensures that the paging sequence is sent out by sound card before
switching back to traffic channel
2016-05-29 17:17:49 +02:00
Andreas Eversberg 1ceb3026dd Fixed link problem with alsa lib
Thanx to Martin for pointing to this problem.
2016-05-16 18:41:21 +02:00
Andreas Eversberg 90dbc0cbd7 C-Netz: Debug fixes 2016-05-15 20:44:07 +02:00
Andreas Eversberg 50136d7e8a NMT: Typo in channel list 2016-05-15 20:43:58 +02:00
Andreas Eversberg e9640c0cd8 C-Netz: Fix TX polarity selection 2016-05-15 20:43:49 +02:00
Andreas Eversberg 9ecb87f3e6 Fixing station ID command line parameter 2016-05-15 20:43:38 +02:00
Andreas Eversberg 7aa2445b47 Move amplitude (level) debugging to debug.c 2016-05-15 20:37:06 +02:00
Andreas Eversberg adc3270dc0 Acknowledgements 2016-05-13 20:44:47 +02:00
Andreas Eversberg 60d9a7b496 C-Netz: Advice about requirement of emphasis done by software 2016-05-13 19:23:43 +02:00
Andreas Eversberg c2cfce2373 wip: docs 2016-05-13 09:37:03 +02:00
Andreas Eversberg 46fa72894e C-Netz: Calibration/fix processing of tone levels on TX and RX side
FSK and compander levels are adjusted.

Eliminate offsets between subsequent speech chunks. This is done by
high-pass filter. An offset is not passed to the filter.

Do correct audio processing chain:
 time compress -> compressor -> scrambler / pre-emphasis -> TX
 RX -> de-scrambler / de-emphasis -> expander -> time expand
2016-05-13 09:37:03 +02:00
Andreas Eversberg 5a9c9c7401 C-Netz: Send 5280 Hz test tone on idle speech channel 2016-05-13 09:37:03 +02:00
Andreas Eversberg bbab972b51 NMT: Fixup paging on other channel 2016-05-13 09:37:03 +02:00
Andreas Eversberg 69ccdb99b5 NMT: Calibration of tone levels on TX and RX side 2016-05-13 09:37:03 +02:00
Andreas Eversberg 27e8b03df5 Fixup typo on jitter code 2016-05-13 09:37:02 +02:00
Andreas Eversberg 42eefe90bf common code: Fixed de-emphasis by adding high pass filter
This high-pass filter filters out DC and frequencies below 300 Hz.
Now de-emphases will not cause low frequencies to saturate audio level
range or cause too high levels on low frequencies.
2016-05-13 09:37:02 +02:00
Andreas Eversberg 3a54f46b81 C-Netz: Fixup debug output at database 2016-05-13 09:37:02 +02:00
Andreas Eversberg e2a9c2c6a5 Automatic FSK polarity selection on TX side
This is done by simulating two cells with different polarities.
On first message from mobile station, the cell with the correct
polarity is used, the other is disabled.

On RX side the polarity is not selected, since FSK decoder detects
polarity for every frame.
2016-05-13 09:37:01 +02:00
Andreas Eversberg 021c34a899 Add geo locations of A-Netz and B-Netz towers. (not exact location) 2016-05-08 16:11:13 +02:00
Andreas Eversberg 57ba648ac4 C-Netz: Add tiny database to track if phones are online
Reject calls, if not online.

Use an interval to check if the phones are still online.
2016-05-08 15:53:00 +02:00
Andreas Eversberg bae12156a2 common code: Add input gain option 2016-05-08 15:49:45 +02:00
Andreas Eversberg ba91ee82a7 Work on documentation 2016-05-08 15:49:39 +02:00
Andreas Eversberg 1ce67c14e9 C-netz: Tuning scrambler 2016-05-08 15:49:29 +02:00
Andreas Eversberg 7434e21dc2 Multi transceiver support
This can be multiple transceivers on multiple sound cards.

Two transceivers can be bundled on one sound device as well, using both channels.
2016-05-08 15:48:13 +02:00
Andreas Eversberg de0ce7ba98 C-Netz: Correct clear cause on clearing by mobile station 2016-05-08 15:47:01 +02:00
Andreas Eversberg 8b6b87d8cc C-Netz: Lowest mobile station power by default 2016-05-08 15:46:51 +02:00
Andreas Eversberg 95f44e9840 C-Netz: Fixed typo 2016-05-08 15:46:43 +02:00
Andreas Eversberg 11302272ce C-Netz: Minor fix on clock speed indication 2016-05-08 15:46:34 +02:00
Andreas Eversberg 97c9eee322 Fix display of correct program name 2016-05-08 08:11:35 +02:00
Andreas Eversberg 97d4e908a2 Fix test binary location in .gitignore 2016-05-08 08:11:26 +02:00
Andreas Eversberg 38692e430b B-Netz: Calibration of tone levels on TX and RX side 2016-05-08 08:11:17 +02:00
Andreas Eversberg 11487eefe8 B-Netz: Minor fixes on signals 2016-05-08 08:11:02 +02:00
Andreas Eversberg aae58d5a68 A-Netz: Calibration of tone levels on TX and RX side 2016-05-06 07:05:52 +02:00
Andreas Eversberg b73894ac49 B-Netz / NMT: minor changes at signal detection 2016-05-06 07:05:40 +02:00
Andreas Eversberg 47dbf094d9 NMT: Changes in parity check 2016-05-06 07:05:30 +02:00
Andreas Eversberg 28e7f1e9d1 common code: Remove DC level before using Goertzel filter
A DC level degrades the quality of the filtered result
2016-05-01 15:15:19 +02:00
Andreas Eversberg 0c99848120 common code: Make preemphasis 0 dB @ 1000 Hz 2016-05-01 15:14:57 +02:00
Andreas Eversberg 16acdbf59d Implementation of C-Netz (German mobile telephone system) 2016-04-24 15:19:00 +02:00
Andreas Eversberg 4b3e3385b5 common code: Fix sample rate conversion 2016-04-24 15:18:59 +02:00
Andreas Eversberg 4356c93afa common: Add pre and de emphasis, if the radio does not support it
Connect to the oscillator of the transmitter - good girl!
You need to enable pre emphasis in this case.

Connect to the discriminator of the receiver - good boy!
You need to enable de emphasis in this case.
2016-04-24 15:14:56 +02:00
Andreas Eversberg 5062628e52 NMT: Calculate quality of sync sequence and drop in case of bad quality
This eliminates chance of findig a sync sequence in noise or speech
2016-04-24 15:14:56 +02:00