aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2018-12-29Improve voice boundary detectionVasil Velichkov1-1/+22
Decode Alerting and Progress messages and if the in-band information flag is set start decoding the voice
2018-12-29Add TCH/H decoder block with AMR multirate supportVasil Velichkov4-0/+419
Add new TCHH channel mode Add two new optional arguments -m CHAN_MODE, --mode=CHAN_MODE Channel mode. Valid options are 'BCCH' (Non-combined C0), 'BCCH_SDCCH4'(Combined C0), 'SDCCH8' (Stand-alone control channel) 'TCHF' (Traffic Channel, Full rate), 'TCHH' (Traffic Channel, Half rate) --sub-channel=TCH_H_CHANNEL TCH/H sub-channel. [default=0] --multi-rate=MULTI_RATE The MultiRrate configuration element from the Assigment Command message. Example: 28111a40. See 3GPP TS 44.018 - 10.5.2.21aa MultiRate configuration Example: grgsm_decode -m TCHH --sub-channel 0 --multi-rate 2811 -o voice.amr ...
2018-12-29Move HR demapping into a separate blockVasil Velichkov5-8/+350
2018-12-29Add HR demappingAndrew Artyushok2-6/+8
2018-12-28transmitter/txtime_setter: fix error print syntax errorPiotr Krysik1-1/+1
2018-12-28lib/trx, lib/transmitter: Include grgsm/endian.hDavid Holm3-0/+3
MacOS X does not have endian.h and the build will fail unless grgsm/endian.h is used.
2018-12-21trx/txtime_setter: print error if reference fn is missingVadim Yanitskiy1-3/+7
Change-Id: I2a6e3f41b6fe79b92d85ff98bc2cd9afd9bdc568
2018-12-21trx/txtime_setter: reduce code nesting in process_txtime_of_burst()Vadim Yanitskiy1-46/+46
Change-Id: I5c334e16d6b28a5e32cd62a177ad56bfc8e748ee
2018-09-13burst_file_source: Fix reading longer burstsVasil Velichkov2-13/+4
- Read bursts with pmt::deserialize directly from the std::filebuf - Remove the unused unserialized variable - Add tests Since df978693 when the rx_time tags are present in the incomming stream the gsm receiver adds fm_time to the burst's PMT and the bursts that burst file sink writes becomes longer because of the additional field. The burst file source block was expecting all burst to be 147 bytes long and reading files with longer bursts was failing with an unhandled exception. terminate called after throwing an instance of 'pmt::exception' thread[thread-per-block[5]: <block dummy_burst_filter (2)>]: pmt_cdr: wrong_type : #f what(): pmt::deserialize: malformed input stream, tag value = : 115 Change-Id: I989b0d6a6b214088b7880e5cbf7bb6725492dbfc
2018-09-11Format the output into ostringstream and then write it at once.Vasil Velichkov2-16/+21
This fixes the garbled output when multiple printers are used in a flowgraph. closes #255 closes #420 Change-Id: I1012ed26371b4c67163545652f0a1ce0f576af9e
2018-08-10gsm_trx_burst_if: allow to customize the bind addressVadim Yanitskiy3-6/+11
Pleviously remote address for DATA interface was also used as the bind address, what is definitely wrong. Let's change the API a bit in order to allow one to specify a custom bind address. Change-Id: I6e5f7b7119ac454217b8dd04f9ee0dd3b23972b6
2018-06-19Simplify cmake checks related to libosmocorePiotr Krysik2-2/+2
2018-06-18Separating libosmogsm from the restPiotr Krysik2-5/+3
2018-05-06Fix includes after moving trx_burst_ifPiotr Krysik1-1/+1
2018-05-05Moving trx burst interface to trx directoryPiotr Krysik7-72/+26
and to new 'Transceiver' cathegory in gnuradio-companion
2018-04-17Merge branch 'fixeria/trx' of https://github.com/axilirator/gr-gsm into ↵Piotr Krysik4-5/+134
fixeria_trx # Resolved conflicts: # apps/grgsm_trx # python/trx/radio_if.py # swig/grgsm_swig.i
2018-04-16Merge branch 'ptrkrysik/trx' into developmentPiotr Krysik36-219/+1636
2018-04-06Reformatting control_channels_decoderPiotr Krysik1-59/+55
2018-04-06Fix an assert in ViterbiR2O4::decodeVasil Velichkov1-2/+2
The table length was wrong becuase matchCostTable is a float pointer and not an array since 792330777d7c21df02ce1ecb6f876b076a14b519 python2.7: /home/user/gr-gsm/lib/decoding/openbts/ViterbiR204.cpp:288: virtual void ViterbiR2O4::decode(const SoftVector&, BitVector&): Assertion `match-matchCostTable<(float)sizeof(matchCostTable)/sizeof(matchCostTable[0])-1' failed. (gdb) f 4 #4 0x00007fffdff820c3 in ViterbiR2O4::decode (this=0x5555563bbdf0, in=..., target=...) at /home/vasko/sources/gr-gsm/gr-gsm/lib/decoding/openbts/ViterbiR204.cpp:288 288 assert(match-matchCostTable<(float)sizeof(matchCostTable)/sizeof(matchCostTable[0])-1); (gdb) p match-matchCostTable $1 = 2 (gdb) p (float)sizeof(matchCostTable)/sizeof(matchCostTable[0])-1 $2 = 1 (gdb) p (float)sizeof(matchCostTable)/sizeof(matchCostTable[0]) $3 = 2 (gdb) p sizeof(matchCostTable) $4 = 8
2018-03-30Check the gsm0503_xcch_decode return valueVasil Velichkov1-1/+5
- Discard the message when gsm0503_xcch_decode returns -1 - Add automated decrypt test See https://groups.google.com/d/msg/gr-gsm/9nOkIdrGOck/qTZh47McCQAJ
2018-03-05Added block for extracting assignment commandsPiotr Krysik5-12/+127
2018-03-04Define __attribute__ and __deprecated__ on MSWinPiotr Krysik1-0/+9
2018-03-04Change buildsystem message on libosmocore not being foundPiotr Krysik1-2/+1
2018-03-04Conditional compilation of local libosmocore depending if there is or is not ↵Piotr Krysik2-11/+21
libosmocore installation present on the system
2018-03-04Fixing warning caused by local libosmocore versionPiotr Krysik2-1/+2
2018-03-03Fixing 'free' positionPiotr Krysik1-1/+2
2018-02-28Removing part that causes problems with 'make test'Piotr Krysik1-3/+0
2018-02-28Adding include to have 'bool' typePiotr Krysik1-0/+1
2018-02-28Slight changes to CMake file and libosmocoding file (include change)Piotr Krysik2-2/+3
2018-02-27Merge remote-tracking branch 'origin/quick-hack' into grgsm_on_winPiotr Krysik2-1/+13
2018-02-27Commenting out some problematic and not apsolutely necessary stuff from ↵Piotr Krysik3-29/+34
libosmocore
2018-02-27Fixing types in gsm0503_mappingPiotr Krysik1-3/+3
2018-02-27Moving gsm0503.h to gsm subdirPiotr Krysik1-3/+3
2018-02-27Portability fix: Adding local partial copy of libosmocore (TODO: minimize it)Piotr Krysik56-336/+11241
2018-02-27Portability fix: Replaced problematic includesPiotr Krysik9-8/+7
2018-02-27sch.c: Changed include from local to globalPiotr Krysik1-1/+1
2018-02-27Change ints to size_tPiotr Krysik2-6/+5
2018-02-27Fix: replaced u_int32 type with uint32Piotr Krysik2-2/+2
2018-02-27Portability fix: replacing tables of variable size with memory allocationsPiotr Krysik3-31/+60
2018-02-27Hack: commented out linking with libosmocore librariesPiotr Krysik1-2/+14
Portability fix: If on windows link wsock32 and ws2_32 libraries
2017-12-09txtime_setter_impl: fix wrong time_hint referenceVadim Yanitskiy1-5/+4
2017-12-04Implement the 'burst_to_fn_time' block in C++Vadim Yanitskiy3-0/+130
2017-11-30preprocess_tx_burst: fix the output messageVadim Yanitskiy1-1/+1
During the code refactoring (4bd990b), the first part of the output message was accidently dropped. Let's fix this.
2017-11-30test_ab: Changed to non-inverted ABPiotr Krysik1-3/+3
2017-11-30Going back to previous coding style - without returnsPiotr Krysik1-45/+49
2017-11-30preprocess_tx_burst: fix the output messageVadim Yanitskiy1-1/+1
During the code refactoring (4bd990b), the first part of the output message was accidently dropped. Let's fix this.
2017-11-29txtime_setter: clean up and simplify source codeVadim Yanitskiy2-72/+118
This change formats the block implementation source code according to a mix of GNURadio and the Kernel coding styles. The main changes are: - Limit line length to 80 columns - Preffer the opposite conditions - Do not use curly braces for single line loops / conditions For more details, see: https://wiki.gnuradio.org/index.php/Coding_guide_impl https://www.kernel.org/doc/html/v4.10/process/coding-style.html
2017-11-29preprocess_tx_burst: clean up and simplify source codeVadim Yanitskiy1-25/+36
This change formats the block implementation source code according to a mix of GNURadio and the Kernel coding styles. The main changes are: - Limit line length to 80 columns - Preffer the opposite conditions - Do not use curly braces for single line loops / conditions For more details, see: https://wiki.gnuradio.org/index.php/Coding_guide_impl https://www.kernel.org/doc/html/v4.10/process/coding-style.html
2017-11-29Added a block for generating Access BurstsPiotr Krysik3-0/+155
2017-11-11Fix: protections in txtime_setter against late bursts and bursts in too ↵Piotr Krysik1-5/+16
distant future. Fixing bursts in too distant future is a bit problematic and better way than just looking at tx_time difference from current time would be desirable. This way of fixing that issue can still cause that tx part will do nothing for about 10 seconds (after switching frequency from a BTS1 (with fn1) to BTS2 (with fn2) when fn1>fn2).