[Discuss-gnuradio] Fwd:MIMO cable synchronization accuracy

2013-12-03 Thread Harry Zhang
Hi everyone,
To synchronize two USRPs, I connect them and add the following code in
the slave USRP. ---
set_clock_source( 'MIMO',0);
set_time_source('MIMO',0);
---
I have got that the length of MIMO cable is fixed because the cable
delay is compensated in the slave USRP's motherboard. So here is a
question that what is the time synchronization accuracy within USRPs
using MIMO cable?
Thank you in advance.

Best,
Harry



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Time Granularity of USRP N2XX

2013-11-26 Thread Harry Zhang

Dear Marcus,
Thank you for your reply.
I'm confused about two concepts. Referring to the file 
time_spec.hpp in UHD, fractional sec is calculated according to the 
parameter ticks and tick_rate. So I think the time granularity is  
'1/tick_rate'  which is 0.1us using 10Mhz clock. But for the timestamp 
of sample stream, the granularity is the  sample duration. Is it correct?


Best,
Harry
 2013/11/26 20:12, Marcus Müller wrote:

Hi Harry,

as far as I know, the granularity of a time stamp is the sample 
duration at the downsampled side.
As for the 10MHz: The 10MHz clock is used to derive different other 
clocks, especially the rx ADC and tx DAC clocks, which are an order of 
magnitude higher; bear in mind that when you request e.g. "5MHz samle 
rate" you still get the 100MHz* samples of the ADC, but downsampled by 
a factor of 20.


Please also bear in mind that due to physics, processing etc the 
timestamp of the rx side is delayed to the actual reception of "that 
sample", and that this delay is largely constant when receiving using 
the same settings, but my change based on sampling rate and other 
factors.


Greetings
Marcus

*for USRP2 arch, if I remember correctly.
On 26.11.2013 13:04, Harry Zhang wrote:

Hi,
Since we can get receive time of rx_stream's first sample via rx tags, I
have two questions about the time granularity. Given the internal clock
is 10Mhz, is the time granularity 0.1us? The fractional second is stored
double type. Does it mean the last digits of the fractional sec are 
invalid?


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio




___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Time Granularity of USRP N2XX

2013-11-26 Thread Harry Zhang
Hi,
Since we can get receive time of rx_stream's first sample via rx tags, I
have two questions about the time granularity. Given the internal clock
is 10Mhz, is the time granularity 0.1us? The fractional second is stored
double type. Does it mean the last digits of the fractional sec are invalid?

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] How to get multipe rx_time tags while receiving continuously

2013-11-04 Thread Harry Zhang

Dear Miklos,
Yes, I do never stop receive program. I'm using USRP N210, WBX, 
Ubuntu12.04 and UHD3.5.3. I'm writing a document in detail, which will 
be sent to you later today.


Best,
Harry

 2013/11/3 22:47, Miklos Maroti wrote:

Hi Harry,

You never stop the receiver on node B and C, right? You should not
observe anything like that if you do not have dropped packets. Are you
using USRP2's?

Miklos

On Sat, Nov 2, 2013 at 3:05 AM, Harry Zhang  wrote:

Tom,
 Thanks for your reply.
 I got a weird problem when using rx_time tags. I have three nodes, node
A sends 10 packets within 0.2 sec ,stops for 1sec sends 10 packets ,
stops..., sends,stops  . Node B and C receive it and record the
receive time using (rx_time+ sample_count*sample_rate).  Considerating the
clock offset between B and C, the difference of B and C's receive time must
remain stable. But every time after A stops for 1sec, the receive time's
difference varies several hundreds of microsecond. I'm stumped by this
problem.
 Could you give me some advice. Thank you in advance.

Harry

2013/11/1 22:26, Tom Rondeau wrote:

On Thu, Oct 31, 2013 at 3:46 AM, Harry Zhang  wrote:

Hi,
As far as I know rx_time tag is associated with the first sample of a
receive stream. If I wanna get multiple rx_time tags while receiving
continuous data, should I stop and issue a new stream again and again
for getting more rx_time tags.
Thank you.

