Commit Graph

85 Commits

Author SHA1 Message Date
Andreas Eversberg 0200b8dc44 Add power control to AM (power on/off per sample) 2019-12-08 17:26:47 +01:00
Andreas Eversberg 986e933187 Add support for AM to libmobile and libsdr 2019-12-08 17:26:44 +01:00
Andreas Eversberg e3197eec42 Rename dbm0 (level) to speech (level)
In mobile communications we use speech level instead of milliwatts.
The deviation (FM) is always based on speech level, not on 1 milliwatt.
2019-12-08 17:24:36 +01:00
Andreas Eversberg b2c0b64b2d Audio level of patterns were too loud. 2019-12-04 17:26:50 +01:00
Andreas Eversberg 4053677c76 Modem emulator for "Datenklo" with AM7910/AM7911 emulation 2019-11-29 15:58:59 +01:00
Andreas Eversberg f95a1520bf minor code cleanup 2019-11-29 15:58:59 +01:00
Andreas Eversberg 4a185a4307 Describe if audio device exists, but does not support both directions 2019-11-29 15:58:32 +01:00
Andreas Eversberg 5da09b4964 New color for options debugging 2019-11-29 15:58:32 +01:00
Andreas Eversberg e6dd146b70 Bugfix: Correct handling of n in strncat() 2019-11-29 15:58:32 +01:00
Andreas Eversberg 0044988e16 FSK demodulator: Also report bits that have duration < 0.5 2019-11-29 15:58:32 +01:00
Andreas Eversberg 41f8066d2f Add filter switch to FSK modulator 2019-11-29 15:58:32 +01:00
Andreas Eversberg ee26e33e4d Split FSK modem code into separate modulator and demodulator 2019-11-29 15:58:32 +01:00
Andreas Eversberg 6a7117ecf7 MTS/IMTS: (Improved) Mobile Telephone Service
Implementation of the 0G Mobile Phone Network of US and Canada

MTS or IMTS mode is selectable, als well as 5 or 7 digit mode.
2019-08-30 17:17:10 +02:00
Andreas Eversberg e443069fb5 Fixed performance issue with IIR filter
Passing samples with zero value (0.0) causes very slow processing of
IIR filter on my test machine 'nuedel'. I don't know why.
To solve this, I add a very small number to each input sample.
2019-08-26 21:10:39 +02:00
Andreas Eversberg 8d0d57d2b9 Fixed an unitialized-buffer bug. 2019-08-26 21:10:37 +02:00
Andreas Eversberg 1e9cab4959 Fixed use-after-free bug (config file handling) 2019-08-26 21:10:34 +02:00
Andreas Eversberg 0f6348e479 SDR: Use greater offset from center frequency, if only one channel is used. 2019-08-26 21:10:31 +02:00
Andreas Eversberg e0e8c7f469 Allow giving alphanumeric channels (Prepare for IMTS) 2019-08-26 21:10:20 +02:00
Martin Hauke f5583953e6 Fixed many typos in output and source code comments 2019-07-15 21:14:52 +02:00
Andreas Eversberg f243e3a626 Output ASCII art image after all init functions (inside main_mobile.c) 2019-06-30 14:51:01 +02:00
Andreas Eversberg ea98b49372 SDR: Display DC line (center frequency) in the spectrum view 2019-05-30 21:08:23 +02:00
Andreas Eversberg d82fff41cb SDR: Move center frequenc (DC) away from channels
If one channel is used, shift the center frequency down by half of the bandwidth.

If more channels are used, select a center frequency between two channels close to the center, but equal distance.

Show the spectum layout on startup.

This patch reverts b31bc0b37d
2019-05-30 21:07:41 +02:00
Andreas Eversberg fd17cfac16 Minimum frequency must be 8000 Hz 2019-05-30 18:19:06 +02:00
Andreas Eversberg b31bc0b37d SDR: Move channel away from center frequency, to avoid bad RX 2019-01-02 15:57:54 +01:00
Andreas Eversberg f8b836182f Make run faster on ARM CPUs using fast math approximation
Use --fast-math to use sine/cosine tables and approximate atan2.
2018-11-10 15:18:28 +01:00
Andreas Eversberg 393e54b817 Compandor: Remove unused option for unaffected level 2018-10-14 13:07:25 +02:00
Andreas Eversberg d058927e2d Rework of displaying supervisory info: NMT and AMPS
Using lower rate to show debug info of supervisory signal.

