Merge branch 'development' into travis

This commit is contained in:
Piotr Krysik 2016-02-23 10:53:37 +01:00
commit c07c2cc9fd
8 changed files with 31 additions and 25 deletions

View File

@ -112,7 +112,7 @@ class grgsm_decoder(gr.top_block):
self.cch_decoder = grgsm.control_channels_decoder()
self.socket_pdu = blocks.socket_pdu("UDP_CLIENT", "127.0.0.1", "4729", 10000, False)
self.socket_pdu = blocks.socket_pdu("UDP_CLIENT", "127.0.0.1", "4729", 10000)
if self.verbose:
self.message_printer = grgsm.message_printer(pmt.intern(""), True, True, False)

View File

@ -154,9 +154,7 @@ class grgsm_livemon(gr.top_block, Qt.QWidget):
self.gsm_control_channels_decoder_0 = grgsm.control_channels_decoder()
self.gsm_clock_offset_control_0 = grgsm.clock_offset_control(fc-shiftoff)
self.gsm_bcch_ccch_demapper_0 = grgsm.universal_ctrl_chans_demapper(0, ([2,6,12,16,22,26,32,36,42,46]), ([1,2,2,2,2,2,2,2,2,2]))
# self.blocks_socket_pdu_0_0 = blocks.socket_pdu("UDP_SERVER", "127.0.0.1", "4729", 10000, False)
self.blocks_socket_pdu_0_0 = blocks.socket_pdu("UDP_SERVER", "127.0.0.1", "4729", 10000)
# self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_CLIENT", "127.0.0.1", "4729", 10000, False)
self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_CLIENT", "127.0.0.1", "4729", 10000)
self.blocks_rotator_cc_0 = blocks.rotator_cc(-2*pi*shiftoff/samp_rate)

View File

@ -30,6 +30,14 @@
#include <grgsm/endian.h>
#include <grgsm/gsmtap.h>
static const int8_t subslots_sdcch4[102] = {
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1
};
static const int8_t subslots_sdcch8[102] = {
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1,-1,
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7,-1,-1,-1
};
namespace gr {
namespace gsm {
@ -49,7 +57,8 @@ namespace gr {
gr::io_signature::make(0, 0, 0),
gr::io_signature::make(0, 0, 0)),
d_mode(mode),
d_subslot(subslot)
d_subslots_sdcch4(subslots_sdcch4),
d_subslots_sdcch8(subslots_sdcch8)
{
message_port_register_in(pmt::mp("in"));
message_port_register_out(pmt::mp("out"));

View File

@ -33,14 +33,8 @@ namespace gr {
private:
// hardcoded subslots of the channels, both SDCCH and the associated SACCH
// -1 means that the particular position in the frame is not SDCCH
const int8_t d_subslots_sdcch4[102] = {
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1
};
const int8_t d_subslots_sdcch8[102] = {
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1,-1,
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7,-1,-1,-1
};
const int8_t * const d_subslots_sdcch4;
const int8_t * const d_subslots_sdcch8;
subslot_filter_mode d_mode;
unsigned int d_subslot;
public:

View File

@ -30,6 +30,15 @@
#include <grgsm/endian.h>
#include <grgsm/gsmtap.h>
static const int8_t subslots_sdcch4[102] = {
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1
};
static const int8_t subslots_sdcch8[102] = {
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1,-1,
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7,-1,-1,-1
};
namespace gr {
namespace gsm {
@ -48,7 +57,9 @@ namespace gr {
: gr::block("burst_sdcch_subslot_splitter",
gr::io_signature::make(0, 0, 0),
gr::io_signature::make(0, 0, 0)),
d_mode(mode)
d_mode(mode),
d_subslots_sdcch4(subslots_sdcch4),
d_subslots_sdcch8(subslots_sdcch8)
{
message_port_register_in(pmt::mp("in"));

View File

@ -33,14 +33,8 @@ namespace gr {
private:
// hardcoded subslots of the channels, both SDCCH and the associated SACCH
// -1 means that the particular position in the frame is not SDCCH
const int8_t d_subslots_sdcch4[102] = {
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,
-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1, 0, 0, 0, 0, 1, 1, 1, 1,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1, 2, 2, 2, 2, 3, 3, 3, 3,-1
};
const int8_t d_subslots_sdcch8[102] = {
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3,-1,-1,-1,
0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7, 4, 4, 4, 4, 5, 5, 5, 5, 6, 6, 6, 6, 7, 7, 7, 7,-1,-1,-1
};
const int8_t * const d_subslots_sdcch4;
const int8_t * const d_subslots_sdcch8;
splitter_mode d_mode;
public:
burst_sdcch_subslot_splitter_impl(splitter_mode mode);

View File

@ -127,7 +127,7 @@ class qa_message_printer (gr_unittest.TestCase):
]
src = grgsm.message_source(msgs_input)
printer = grgsm.message_printer(pmt.intern(""), True)
printer = grgsm.message_printer(pmt.intern(""), False, False, True)
self.tb.msg_connect(src, "msgs", printer, "msgs")
self.tb.run()
@ -154,10 +154,10 @@ class qa_message_printer (gr_unittest.TestCase):
]
src = grgsm.message_source(msgs_input)
printer = grgsm.message_printer(pmt.intern("test_004:"), True)
printer = grgsm.message_printer(pmt.intern("test_004:"), False, False, True)
self.tb.msg_connect(src, "msgs", printer, "msgs")
self.tb.run()
self.assertEqual(self.getOutput(), self.getOutputExpected(msgs_expected))

View File

@ -45,7 +45,7 @@ class gsm_wideband_input(grgsm.hier_block):
# Blocks
##################################################
self.ppm_in = None
self.message_port_register_hier_out("ppm_in")
self.message_port_register_hier_in("ppm_in")
#self.lpf = firdes.low_pass(1, samp_rate_out, 125e3, 5e3, firdes.WIN_HAMMING, 6.76)
self.lpf = firdes.low_pass(1, samp_rate_in, 125e3, 75e3, firdes.WIN_HAMMING, 6.76)
self.gsm_clock_offset_corrector_0 = grgsm.clock_offset_corrector(