Harry,

We want to minimize tags through the flowgraph since it adds overhead.
The UHD driver only sends an rx_time tag whenever one is necessary.
That means that if there is a chance that the host has become
unsynchronized, it sends an updated tag. So there's one at the
beginning of the stream to set the initial time. Then, if a dropped
packet or overflow are detected, it sends a new rx_time tag.

Between time tags, you can count samples and you know the sample rate,
so you know the time of every sample based on that initial rx_time tag
(to within the tolerance of the sample clock on the USRP).

Tom



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] How to get multipe rx_time tags while receiving continuously

2013-11-01 Thread Harry Zhang

Tom,
Thanks for your reply.
I got a weird problem when using rx_time tags. I have three nodes, 
node A sends 10 packets within 0.2 sec ,stops for 1sec sends 10 packets 
, stops..., sends,stops  . Node B and C receive it and record 
the receive time using (rx_time+ sample_count*sample_rate).  
Considerating the clock offset between B and C, the difference of B and 
C's receive time must remain stable. But every time after A stops for 
1sec, the receive time's difference varies several hundreds of 
microsecond. I'm stumped by this problem.

Could you give me some advice. Thank you in advance.

Harry

2013/11/1 22:26, Tom Rondeau wrote:

On Thu, Oct 31, 2013 at 3:46 AM, Harry Zhang  wrote:

Hi,
As far as I know rx_time tag is associated with the first sample of a
receive stream. If I wanna get multiple rx_time tags while receiving
continuous data, should I stop and issue a new stream again and again
for getting more rx_time tags.
Thank you.

Harry,

We want to minimize tags through the flowgraph since it adds overhead.
The UHD driver only sends an rx_time tag whenever one is necessary.
That means that if there is a chance that the host has become
unsynchronized, it sends an updated tag. So there's one at the
beginning of the stream to set the initial time. Then, if a dropped
packet or overflow are detected, it sends a new rx_time tag.

Between time tags, you can count samples and you know the sample rate,
so you know the time of every sample based on that initial rx_time tag
(to within the tolerance of the sample clock on the USRP).

Tom




___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] How to get multipe rx_time tags while receiving continuously

2013-10-31 Thread Harry Zhang
Hi,
As far as I know rx_time tag is associated with the first sample of a
receive stream. If I wanna get multiple rx_time tags while receiving
continuous data, should I stop and issue a new stream again and again
for getting more rx_time tags.
Thank you.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Time synchronization between two USRPs without external signal

2013-10-25 Thread Harry Zhang

Dear Miklos,
I got a weird problem while running the sync method(Node A transmit 
the sync messages,node A and B receive them).
I control A transmit continuously for 0.2sec and stop for 
2sec,repeat this.In the 0.2 sec period, node A could transmit 20 sync 
message and the difference of A and B's receive timestamp remain 
stable(such as 3.205122sec), the standard deviation of it is about 
5us,which is good. But when transmitting again after 3sec stop, the 
difference of A and B's receive timestamp is completely different with 
the previous one(changed to 3.245897sec but also stable). The difference 
is about .Considering the clock drift is small(about 2.5ppm),the the 
difference of receive timestamp between node A and B should remain 
unchanged in several minutes.So I think it's not caused by the clock 
drift in such a short time.

What maybe cause this problem?
Thanks in advance.

Best Regard,
Harry

2013/10/16 20:20, Miklos Maroti wrote:

Hi Harry,

On Sat, Oct 12, 2013 at 3:12 PM, Harry Zhang  wrote:

Dear Miklos,
 Thank you for your inspiring reply.
 1.I do think this method sounds like a receiver-receiver sync while sync
message's transmitter A also doing beacon node C's function ( (1)sending
sync message and (2)recording receive time which would be sended to B for
sync).Is it correct?

Well, it is a transmitter-receiver synchronization, since only two
nodes are involved A and B, and only A sends, B only receives. The
real problem is to correlate samples with time, and I have used the RX
chain sample counter as "time" both on node A and B. You cannot use PC
time because of large errors over ethernet/USB so you have to use the
clock of the FPGA.


 2.For 1us accuracy, does it mean the sample rate must be more than 1e6?