Display supervisory info for NMT and AMPS at measurement display screen.
2018-08-31 20:05:38 +02:00
Andreas Eversberg 9454702944 SDR: Add presets for LimeSDR-Mini 2018-08-25 10:25:25 +02:00
Andreas Eversberg f5c4557051 SDR: Fix level range of IQ date; must not exceed range of -1 .. 1
LimeSDR mini (and maybe others) do not want IQ data to become a value below
-1 or above 1. This happens slightly when applying the IIR filter after
upsampling. To prevent this, we scale down the IQ level a little bit.

To test the problem:
- set the scale level to 1.0, so it does not take effect
- use LimeSDR mini
- use upsampling (sample rate differs SDR sample rate)
- run loopback mode 2 (-l 2)
- IIR filter must be initialized with 2 or more iterations to take effect
- check linear IQ graph; it will then plot dots inside the circle
2018-08-25 08:13:16 +02:00
Andreas Eversberg 8b1aa76168 SDR: Add clock source selection, untested yet 2018-06-24 11:36:56 +02:00
Andreas Eversberg b89251ee1a Fixed -t (--tone) option 2018-05-27 06:04:09 +02:00
Andreas Eversberg 6b04026488 SoapySDR: Flip initialization of RX and TX, so LimeSDR works with frequencies below 30 MHz 2018-05-21 19:39:09 +02:00
Andreas Eversberg 6e52be6158 Add real-time scheduling to osmotv and make it default for all base stations
This is required to drastically reduce the latency of the thread execution.
2018-05-21 19:39:09 +02:00
Andreas Eversberg ad4973cdca Fix compiler warning in conjunction with strncpy 2018-05-21 19:39:09 +02:00
Andreas Eversberg 9d39ac393e Update ImageMagick support to API version 7 2018-05-21 19:39:09 +02:00
Andreas Eversberg 5df7f92647 Refactoring command line option handling
* Use own function to define and parse command line options

 * Command line options can be defined by config file also

 * --limesdr allows to auto-set required SDR option for LimeSDR
2018-05-21 19:39:09 +02:00
Andreas Eversberg e74b7442c6 Make LimeSDR tune rx to tx frequency 2018-05-21 19:39:09 +02:00
Andreas Eversberg bfacc6d232 Add 'osmoradio', an analog radio (FM/AM)
This radio can be a receiver or a transmitter or both simultaniously.
2018-02-16 15:54:42 +01:00
Andreas Eversberg 45771bb309 Add libam, a library to do AM modulation and demodulation 2018-02-16 15:54:42 +01:00
Andreas Eversberg df4c687ff1 Add libclipper, a library to 'smoothly' clip overdriven audio levels 2018-02-16 15:54:41 +01:00
Andreas Eversberg 49a05ee2bb Improved audio (sdr) handling 2018-02-16 15:54:40 +01:00
Andreas Eversberg e41badf850 Improved wave playback 2018-02-16 15:54:40 +01:00
Andreas Eversberg 3f92b0b3ba Improved emphasis 2018-02-16 15:54:39 +01:00
Andreas Eversberg e59ea04cd6 Improving and cleaning configure script 2018-02-16 15:53:48 +01:00
Andreas Eversberg 65d284403e libwave: Use libdebug for debugging messages. 2018-02-15 08:00:19 +01:00
Andreas Eversberg 9e98578f3d Make libdebug not depend on libdisplay 2018-02-15 08:00:19 +01:00
Andreas Eversberg ee561f29c8 Minor debug message corrections 2018-02-15 08:00:18 +01:00
Andreas Eversberg 73c656eddf Fix compiler warnings 2018-02-15 08:00:15 +01:00
Andreas Eversberg e7016f9f02 Make sound card support (Alsa) optional 2018-02-15 08:00:15 +01:00
Andreas Eversberg 5c9964ff19 libdisplay: Removing dependency from libmobile 2018-02-15 08:00:14 +01:00