# Query on simulation of MIMO on Gnuradio

**URL:** <https://www.ruby-forum.com/t/query-on-simulation-of-mimo-on-gnuradio/231398>\
**Category:** GNU Radio\
**Created:** [August 6, 2014, 8:48am UTC](https://www.ruby-forum.com/t/query-on-simulation-of-mimo-on-gnuradio/231398 "2014-08-06T08:48:36Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![addis\_a](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/c4cdca/32.png) [@addis\_a](https://www.ruby-forum.com/u/addis_a)\
**Post date:** [August 6, 2014, 8:48am UTC](https://www.ruby-forum.com/t/query-on-simulation-of-mimo-on-gnuradio/231398/1 "2014-08-06T08:48:36Z")

</div>

Hi,  
we are trying to implement alamouti encoding and decoding on an  
underlying ofdm communication system in Gnuradio. So we are using  
benchmark\_tx.py. In ofdm mapper block we have written our own block  
which  
does alamouti encoding which gives out alamouti encoded symbols across  
two  
output ports. The first output port will give x1 and -x2\*. The second  
output port will give x2 and x1\* according to the alamouti code.

Now, from each of these two output ports, we are connecting an insert  
preamble block followed by an IFFT block and then a cyclic prefixer  
block.  
All of these blocks are standard gnuradio blocks used in ofdm examples  
directory in gnuradio( benchmark\_tx.py). Now we would want to connect  
these  
two ouputs to their respective usrp sink blocks thereby implementing a  
mimo  
system with 2 transmitters.

Now we are using an alamouti decoder block which is implemented in ofdm  
frame acquisition block. Before we put it on usrp’s which require  
perfect  
hardware time synchronisation, we would like to test whether our end to  
end transmitter and receiver in software is working. So we connected the  
txpath1 to rxpath1 and txpath2 to rxpath2 which is like connecting two  
transmitters to two receivers directly. But we are not receiving the  
decoded symbols properly. when we are debugging, we are having doubts as  
to  
maybe the H matrix(channel matrix) values of h12 and h21 might not be  
received because we are connecting transmitter 1 to receiver 1 and  
transmitter 2 to receiver 2. can that be an issue?

In general how do you test mimo blocks in software. Is the way we are  
doing  
right i.e. connecting txpath1 to rxpath1 and txpath2 to rxpath2. Or are  
there other better ways of testing end to end MIMO systems without  
hardware?

---

<div class="post-metadata">

**Author:** ![karan\_t](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/e47774/32.png) [@karan\_t](https://www.ruby-forum.com/u/karan_t)\
**Post date:** [August 7, 2014, 10:35am UTC](https://www.ruby-forum.com/t/query-on-simulation-of-mimo-on-gnuradio/231398/2 "2014-08-07T10:35:53Z")

</div>

Karan,

the current ‘master’ branch has a “multiply\_matrix\_cc” block which might  
be what you’re looking for.

M
