About packetized MIMO Tx/Rx,

Hello,

I am currently trying to implement 2x2 MIMO packet transmission and
having difficulties… I need help and any comment will be really
useful…

My main references are benchmark_tx.py and fm_tx_2_daughterboards.py.

As I cannot directly connect signal sources to gr.interleave() unlike
in fm_tx_2_daughterboards.py (sending data is put into queue of
message_source only when send_pkt(payload) is called), what I have
done is as follows.

  • I created multi_mod_pkts class that is similar to mod_pkts. Here I
    created two separate message_source (_pkt_input1 and _pkt_input2).

  • I connected those two message_sources into interleaver and then
    self, using following code

      self._pkt_input1 = gr.message_source(gr.sizeof_char, msgq_limit)
      self._pkt_input2 = gr.message_source(gr.sizeof_char, msgq_limit)
    
      intl = gr.interleave(gr.sizeof_char)
    
      self.connect(self._pkt_input1, (intl, 0))
      self.connect(self._pkt_input2, (intl, 1))
    
      self.connect(intl, self._modulator, self)
    
  • Whenever send_pkt(payload1, payload2) is called, those messages are
    put into msg queue of message_source. respectively.

  • In the main program, I created usrp_sink_c object and set mux using
    following code

      self._u = usrp.sink_c (which=self._which,
                              nchan=2,
                              fusb_block_size=self._fusb_block_size,
                              fusb_nblocks=self._fusb_nblocks)
    
      self._subdev = (self._u.db(0, 0), self._u.db(1, 0))
      self._u.set_mux(0xba98)
    
      self._subdev[0].set_gain(self._subdev[0].gain_range()[1])   #
    

set max Tx gain
self._subdev[1].set_gain(self._subdev[1].gain_range()[1]) #
set max Tx gain

    self.set_freq(0, freq0)
    self.set_freq(1, freq1)

    self._subdev[0].set_enable(True)             # enable

transmitter
self._subdev[1].set_enable(True) # enable
transmitter

    self._dxc = self._which

   self.connect(self, self._u)

That’s all. But the receiver does not sense any incoming traffic. What
could be done to make it work?

Thank you in advance!

Sungro

On Thu, Jan 07, 2010 at 08:58:50PM -0500, Sungro Yoon wrote:

Hello,

I am currently trying to implement 2x2 MIMO packet transmission and
having difficulties… I need help and any comment will be really
useful…

Have you tried logging all intermediate results using a gr.file_sink?

If you log the data that’s being sent to the usrp, and then examine it
with octave or matlab, does it look like what you expect?

Eric