Re: The shortest pulse length

Well, I have implemented a bit of a strange setup which seems to be
working somewhat now. I’m not really trying to view only the first few
samples, I’m currently trying to track where I might of made a mistake
with trying to generate a defined pulse with a specific length. My aim
is to generate a very narrow band chirp to transmit on a little
ultrasonic tranducer. I figured out which numerical values to the
gr.modulation block produce which frequencies. Using this, I made a
vector of the exact number of samples I want with the values to produce
the frequencies I want. In my case 39-41 kHz. For some reason these low
frequencies still make it through the transformer on the basic TX db,
so I’m using them. Initially I was just generating a sine wave, and
trying to use gr.head to limit the number of samples, but I’ve since
switched to this approach

I figured that if I wanted to produce a wave form lasting 10 msecs, then
I would need at least 2500 samples. I got this number from the DAC rate
of 128M and the highest interpolation factor of 512. When I test with
the scope set to auto store, I spot the waveform, but it is only 1 msec
long. So either I’ve lost a lot of samples somewhere, or my scaling is
wrong.

I pretty much abandoned using gr.head, as it wasn’t producing anything.
At least now though I can see a waveform, though my scaling seems to
have gone wrong somewhere. When you say you used a looback, do you mean
you connected the TX db output and RX db input, and used the gr.oscope
block to view your signals?

Regards

Lance

----- Original Message ----
From: Lee P. [email protected]
To: seph 004 [email protected]
Cc: [email protected]
Sent: Tuesday, February 27, 2007 12:58:31 AM
Subject: Re: [Discuss-gnuradio] The shortest pulse length

On Mon, 2007-02-26 at 00:55 -0800, seph 004 wrote:

I have a vector source producing a sine wave, and then I’m using
gr.head to limit the number of samples sent.

I’m sure you checked this, but are you trying to capture the first few
samples of sin(x)? I so, sin(x) = x for small angles, and sin(0)=0.
So, you won’t see anything in the first few samples anyway.

From your explanation, I should be ok with even a low number of
samples. When I tested my setup, I couldn’t catch anything on the
scope. There is probably some problem in how I made the app.

I saw something mentioned elsewhere in the discussion archives that
the usrp dumps the first few samples it receives from the host before
transmitting. Is this still something to take note of?

I don’t know whether or not the USRP dumps the first few samples. I
don’t think I’ve ever experienced it though. I can say that there is an
unpredictable delay from the generation of the first sample in software
until the time it actually reaches the output port.

I haven’t tried to do what you’re doing – i.e., capture the first few
output samples on a scope. How is the scope triggered? (What I did was
create a loopback whereby I transmit and receive by reading the
bleedover on the daugherboard.)

-Lee

On Feb 28, 2007, at 4:29 AM, seph 004 wrote:

transformer on the basic TX db, so I’m using them. Initially I was
just generating a sine wave, and trying to use gr.head to limit the
number of samples, but I’ve since switched to this approach

I figured that if I wanted to produce a wave form lasting 10 msecs,
then I would need at least 2500 samples. I got this number from the
DAC rate of 128M and the highest interpolation factor of 512. When
I test with the scope set to auto store, I spot the waveform, but
it is only 1 msec long. So either I’ve lost a lot of samples
somewhere, or my scaling is wrong.

How are you creating the flow graph?