Yes, of course. But you can even synchronize at 10 times the sampling
rate (hard, but not impossible), i.e. you would use 1e6 sampling rate
and get 1e7 precision.


 3.Does "close to zero samples" means the sample_rate*sample_offset
produces larger error when I use it for getting sync message's receive time?

close to zero samples is complex numbers 1e^-4 + 1e^-4*j. The reason I
do not use zero complex numbers is because I am afraid that the FPGA
switches off the TX chain if you continuously try to transmit zeros. I
am not sure that it does, you can experiment with that.


 4.The 1us is the jitter caused by sample duration.What about the jitter
produced by tx/rx tags? I do think 160us is mainly caused by the difference
between actual time when message leaving/arriving antenna and tx/rx tags's
time.What's your opinion?

I do not know about the tx/rx tags. Of course the FPGA needs time to
do the DSP, so it is possible that what you are seeing is the DSP
time. However, the DSP time should be almost completely deterministic,
so it cannot be a jitter just some time offset. If you see a jitter,
then I think it must be caused by either ethernet or some DSP startup
artifacts.

Miklos


Best,
Harry


2013/10/12 19:17, Miklos Maroti wrote:

Hi Harry,

First, you should always transmit from node A, but when you want to be
silent, then transmit something very close to zero complex numbers.
This will ensure, that you have a nice continuous stream of data going
out, and you can plan to do anything you want with sampling rate
precision (better than 1us). Once you can do this, then transmit some
pseudo random sequence from node A, e.g. BPSK with 2 samples per bit,
and it is possible to synchronize to that with sampling rate precision
again. Now comes the trick: node A not only transmits continuously,
but it also receives continuously just like node B (with an antenna or
just overhearing in the board). Both A and B synchronizes to the
signal transmitted by A. In case of node A you do not have to worry of
slightly different clocks, so once you are synchronized you will never
get out of sync if you count the number of samples. In the case of
node B it is harder, since node A might run a little faster or slower,
so you will get out of sync, so you have to maintain synchronization.
At this point, you have achieved synchronization of the two USRP
nodes: you can stop sending periodically (continue spending close to
zero samples) and then you can sample some data from node C, doing
beam forming (depends on modulation), or whatever. You can correlate
the received samples at node B with the received samples at node A
with close to one sample precision (better than 1us).

If you do not want to transmit all the time, then you can use TX tags,
but it gets a little trickier, and I think there is some bug in the
FPGA hardware to cause very rarely one sample shift between the TX and
RX chain. I am not absolutely sure about this, but I could not explain
something in any other way.

Best,
Miklos

On Sat, Oct 12, 2013 at 10:10 AM, Harry Zhang  wrote:

Dear Miklos,
  I'm glad to hear from you.
  The idea of t

Re: [Discuss-gnuradio] Time synchronization between two USRPs without external signal

2013-10-12 Thread Harry Zhang

Dear Miklos,
Thank you for your inspiring reply.
1.I do think this method sounds like a receiver-receiver sync while 
sync message's transmitter A also doing beacon node C's function ( 
(1)sending sync message and (2)recording receive time which would be 
sended to B for sync).Is it correct?

2.For 1us accuracy, does it mean the sample rate must be more than 1e6?
3.Does "close to zero samples" means the sample_rate*sample_offset 
produces larger error when I use it for getting sync message's receive time?
4.The 1us is the jitter caused by sample duration.What about the 
jitter produced by tx/rx tags? I do think 160us is mainly caused by the 
difference between actual time when message leaving/arriving antenna and 
tx/rx tags's time.What's your opinion?


Best,
Harry

2013/10/12 19:17, Miklos Maroti wrote:

Hi Harry,

