Synchronize frequency with packet sending

Hi everyone,

I got a problem in my project where I have been stuck for the past
several weeks. I have searched the Gnuradio Mailing lists, I didn’t
find any direct answer.
I’m doing the SDR project in which I use two USRPs(RFX2400) to
communicate each other. I modified the benchmark example in GNU Radio
to perform frequency hopping. I’m able to change frequency at
transmitter side in real time according to my test, but I got hug
delay with the packets sent out. What I did in the python script is
something like:

At Tx:

While 1
If pktno == 100
Set freq to F1
If pktno == 200
Set freq to F2
If pktno == 300
Set freq to F3

Send_pkt()
Pktno += 1

At Rx:

Monitoring and receive all the packets sent by F2

According to frequency F2, I’m supposed to receive all the packets
with pktno starts from 200 to 299, but what I got at receiver is pktno
starts from around 127 to 226!
What I can conclude for now is there is a big buffer for the message
queue. Probably the latency is mainly introduced by USB where data
entering the USB bus from PC to the USRP(FPGA).
Hope I’m clear with the problem, My question is:

  1. Is my thinking right? If so, how to reduce the size of USB buffer?
  2. How to synchronize the (new) frequency with packet sending?

Thanks in advance.

Lee

I think perhaps a time synchronization process between the sender and
receiver is needed.
----- Original Message -----
From: “CNS Lee” [email protected]
To: [email protected]
Sent: Sunday, September 27, 2009 8:25 PM
Subject: [Discuss-gnuradio] Synchronize frequency with packet sending

Hi everyone,

I got a problem in my project where I have been stuck for the past
several weeks. I have searched the Gnuradio Mailing lists, I didn’t
find any direct answer.
I’m doing the SDR project in which I use two USRPs(RFX2400) to
communicate each other. I modified the benchmark example in GNU Radio
to perform frequency hopping. I’m able to change frequency at
transmitter side in real time according to my test, but I got hug
delay with the packets sent out. What I did in the python script is
something like:

At Tx:

While 1
If pktno == 100
Set freq to F1
If pktno == 200
Set freq to F2
If pktno == 300
Set freq to F3

Send_pkt()
Pktno += 1

At Rx:

Monitoring and receive all the packets sent by F2

According to frequency F2, I’m supposed to receive all the packets
with pktno starts from 200 to 299, but what I got at receiver is pktno
starts from around 127 to 226!
What I can conclude for now is there is a big buffer for the message
queue. Probably the latency is mainly introduced by USB where data
entering the USB bus from PC to the USRP(FPGA).
Hope I’m clear with the problem, My question is:

  1. Is my thinking right? If so, how to reduce the size of USB buffer?
  2. How to synchronize the (new) frequency with packet sending?

Thanks in advance.

Lee


Discuss-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio