Anyone successful in running tx_ofdm and rx_ofdm grc files?

I am having trouble setting some parameters and getting anything out of
it…

In particular

in ofdm_rx

  1. is the processing done on an 1 sample per symbol basis at the
    Scmidl&Cox ?
    In that case the input sample rate has to be set to the symbol rate?
    (what is called samp_rate in ofdm_tx)

  2. In the Header/Payload Demux what is the meaning of the value 3 in
    the header symbols parameter?
    My guess is that the first two training OFDM symbols are used for
    channel estimation and the third OFDM symbol contains in it all info
    of the 8-byte=48 bits of the header which is extracted and a message
    (what is it?) is fed back to the header/payload demux.
    BTW, can someone explain what the default header formatter does; I
    couldn’t quite get it form the code…

thanks
Achilleas

On Sun, May 19, 2013 at 11:45:42PM -0400, Achilleas A.
wrote:

I am having trouble setting some parameters and getting anything out of it…

In particular

in ofdm_rx

  1. is the processing done on an 1 sample per symbol basis at the Scmidl&Cox ?

I don’t understand the question. The correlator has no info about OFDM
symbol boundaries.

In that case the input sample rate has to be set to the symbol rate?
(what is called samp_rate in ofdm_tx)

This is the input sample rate. The bit rate depends on the number of
carriers used, the length of the CP and the modulation type on the
payload. The OFDM symbol rate is the sample rate / (fft_len + cp_len).

  1. In the Header/Payload Demux what is the meaning of the value 3 in
    the header symbols parameter?

It’s the number of symbols in the header. There’s two for
synchronization / channel estimation, and one for the actual header
(which stores the number of bytes etc.)

My guess is that the first two training OFDM symbols are used for
channel estimation and the third OFDM symbol contains in it all info
of the 8-byte=48 bits of the header which is extracted and a message
(what is it?) is fed back to the header/payload demux.

The message is a PMT-dict. It contains the info from the header, the
channel state and the coarse frequency offset.

BTW, can someone explain what the default header formatter does; I
couldn’t quite get it form the code…

It’s explained in the docstring for
gr::digital::packet_header_default::header_formatter().

/*!

  • \brief Encodes the header information in the given tags into bits and
    places them into \p out
  • Uses the following header format:
  • Bits 0-11: The packet length (what was stored in the tag with key \p
    len_tag_key)
  • Bits 12-27: The header number (counts up everytime this function is
    called)
  • Bit 28: Even parity bit
  • All other bits: Are set to zero
  • If the header length is smaller than 29, bits are simply left out.
    For this
  • reason, they always start with the LSB.
    */

MB


Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin B.
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071
www.cel.kit.edu

KIT – University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association