Commit Graph

128 Commits

Author SHA1 Message Date
Sylvain Munaut b1ad269da1 l1/a5: Fix typo in memset
Found by Coverity (Fixes CID 1042971)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-09 01:08:14 +02:00
Sylvain Munaut d84bdfd598 gmr1_rx: Better DKAB handling
Now that the SDR part of DKAB can tell us if it found one or
not, we can do better tracking.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut 7be04d6567 gmr1_rx: Don't count the borders when computing energy
Since the 'burst' vector often include some margin, the center
will be more representative of the real average energy.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut 0ddd957165 gmr1_rx: Don't try to low pass frequency correction
Some receivers (like rtl-sdr) have fast changes in the frequency
error, especially while they're warming up and this prevents good
tracking.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut ab3af93a19 gmr1_rx: Fix warnings about unused var
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut c7735278b3 sdr/pi4cxpsk: Use conjugate rather than a complex inverse
Effect on phase is the same ...

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut c67ace3d2b gsmtap: Remove type #define. Those are in mainline gsmtap.h now
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut 2b642535b6 sdr/dkab: Add validation of DKAB to differentiate for nothingness
We compare the energy in the peaks with the energy in the valley,
that should be significantly higher.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Sylvain Munaut 028f0bd95d l1/tch9: Fix typo in header
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-07-06 13:14:56 +02:00
Alexander Huemer 76905d5953 Makefile.am: Use AM_CPPFLAGS
Since automake 1.13 INCLUDES is depricates and causes a warning

Signed-off-by: Holger Hans Peter Freyther <zecke@selfish.org>
2013-06-12 08:08:32 +02:00
Sylvain Munaut cc1e96d828 Update .gitignore
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-10-14 21:45:56 +02:00
Sylvain Munaut 76db8c2c13 gmr1_rx: First draft of FACCH9/TCH9 decoding
Not very clean but gmr1_rx will be replaced by the live version
'soonish'.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-10-14 21:13:15 +02:00
Sylvain Munaut 797baad4a6 gmr1_rx: Rename tch_state to tch3_state in preparation for TCH9 support
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-10-14 21:11:04 +02:00
Sylvain Munaut d0d8406004 l1/tch9: Add TCH9 channel coding support
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 23:30:47 +02:00
Sylvain Munaut feb82555c6 l1/interleave: Add support for inter-burst interleaving
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 23:30:46 +02:00
Sylvain Munaut b067a532de l1/punct: Extend the puncture table generation to support TCH6/9
The scheme used in TCH6/9 is a bit special, with different puncture
mask for the beginning / center / end. It also doesn't repeat the
mask all the way through.

This adds support for this kind of stuff.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 23:30:46 +02:00
Sylvain Munaut e7af1dab37 l1/facch9: Add FACCH9 channel coding support
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 23:30:46 +02:00
Sylvain Munaut db40ee2e21 utils/gmr_multi_rx: Fix fg_thread init with new API
Required to build with recent GNURadio.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 20:13:30 +02:00
Sylvain Munaut 4fd7ab4369 utils/gmr_multi_rx: Add explicit dependency to uhd
gnuradio-uhd itself doesn't pull UHD and depending on your linker this
might be required for proper build

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-09-10 20:13:30 +02:00
Sylvain Munaut 01b82dd8b3 Follow the rename from libosmosdr -> libosmodsp
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-05-11 21:10:49 +02:00
Sylvain Munaut a45956af0b doc: Fix the Doxygen section endings
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-04-18 22:17:22 +02:00
Sylvain Munaut 45c84b6a4e misc: Add software to generate the G/g matrices for the FACCH3 codes
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-14 13:51:53 +01:00
Sylvain Munaut ade05aaf4d l1: Add RACH channel coding/decoding routines
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-14 11:24:52 +01:00
Sylvain Munaut 7f94db9417 l1: Do a bit of #include cleanup, make sure to include what's needed
... and not rely on someone to get it for us.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-14 10:56:29 +01:00
Sylvain Munaut a4e796324d l1/a5: Use better numerotation for LFSR bits
bit 0 == (1<<0) is feedback
bit N-1 is the highest bit.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-01 19:49:34 +01:00
Sylvain Munaut 83e63c2009 apps/gmr1_rx: Add deciphering support
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-02-01 08:05:18 +01:00
Sylvain Munaut c70e5208d5 l1/a5: Add implementation of the GMR-1 A5/1 ciphering algorithm
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-02-01 08:04:44 +01:00
Sylvain Munaut 626193583d apps/gmr1_rx: Add TCH3 channel follow
Simple "follow first TCH"

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-17 16:39:16 +01:00
Sylvain Munaut 135ce0561e sdr/pi4cxpsk: Add method to detect modulation order
Just another possible method to differentiate FACCH3 from TCH3

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-17 16:04:58 +01:00
Sylvain Munaut 010025b7c9 sdr/pi4cxpsk: Add method to detect burst type by correlating training sequences
The _gmr1_pi4cxpsk_sync_find method is modified to:
 - Return the pwr peak of the match
 - Divide the peak by the number of corr point (to scale it appropriately)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-17 16:04:58 +01:00