First, you should always transmit from node A, but when you want to be
silent, then transmit something very close to zero complex numbers.
This will ensure, that you have a nice continuous stream of data going
out, and you can plan to do anything you want with sampling rate
precision (better than 1us). Once you can do this, then transmit some
pseudo random sequence from node A, e.g. BPSK with 2 samples per bit,
and it is possible to synchronize to that with sampling rate precision
again. Now comes the trick: node A not only transmits continuously,
but it also receives continuously just like node B (with an antenna or
just overhearing in the board). Both A and B synchronizes to the
signal transmitted by A. In case of node A you do not have to worry of
slightly different clocks, so once you are synchronized you will never
get out of sync if you count the number of samples. In the case of
node B it is harder, since node A might run a little faster or slower,
so you will get out of sync, so you have to maintain synchronization.
At this point, you have achieved synchronization of the two USRP
nodes: you can stop sending periodically (continue spending close to
zero samples) and then you can sample some data from node C, doing
beam forming (depends on modulation), or whatever. You can correlate
the received samples at node B with the received samples at node A
with close to one sample precision (better than 1us).

If you do not want to transmit all the time, then you can use TX tags,
but it gets a little trickier, and I think there is some bug in the
FPGA hardware to cause very rarely one sample shift between the TX and
RX chain. I am not absolutely sure about this, but I could not explain
something in any other way.

Best,
Miklos

On Sat, Oct 12, 2013 at 10:10 AM, Harry Zhang  wrote:

Dear Miklos,
 I'm glad to hear from you.
 The idea of this experiment is quite similar to the core of your honored
paper "The flooding time synchronization protocol". It's a
transmitter-receiver sync method using precious tx/rx timestamp to
synchronize transmitter's and receiver's local timer.
 On the transmitter side, sync message is transmitted every 1 sec. Using
rx tags, it's easy to get the average receive interval is 1.0003sec and the
jitter is around 320us. Considering the interval jitter is 2*(rx jitter+rx
jitter), the sync accuracy is 160us.
 I wanna break into USRP FPGA to achieve 1us or less accuracy. And I
don't understand your "continuously transmission". Could give me some
details.


2013/10/12 9:03, Miklos Maroti wrote:

Hi Harrz,

What do you mean by 160us precision? How did you measure it or compute
it exactly? I do not understand your goal, but it is quite simple to
synchronize two usrps with continuous transmission to within one
sample and if you continuously receive the transmitted signal on the
transmitter side, then you can avoid all time stamping problems and
effectively synchronize the tx and rx chains of a single usrp.

Miklos

On Thu, Oct 10, 2013 at 3:51 PM, Harry Zhang  wrote:

Hi,
I have implemented time synchronization between two USRPs without GPSDO,
MIMO cable or referring to computer's time.It's a sender-receiver method
based on message exchange. It will be included in my next paper soon.
I use the tx_time and tx_sob tag to transmit the message at the planned
time. When this message researches the receiver, I can get the receive
time via rx_time tags. The transmit and receive time of tx tags and rx
tags are recorded in USRP motherboard without the jitter of Ethernet
cable or operating system. So I think it could achieve the best accuracy
without modifying FPGA.
The experiment shows the accuracy is around 160us. I think it's mostly
caused by the jitter of the tx tag's time. I wanna achieve better
accuracy than this and the best way is adding a hardware timestamp
module in FPGA. Is this way feasible?
As for now, I wanna get a depth understanding of the implementing of tx
tag,so I will know the accuracy limit of this method. But I'm not
fam

Re: [Discuss-gnuradio] Time synchronization between two USRPs without external signal

2013-10-12 Thread Harry Zhang

Dear Miklos,
I'm glad to hear from you.
The idea of this experiment is quite similar to the core of your 
honored paper "The flooding time synchronization protocol". It's a 
transmitter-receiver sync method using precious tx/rx timestamp to 
synchronize transmitter's and receiver's local timer.
On the transmitter side, sync message is transmitted every 1 sec. 
Using rx tags, it's easy to get the average receive interval is 
1.0003sec and the jitter is around 320us. Considering the interval 
jitter is 2*(rx jitter+rx jitter), the sync accuracy is 160us.
I wanna break into USRP FPGA to achieve 1us or less accuracy. And I 
don't understand your "continuously transmission". Could give me some 
details.


