I started writing a small signal processing block (OFDM transmitter) and
into some problems.
My starting point was the well written gr-how-to-write-a-block tutorial.
I have, let’s say, 1536 input samples and want to produce 1800 output
samples with my block. When I run my code with small values
(say fft size of 32) I get valid OFDM symbols but a lot of zeros in
between. When I uses higher values either the scheduler quits
sched: <gr_block ofdm_tx_vcc (0)> is
requesting more input data
than we can provide.
or even the buffer can’t be allocated. This makes me sure that there is
a programming mistake on my part, but I can’t seem to find it.
I would be thankful if somebody could point out my mistake? The main
files are attached, a modified gr-how-to-build-a-block can be found
Yet another question: Can blocks somehow interchange values? I would
like to write two blocks, one that estimates a frequency offset and
another one that compensates it (simple modulation). Or do I have to
do that in one block?