Sylvain Munaut 80e0aabf91 sdr/dkab: Add support for Dual Keep Alive Bursts demodulation
The actual data out of the demodulation is not tested tough since
the upper layers can't handle that yet.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-16 14:11:16 +01:00
Sylvain Munaut 240dfdf22f sdr/pi4cxpsk: Use 'float' version of carg
Data are float anyway ...

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-16 14:11:16 +01:00
Sylvain Munaut 2556c6d04b sdr: Fix documentation references error (to 05.003 instead of 05.004)
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-16 14:11:16 +01:00
Sylvain Munaut ecceb996aa l1/tch3: Add support for TCH3 (speech) channel coding
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-15 10:12:03 +01:00
Sylvain Munaut 069fa2e094 l1/conv: Add the special tail-biting code used in TCH3
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-14 23:02:53 +01:00
Sylvain Munaut 77037d37bc l1/facch3: Add support for FACCH3 channel coding
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-14 23:02:53 +01:00
Sylvain Munaut 98db75d85e l1/punct: Add method to generate the puncturing array from a gmr1_puncturer
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-14 23:02:53 +01:00
Sylvain Munaut 88ad4a48fc l1/{bcch,ccch}: Add missing doc for conv_rv parameter and return value
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-14 22:25:22 +01:00
Sylvain Munaut 330d7ce0af l1/ccch: Fix missing const qualifier on gmr1_ccch_{encode,decode}
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-12-14 22:25:22 +01:00
Sylvain Munaut dc50d50bb7 l1: Use constructor attribute to init the channel coders
Much more elegant than doing a manual check ...

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-11-19 21:30:20 +01:00
Sylvain Munaut 9cfb493b81 apps/gmr1_rx: Better formatting of the FN debug status line
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-11-19 19:26:27 +01:00
Sylvain Munaut 1e7e483ff6 apps/gmr1_rx: Fix wrong initial value for bcch_energy
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-11-19 19:26:27 +01:00
Sylvain Munaut 800942cd0a l1: Couple of fixes in the documentation of bcch/ccch channe coding
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-30 21:42:45 +01:00
Sylvain Munaut a145d368a1 gsmtap: Send proper FN & TN
... and adapt gsm1_rx consequently

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-30 21:32:40 +01:00
Sylvain Munaut 9d1af55983 apps/gmr1_rx: Add proper TDMA sync yielding correct frame number
This way the FN & TN are properly set.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-30 21:31:10 +01:00
Sylvain Munaut e9509fa521 apps/gmr1_rx: Add CCCH detection/processing
(only in BCCH/CCCH channels)

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-19 08:35:48 +02:00
Sylvain Munaut a41f641457 l1/ccch: Add CCCH (PCH/AGCH) channel coding
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-19 08:34:25 +02:00
Sylvain Munaut 63e9d84adb sdr/fcch: Add equation for the up/down/dual chirps doc
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-19 08:31:18 +02:00
Sylvain Munaut 93848d25af l1/bcch: Add 'const' to input arguments of channel coding funcs
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-18 22:33:39 +02:00
Sylvain Munaut 8b388923e7 apps/gmr1_rx: Protect against negative alignement
In the code we have margin because of START_DISCARD, but if someone
modifies that it could cause an unexpected crash.

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2011-10-17 22:04:46 +02:00