2013/10/12 9:03, Miklos Maroti wrote:

Hi Harrz,

What do you mean by 160us precision? How did you measure it or compute
it exactly? I do not understand your goal, but it is quite simple to
synchronize two usrps with continuous transmission to within one
sample and if you continuously receive the transmitted signal on the
transmitter side, then you can avoid all time stamping problems and
effectively synchronize the tx and rx chains of a single usrp.

Miklos

On Thu, Oct 10, 2013 at 3:51 PM, Harry Zhang  wrote:

Hi,
I have implemented time synchronization between two USRPs without GPSDO,
MIMO cable or referring to computer's time.It's a sender-receiver method
based on message exchange. It will be included in my next paper soon.
I use the tx_time and tx_sob tag to transmit the message at the planned
time. When this message researches the receiver, I can get the receive
time via rx_time tags. The transmit and receive time of tx tags and rx
tags are recorded in USRP motherboard without the jitter of Ethernet
cable or operating system. So I think it could achieve the best accuracy
without modifying FPGA.
The experiment shows the accuracy is around 160us. I think it's mostly
caused by the jitter of the tx tag's time. I wanna achieve better
accuracy than this and the best way is adding a hardware timestamp
module in FPGA. Is this way feasible?
As for now, I wanna get a depth understanding of the implementing of tx
tag,so I will know the accuracy limit of this method. But I'm not
familiar with the FPGA, so could anyone describe how tx_time tag
implemented or give me some documents about this?
Thanks in advance.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Time synchronization between two USRPs without external signal

2013-10-10 Thread Harry Zhang
Hi,
I have implemented time synchronization between two USRPs without GPSDO,
MIMO cable or referring to computer's time.It's a sender-receiver method
based on message exchange. It will be included in my next paper soon.
I use the tx_time and tx_sob tag to transmit the message at the planned
time. When this message researches the receiver, I can get the receive
time via rx_time tags. The transmit and receive time of tx tags and rx
tags are recorded in USRP motherboard without the jitter of Ethernet
cable or operating system. So I think it could achieve the best accuracy
without modifying FPGA.
The experiment shows the accuracy is around 160us. I think it's mostly
caused by the jitter of the tx tag's time. I wanna achieve better
accuracy than this and the best way is adding a hardware timestamp
module in FPGA. Is this way feasible?
As for now, I wanna get a depth understanding of the implementing of tx
tag,so I will know the accuracy limit of this method. But I'm not
familiar with the FPGA, so could anyone describe how tx_time tag
implemented or give me some documents about this?
Thanks in advance.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Sample receive time in benchmark

2013-09-19 Thread Harry Zhang

于 2013/9/19 21:56, Tom Rondeau 写道:

On Wed, Sep 18, 2013 at 11:32 PM, Harry Zhang  wrote:

