Added grc receiver block that supports uplink and changed block that supports downlink only
diff --git a/grc/gsm_block_tree.xml b/grc/gsm_block_tree.xml
index 26f607f..86c5ef9 100644
--- a/grc/gsm_block_tree.xml
+++ b/grc/gsm_block_tree.xml
@@ -13,6 +13,7 @@
<cat>
<name>Receiver</name>
<block>gsm_receiver</block>
+ <block>gsm_receiver_with_uplink</block>
<block>gsm_cx_channel_hopper</block>
<block>gsm_fcch_burst_tagger</block>
<block>gsm_sch_detector</block>
diff --git a/grc/receiver/CMakeLists.txt b/grc/receiver/CMakeLists.txt
index bcef03d..7b51226 100644
--- a/grc/receiver/CMakeLists.txt
+++ b/grc/receiver/CMakeLists.txt
@@ -20,6 +20,7 @@
install(FILES
gsm_input.xml
gsm_receiver.xml
+ gsm_receiver_with_uplink.xml
gsm_fcch_burst_tagger.xml
gsm_sch_detector.xml
gsm_fcch_detector.xml
diff --git a/grc/receiver/gsm_receiver.xml b/grc/receiver/gsm_receiver.xml
index 2119fd2..2988243 100644
--- a/grc/receiver/gsm_receiver.xml
+++ b/grc/receiver/gsm_receiver.xml
@@ -3,7 +3,7 @@
<name>GSM Receiver</name>
<key>gsm_receiver</key>
<import>import grgsm</import>
- <make>grgsm.receiver($osr, $cell_allocation, $tseq_nums)</make>
+ <make>grgsm.receiver($osr, $cell_allocation, $tseq_nums, False)</make>
<param>
<name>Oversampling ratio</name>
diff --git a/grc/receiver/gsm_receiver_with_uplink.xml b/grc/receiver/gsm_receiver_with_uplink.xml
new file mode 100644
index 0000000..4b68336
--- /dev/null
+++ b/grc/receiver/gsm_receiver_with_uplink.xml
@@ -0,0 +1,71 @@
+<?xml version="1.0"?>
+<block>
+ <name>GSM Receiver (with uplink)</name>
+ <key>gsm_receiver_with_uplink</key>
+ <import>import grgsm</import>
+ <make>grgsm.receiver($osr, $cell_allocation, $tseq_nums, True)</make>
+
+ <param>
+ <name>Oversampling ratio</name>
+ <key>osr</key>
+ <value>4</value>
+ <type>int</type>
+ </param>
+
+ <param>
+ <name>Cell allocation</name>
+ <key>cell_allocation</key>
+ <value>[0]</value>
+ <type>float_vector</type>
+ <hide>part</hide>
+ </param>
+
+ <param>
+ <name>TSEQ numbers</name>
+ <key>tseq_nums</key>
+ <value>[]</value>
+ <type>int_vector</type>
+ <hide>part</hide>
+ </param>
+
+ <param>
+ <name>Num Streams</name>
+ <key>num_streams</key>
+ <value>1</value>
+ <type>int</type>
+ <hide>part</hide>
+ </param>
+
+ <check>$num_streams >= 0</check>
+
+ <sink>
+ <name>C</name>
+ <type>complex</type>
+ <nports>$num_streams</nports>
+ </sink>
+
+
+ <sink>
+ <name>C_up</name>
+ <type>complex</type>
+ <nports>$num_streams</nports>
+ </sink>
+
+ <source>
+ <name>C0</name>
+ <type>message</type>
+ <optional>1</optional>
+ </source>
+
+ <source>
+ <name>CX</name>
+ <type>message</type>
+ <optional>1</optional>
+ </source>
+
+ <source>
+ <name>measurements</name>
+ <type>message</type>
+ <optional>1</optional>
+ </source>
+</block>