Appending preamble with different power

Continueing with How to synchronize RX with TX? - GNU Radio - Ruby-Forum,

I have planned to append a preamble before an actual signal and turn RX
on
earlier than TX.

Then RX will receive a signal like below:

|—RX turn on------|—TX turn on-----------------------------
(—trash signal—)(—preamble—)(—actual signal—)

And this signal is demodulated and stored into a sink file.
After that, I run a program that extracts an actual data only and
compare it
to the original.

My concern is that this preamble should be assumed to be perfect i.e. no
errors
Of course, there isn’t no error. However if I set an amplitude to
maximum
value, it can be said to be no error.
I have a pre-defined preamble sequence with length n (n = around
100-200,
can be changed)

Thus, I am trying to change amplitude of modulated signal for preamble
and
actual signal
But I have problem with some quadrature modulation. Flow graphs are in
below:

http://dl.dropbox.com/u/11382666/for_gnuradio_mailinglist/M-DPSK.png
http://dl.dropbox.com/u/11382666/for_gnuradio_mailinglist/M-FSK.png

My question is that, how many samples after DPSK mod or frequency mod
block
corresponds to each sample from file source?
I have to solve this problem in order to figure out how many samples are
generated from preamble with length n.
If I know that information, I can set a duration for Multiply const
block
having large value for preamble and normal value for actual signal

And second question is that, although I know that information, I don’t
know
how I can control value.
For example, preamble with length 200, then I want to set large value
for
duration 200 * x (number of samples generated after DPSK, Frequency
mod),
and after that I want to set normal value for remaining duration.

Is it too complex for gnuradio-companion flow graph to make? And is
python
hard coding possible?

I’m a bit confused. What exactly are you trying to do?

On Fri, 2011-06-24 at 01:17 +0900, Songsong G. wrote:

    (---trash signal---)(---preamble---)(---actual signal---)

maximum value, it can be said to be no error.
I don’t understand what you mean here. You can find an “imperfect”
preamble sequence using a correlator.

My question is that, how many samples after DPSK mod or frequency mod
block corresponds to each sample from file source?

It’s right there in the block, where it says “samples/symbol”.

I have to solve this problem in order to figure out how many samples
are generated from preamble with length n.
If I know that information, I can set a duration for Multiply const
block having large value for preamble and normal value for actual
signal

Why would you set the amplitude of the preamble differently than the
actual data?

–n

On 23/06/2011 2:31 PM, Nick F. wrote:

Why would you set the amplitude of the preamble differently than the
actual data?

–n
In the hopelessly-naive assumption that the preamble can be made to be
“perfect” through brute-force transmit power.

Like you observed earlier, correlation is the correct way to detect a
preamble.

Ok. First of all, I’d like to run a code like below (pseudo):
for i = 1 to 200 // preamble duration
amp = 32767
end for
amp = 100

Next, how many baseband samples are generated by DPSK or Frequency mod
block
for a single symbol input

Composed with Android (Galaxys)
2011. 6. 24. 3:31 “Nick F.” [email protected] ۼ:

Or operate your receiver at absolute zero so there is no thermal noise?
:smiley:

On a more serious note, how I do preamble detection is the following:

  • Figure out the sample sequence of your TX’ed preamble sequence, use
    this
    as a match filter.
  • Tag the magnitude of the match filter and run through the peak
    detector
    block, which should locate the spike in energy from the preamble.
  • When this happens, your packet frame begins one sample in the future
    (post
    preamble).

From me, this seems to work pretty well…all things considered.

On Fri, 2011-06-24 at 04:00 +0900, Songsong G. wrote:

Ok. First of all, I’d like to run a code like below (pseudo):
for i = 1 to 200 // preamble duration
amp = 32767
end for
amp = 100

Like I said earlier, this is unlikely to be a good approach to
synchronizing with a preamble.

Next, how many baseband samples are generated by DPSK or Frequency mod
block for a single symbol input

Did you read the email you just replied to?

Hi Songsong G.,

I am a new gnuradio user. I am trying to receive and demodulate wifi
packets. I couldn’t open your dropbox link. Could you send the flow
graph again? I think that will be a useful starting point for me.

Thanks
Bhuvana

On 23/06/2011 3:03 PM, Colby B. wrote:

Or operate your receiver at absolute zero so there is no thermal noise? :smiley:
Infinite SNR. Must have :slight_smile: