diff options
-rw-r--r-- | grc/gsm_block_tree.xml | 1 | ||||
-rw-r--r-- | grc/misc_utils/CMakeLists.txt | 4 | ||||
-rw-r--r-- | grc/misc_utils/gsm_burst_to_fn_time.xml | 19 | ||||
-rw-r--r-- | grc/transmitter/CMakeLists.txt | 2 | ||||
-rw-r--r-- | python/misc_utils/CMakeLists.txt | 1 | ||||
-rw-r--r-- | python/misc_utils/burst_to_fn_time.py | 28 |
6 files changed, 53 insertions, 2 deletions
diff --git a/grc/gsm_block_tree.xml b/grc/gsm_block_tree.xml index dd971ab..89319c8 100644 --- a/grc/gsm_block_tree.xml +++ b/grc/gsm_block_tree.xml @@ -74,6 +74,7 @@ <block>gsm_msg_to_tag.xml</block> <block>gsm_tmsi_dumper</block> <block>gsm_trx_burst_if</block> + <block>gsm_burst_to_fn_time</block> </cat> </cat> </cat> diff --git a/grc/misc_utils/CMakeLists.txt b/grc/misc_utils/CMakeLists.txt index 9407caf..3316373 100644 --- a/grc/misc_utils/CMakeLists.txt +++ b/grc/misc_utils/CMakeLists.txt @@ -33,5 +33,7 @@ install(FILES gsm_message_file_source.xml gsm_trx_burst_if.xml gsm_msg_to_tag.xml - gsm_controlled_fractional_resampler_cc.xml DESTINATION share/gnuradio/grc/blocks + gsm_controlled_fractional_resampler_cc.xml + gsm_burst_to_fn_time.xml + DESTINATION share/gnuradio/grc/blocks ) diff --git a/grc/misc_utils/gsm_burst_to_fn_time.xml b/grc/misc_utils/gsm_burst_to_fn_time.xml new file mode 100644 index 0000000..dbbfe31 --- /dev/null +++ b/grc/misc_utils/gsm_burst_to_fn_time.xml @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<block> + <name>Burst to fn_time</name> + <key>gsm_burst_to_fn_time</key> + <import>import grgsm</import> + <make>grgsm.burst_to_fn_time()</make> + + <sink> + <name>bursts_in</name> + <type>message</type> + <optional>1</optional> + </sink> + + <source> + <name>bursts_out</name> + <type>message</type> + <optional>1</optional> + </source> +</block> diff --git a/grc/transmitter/CMakeLists.txt b/grc/transmitter/CMakeLists.txt index 0905e19..76d079e 100644 --- a/grc/transmitter/CMakeLists.txt +++ b/grc/transmitter/CMakeLists.txt @@ -21,5 +21,5 @@ install(FILES gsm_gmsk_mod.xml gsm_txtime_bursts_tagger.xml gsm_txtime_setter.xml - preprocess_tx_burst.xml DESTINATION share/gnuradio/grc/blocks + gsm_preprocess_tx_burst.xml DESTINATION share/gnuradio/grc/blocks ) diff --git a/python/misc_utils/CMakeLists.txt b/python/misc_utils/CMakeLists.txt index ec732a4..8c7c175 100644 --- a/python/misc_utils/CMakeLists.txt +++ b/python/misc_utils/CMakeLists.txt @@ -23,5 +23,6 @@ GR_PYTHON_INSTALL( clock_offset_corrector_tagged.py hier_block.py fn_time.py + burst_to_fn_time.py DESTINATION ${GR_PYTHON_DIR}/grgsm ) diff --git a/python/misc_utils/burst_to_fn_time.py b/python/misc_utils/burst_to_fn_time.py new file mode 100644 index 0000000..e31cf92 --- /dev/null +++ b/python/misc_utils/burst_to_fn_time.py @@ -0,0 +1,28 @@ +""" +Embedded Python Blocks: + +Each this file is saved, GRC will instantiate the first class it finds to get +ports and parameters of your block. The arguments to __init__ will be the +parameters. All of them are required to have default values! +""" +import numpy as np +from gnuradio import gr +import pmt + +class burst_to_fn_time(gr.basic_block): + def __init__(self): # only default arguments here + gr.basic_block.__init__( + self, + name='Burst to fn_time', + in_sig=[], + out_sig=[] + ) + self.message_port_register_in(pmt.intern("bursts_in")) + self.message_port_register_out(pmt.intern("fn_time_out")) + self.set_msg_handler(pmt.intern("bursts_in"), self.convert) + + def convert(self, msg): + fn_time = pmt.dict_ref(pmt.car(msg),pmt.intern("fn_time"),pmt.PMT_NIL) + fn_time_msg = pmt.dict_add(pmt.make_dict(), pmt.intern("fn_time"), fn_time) + if pmt.to_python(fn_time) is not None: + self.message_port_pub(pmt.intern("fn_time_out"), fn_time_msg) |