Hi,
My last question
(http://lists.gnu.org/archive/html/discuss-gnuradio/2013-09/msg00196.html)
seems no answer.But I get another question.
I wanna know the actual receive time of a sample. If I get the rx
tag(sample count 100), I can calculate the any sample's receive time.
For example,sample 1600's receive time: (1600-100)*sample_rate.
Is it correct?

Yes, as long as you are using the right sample rate.


In my last question, the sender transmit data every 3 second and the
uhd_fft shows it's true.But the above formula give the result about 1
second.
I think the sample_rate is wrong. I'm using benchmark_rx(gmsk) in
narrowband and the UHD shows the sample_rate is 200ksample/s.
Sample_rate wrong or my formula,which is wrong?
Any suggestion is appreciated.

Make sure you are using the sample rate and not the symbol rate. Each
symbol is transmitted using some number of samples per symbol. I'm
sure you already know that, but just to make sure as that's a likely
cause of confusion when setting things up.

If I'm using the symbol_rate, the actual sample_rate must be more that 
that I'm using now. Thus the formula gives result even less than 1 
second, which is still not coming to 3 second.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Sample receive time in benchmark

2013-09-18 Thread Harry Zhang
Hi,
My last question
(http://lists.gnu.org/archive/html/discuss-gnuradio/2013-09/msg00196.html)
seems no answer.But I get another question.
I wanna know the actual receive time of a sample. If I get the rx
tag(sample count 100), I can calculate the any sample's receive time.
For example,sample 1600's receive time: (1600-100)*sample_rate.
Is it correct?
In my last question, the sender transmit data every 3 second and the
uhd_fft shows it's true.But the above formula give the result about 1
second.
I think the sample_rate is wrong. I'm using benchmark_rx(gmsk) in
narrowband and the UHD shows the sample_rate is 200ksample/s.
Sample_rate wrong or my formula,which is wrong?
Any suggestion is appreciated.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] tx_tag's time VS. USRP time

2013-09-16 Thread Harry Zhang
Hi everyone,
I wanna send data at desired time with USRP N210. The codes look like these
-
int num=1;
pmt::pmt_t key = pmt::pmt_string_to_symbol("sob");
uint64_t offset = this->nitems_written(0);
pmt::pmt_t value = pmt::pmt_make_tuple(
pmt::pmt_from_uint64(5+3*num),
pmt::pmt_from_double(0.000)
);
this->add_item_tag(0, offset, key, value);
num+=1;
offset = this->nitems_written(0)+n;
key = pmt::pmt_string_to_symbol("tx_tag");
value = pmt::pmt_make_tuple(
pmt::pmt_from_uint64(5+3*num),
pmt::pmt_from_double(0.000)
);
this->add_item_tag(0, offset, key, value);
num+=1;
offset = this->nitems_written(0);
key = pmt::pmt_string_to_symbol("eob");
value = pmt::pmt_make_tuple(
pmt::pmt_from_uint64(5+3*num),
pmt::pmt_from_double(0.000)
);
this->add_item_tag(0, offset, key, value);

It is obvious the code make the data sent at 8.00s,11.00s abd
14.00s.On the receive side,I can see the data is sent every 3
seconds.This is correct.But I didn't set USRP time to 0.00 before
executing the code. This means the data were sent at (assuming it's
300.10s now) 303.10s, 306.100s and 309.100. why this?
I'm using Ubuntu12.04 and gnuradio 3.6.5.1.
Any suggestion is appreciated.


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Can not get rx time tags

2013-09-03 Thread Harry Zhang
Hi,
I'm trying to get rx time tags in narrowband Benchmark_tx/rx with a
modified digital_correlate_access_code.cc. But the
"get_tags_in_range(rx_time_tags,0,this->nitems_read(0)+i,this->nitems_read(0)+i+1,pmt::pmt_string_to_symbol("rx_time"))"

method gets no tag in rx_time_tags while the communication between two
USRP N210s running benchmark_rx/tx is OK.
I'm using GNU Radio 3.6.5.1, Ubuntu12.04, boost 1.48 and UHD 3.5.3.
Thanks in advance.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Using UHD control block

2013-08-02 Thread Harry Zhang

Dear Josh,
 I have checked the cmake output and gr_uhd is within the enabled 
components. I'm using Ubuntu12.04 and boost 1.48.

2013/8/3 11:39, Josh Blum wrote:


On 08/02/2013 06:32 AM, Marcus Müller wrote:

Hi Harry Zhang,

UHD in general not related to GRAS.
I don't know either a UHD control nor a status  block. Are you referring
to the UHD USRP source/sink blocks?
However, if you're trying to use any UHD related functionality, you will
need to compile GNURadio with
UHD support, therefore have the UHD headers somewhere Cmake will find
them (thus enabling gr-uhd).


There is a control and status block in grextras. They should show up in
the UHD category tree when installed.
https://github.com/guruofquality/grextras/wiki/Blocks#wiki-misc-uhd-blocks

So I guess you need to check if the the cmake configuration for GRAS
found uhd support. The configuration verbose should tell us this. Just
post the verbose if you have any questions. THanks! -josh

-josh



___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Using UHD control block

2013-08-01 Thread Harry Zhang
Hi,
I install the GRAS. But I can't find the UHD status block or UHD control
block in GRC. How can I use them? Is there any example about using UHD
control block?
Thanks in advance.

___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] Gnuradio3.7 make error

2013-07-30 Thread Harry Zhang

Dear Nathan,
Thank you for your reply.
I have changed the boost to 1.48 but the error remains. According 
to the error information, it seems to require libboost1.40,which puzzles me.


2013/7/30 12:12, Nathan West wrote:

On Mon, Jul 29, 2013 at 11:55 PM, Gong Zhang  wrote:

Dear Nathan,
 I have tried the method in the URL but it does not work. The error
remains.

  2013/7/30 10:58, Nathan West wrote:

On Mon, Jul 29, 2013 at 10:44 PM, Harry Zhang  wrote:

Hi,
  I'm using Ubuntu 12.04 and libboost1.46. I got the following errors
when
I make the project.


libboost1.46 is known to cause problems with GNU Radio. Ubuntu 12.04
should have libboost1.48 available in the repos. Here's some more
info:
http://lists.gnu.org/archive/html/discuss-gnuradio/2013-02/msg00267.html


What do you mean you tried the method in the URL? The cmake flag? The
point of sending that link is the version of boost you have is known
to cause problems with GNU Radio and unless you have a very good
reason for using it you should use another version. If you're having
trouble installing GNU Radio for the first time you might give pybombs
a shot. It's pretty easy to get an installation going for the first
time, especially if you're having a problem with dependencies like
boost.

Here's info on pybombs: http://gnuradio.org/redmine/projects/pybombs/wiki

Nathan




___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


[Discuss-gnuradio] Gnuradio3.7 make error

2013-07-29 Thread Harry Zhang

Hi,
I'm using Ubuntu 12.04 and libboost1.46. I got the following errors 
when I make the project.


[ 85%] Building CXX object 
gr-uhd/examples/c++/CMakeFiles/tags_demo.dir/tags_demo.cc.o

Linking CXX executable tags_demo
/usr/bin/ld: warning: libboost_date_time.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_filesystem.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_program_options.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_regex.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_system.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_thread.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_unit_test_framework.so.1.40.0, needed by 
/usr/local/lib/libuhd.so, not found (try using -rpath or -rpath-link)
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::dir_itr_increment(void*&, void*&, 
std::basic_string, std::allocator >&, 
boost::filesystem::file_status&, boost::filesystem::file_status&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::thread_resource_error::thread_resource_error()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::dir_itr_close(void*&, void*&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::lock_error::lock_error()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::dir_itr_first(void*&, void*&, 
std::basic_string, std::allocator > 
const&, std::basic_string, 
std::allocator >&, boost::filesystem::file_status&, 
boost::filesystem::file_status&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::get_current_path_api(std::basic_stringstd::char_traits, std::allocator >&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::get_mem_block()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::not_found_error()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::get_default_error_string(boost::regex_constants::error_type)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::system::get_generic_category()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::system::get_system_category()'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::put_mem_block(void*)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::raise_runtime_error(std::runtime_error const&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::cpp_regex_traits_implementation::transform_primary(char 
const*, char const*) const'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::perl_matcherstd::allocator >, 
boost::regex_traits > 
>::construct_init(boost::basic_regexboost::cpp_regex_traits > > const&, 
boost::regex_constants::_match_flags)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::filesystem::detail::status_api(std::basic_stringstd::char_traits, std::allocator > const&, 
boost::system::error_code&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::cpp_regex_traits_implementation::transform(char 
const*, char const*) const'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::match_resultsconst*> > >::maybe_assign(boost::match_resultsstd::allocator > > const&)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::re_detail::verify_options(unsigned int, 
boost::regex_constants::_match_flags)'
/usr/local/lib/libuhd.so: undefined reference to 
`boost::basic_regexboost::cpp_regex_traits > >::do_assign(char const*, char const*, 
unsigned int)'

collect2: ld returned 1 exit status
make[2]: *** [gr-uhd/examples/c++/tags_demo] Error 1
make[1]: *** [gr-uhd/examples/c++/CMakeFiles/tags_demo.dir/all] Error 2
make: *** [all] Error 2


___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio