Hi everyone.
I was wondering if someone could please answer the following question?
If I have two signals entering a receiver, both with a power of 0 dBm,
what would be the total input power seen by the receiver? Is it 3 dBm
or 6 dBm?
Thanks.
Sebastiaan
--
Sebastiaan Heunis
Tel: +27 72 950
Dan
I haven't used GNURadio companion before, but what you need to do is the
following:
Set the mux to (0xf1f0f1f0). This will connect ADC0 (which is the first ADC
on side A) to the I input of the first DDC in the USRP. ADC1 (which is also
on side A) will be connected to the I input of the seco
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 72 950 9370
On Mon, Jan 18, 2010 at 7:46 PM, Kyungtae Kim wrote:
> Hi,
>
>
>
> Is there a way to get the data from ADC directly? I can find some examples
> to get it with using FFT, h
e filter and a 32/64 point FFT).
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 72 950 9370
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Hi
I can help a bit with the implementation of the one HBF. It has
31taps, of which every second one, apart from the center one is zero.
the center one is scaled relative to one (2^18 on the FPGA). In total
there is therefore (16+the center one) non-zero taps. This requires 8
multiplications (b
n probably look for some
papers if you're interested.
Sebastiaan
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 72 950 9370
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.
e.
All the times I've used it, I've used trial and error to get a value
for mu.
I implemented a CMA equaliser in Matlab that I can send you if you're
interested.
Sebastiaan
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Afr
Fatih
The fm receiver demo will work when you use a TVRX daughterboard. You
can use a BasicRX daughterboard, but then you would have to use an
analogue filter to prevent aliasing and you would also need to read up
on bandpass sampling to figure out where your frequency of interest
would end up af
stderr, "usrp_standard_rx::set_decim_rate: rate must be
EVEN and in [4, 256]\n");
return false;
}
}
else {
if (rate < 4 || rate > 128){
fprintf (stderr, "usrp_standard_rx::set_decim_rate: rate must be
in [4, 128]\n");
return false;
}
}
Se
Thanks, I managed to sort the problem out. Firstly, I enabled
realtime scheduling by looking at usrp_spectrum_sense.py. Next I used
the RAMdisk in Ubuntu /dev/shm to run my application in (thanks
Jason).
Result is that I am able to sample two channels at 4Msps IQ each and
write it to disk afterw
0, I get
noverruns=0. So with my PC and USRP I can actually get a transfer
rate of 32MB/s which leads me to believe that something in the setup
of my application might cause the problems with the USB transfer rate.
Does anyone have any ideas to what might be happening?
Thank you in advance.
Seb
Martin
Thanks for the reply. How do I set the mux then? Is 0xf2f0f2f0
correct when I have 2 TV tuner modules and 0xf0f0f0f0 correct when I
have only one?
Just to recap, in case you can't remember what the mux, etc. looks
like. ADC 0 and 1 are on the first IC and ADC 2 and 3 are on the
second I
I setup the USRP to only have an I path on the inside?
Do I just use usrp_source_s and then read saved files using
read_float_binary.m?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 83 305 5667
USRP-Documentation
>
> Jordan
>
> ___
> Discuss-gnuradio mailing list
> Discuss-gnuradio@gnu.org
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
--
Sebastiaan Heunis
Radar Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 83 305 5667
This is the same reason why Matlab has an 'fftshift' function.
Sebastiaan
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
t 32MBps?
Thanks.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town, South Africa
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Ujala
That looks like an FM signal at DC with another FM signal about 150kHz
away. The modulating signal of the FM wave in your picture is
probably speech. If you capture another set of samples using the same
procedure, but with rock/rap/hip hop music, etc. (in other words
anything with a lot of
Isulsz
The DDC on the USRP only mixes the signal down using the CORDIC
algorithm. The CORDIC only multiplies the input signal by scale
values corresponding to cos and sine. The phase estimation should
happen in the C++ code on the PC then.
Sebastiaan
__
Ujala
You have to use usrp.tune(self.u, 0, self.subdev,106.2e6). This will
mix whatever is at 106.2MHz down to DC. set_rx_freq is used to
control the DDC in the USRP and only works from -32e6 to 32e6MHz.
The tune function first uses the mixer in the TVRX db to mix the
signal down to 5.75MHz (th
Hi Dan
I tried similar experiments to determine what sample level corresponds
to saturation when using a BasicRX. I think the maximum sample level
that I got to was around 8000->-8000 when using a 10dBm input. I
guess this might also be dependent on the decimation in the CIC, etc.
I've also noti
Ujala
With a decimation of 250, your USRP will only provide you with the
samples from -128kHz to 128kHz-1. So, unless your station of interest
is very close to DC, you won't see it on an FFT of your data. If your
signal is at an IF of 5.75MHz, you will need to sample at 16Msps in
order to digiti
Ujala
I don't know what you mean by the range of frequencies? I'm guessing
you're just referring to the x-axis labels in Matlab. That would
depend on your sampling frequency after the decimation and the number
of points that you use for the FFT. Let's say your sampling frequency
is 16Msps and y
Hi Dan.
I don't think 2^16 denotes the maximum sample value in the USRP. We
have a 12bit ADC, so we start off with -2048->2047. This then gets
bit shifted to the right by 3 places when it enters the USRP, so we
have x8. The CORDIC causes our sample values to be divided by about
1.6. Then we al
YC
I only have Gnuradio with a USRP1, but I assume the procedure should
be similar. There are two blocks, head and skiphead that allow you to
play around with where you want to start recording samples and how
many you record.
Sebastiaan
___
Discuss-g
Mark
Have you made sure that the .rbf is in /usr/local/share/usrp/rev4?
Also, I think that when you issue ls -l when you are in the directory
containing the .rbf file, you should get:
-rw-r--r-- usrp_std.rbf
Sebastiaan
___
Discuss-gnuradio mailing li
ons problem.
There is also this issue with the LED only blinking at higher speed
and never slowing down that I mentioned in my email to the list. What
could be happening?
Best regards
Natalia Olano
2009/5/20 Sebastiaan Heunis :
> Natalia
>
> I don't know which Linux you're using
Salman
Somewhere on a website I found a way to transmit mp3 files using the
USRP. Just can't remember where. What you do is the following:
Use sox to decode the mp3 to a raw file:
sox myfile.mp3 -r 44100 -l -f -c 1 myfile.raw
You can then just open this file in a Gnuradio script and proceed f
Brian
Thanks for that. The power averaging in the FFT makes sense. Dynamic
range includes any spurious, etc? In that case I would be referring
to a SNR of 72dB. I'm going to leave the CORDIC then and just improve
some filtering on the USRP.
Sebastiaan
___
I did something wrong, or could we in fact lose
that much dynamic range in the CORDIC?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Di
Don
> In fact, at
> 10dBm input and 20dB PGA gain I expect your ADC is clipping. Have you
> looked at a plot of your recieved waveform?
I agree with you on this. According to the ADC datasheet, we need a
2Vp-p signal at the ADC to utilise the full dynamic range. One of the
graphs on the datash
that I get with this is 8635, so I'm using about
half of the ADC's dynamic range.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Discuss-gnurad
Matt
Sorry to bother. Please tell me why I lose 6dB when measuring the
signal at pins 17 and 18? I have the RF transformer from Minicircuits
that is supposed to match the 200ohm output of the TVRX to a 50ohm so
that I can measure it on a spectrum analyser. Because it is matched,
I should not ha
Also, can someone quickly tell me about the two inputs on the BasicRx
board. Are they two different channels for sampling two different
signals? If so, how do I get access to both in a Gnuradio app?
Thank you in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, Universi
with
AGC deactivated. Maybe the TVRx wasn't designed to utilise the entire
dynamic range of the ADC??
-What is the maximum signal level after the DDC+filtering,etc? My
guess is around 2047*8 because of the bit-shifting at the ADC
interface.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remo
Marcus
I was wondering about the same thing earlier this year. Have a look
at gr-pager/src/usrp_flex_band.py. Some of the code:
taps = gr.firdes.low_pass(1.0,
1.0,
1.0/40.0*0.4,
1.0/40.0*0.1,
Hi
I have a problem with the audio sink. I'm playing around with the
analysis_filterbank block. I have a GUI allowing the user to pick a
channel. That channel then gets connected to an FM demodulator,volume
control and finally an audio sink. At the start of the app, I
initialise everything and
Eric
I fixed my filterbank trouble. You were right when you said that one
needs to connect EVERYTHING. For instance, let's say you channelised
a signal into 20 channels and you wanted to write channel 5's output
to a file. Then you need to connect channels 0-4 to a null sink (or
whatever), as
bottom to top.
Looking at everything now, it seems to be fine. I just can't get it
to work correctly. I'll play around to try and see what I'm doing
wrong.
Thanks for all the help so far.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel:
Hi
I think I have found what might be my problem with the
analysis_filterbank. When using it as a polyphase channeliser, you
need to start feeding samples in from the bottom channel, upwards.
The gr.analysis_filterbank uses gr.stream_to_streams to split the
input into a number of streams starting
Hi
I managed to figure the connect mistakes that I made out. Now there's
something different that's not working. From what I understand about
the analysis_filterbank, it works as follows (in my case).
You send it a signal with a bandwidth of 4MHz.
You have a lowpass filter with fc = 70kHz and f
Hi
I got my previous problem to work, so no need to respond. I needed to
cast channel to an int.
Thanks for any trouble.
Sebastiaan
On Mon, Jan 12, 2009 at 3:54 PM, Sebastiaan Heunis wrote:
> Hi
>
> Thanks Eric for helping me with the analysis_filterbank and the fact
> that all
ct(boost::shared_ptr
*,gr_basic_block_sptr,int,gr_basic_block_sptr,int)
Where line 100 is this:
self.connect((self.pfb,chan_no),self.final_fft)
Can anyone please help with this?
Thanks a lot.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
Eric
I think the unconnected output port is because I need to first connect
the filterbank to the USRP and then connect one of the channels to
whatever I want to do with it. The code breaks in either the
self.connect(self.u,pfb) or the
self.connect((pfb,5),self.guts,self.volume_control,audio_sink
Eric
Sorry about previously. I guess I need to read more :). I got the
gdb backtrace.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb7dc18c0 (LWP 7143)]
PyErr_Restore (type=0x81422c0, value=0x8e36ac8, traceback=0x0)
at ../Python/errors.c:39
39 ../Python/er
nk you in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
ly managed around 33. That's why I've been playing
around with HBF/no HBF.
Sebastiaan
On Wed, Jan 7, 2009 at 8:44 PM, Eric Blossom wrote:
> On Wed, Jan 07, 2009 at 01:53:03PM +0200, Sebastiaan Heunis wrote:
>> Hi
>>
>> I looked at usrp_flex_band.py to see how blks2.
uradio@gnu.org
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
ication works until I try to connect the usrp source to the
filterbank. I get a Segmentation fault when I try to do this. Does
anyone know what might be wrong?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group,
it as such?
def pick_channel(self,event):
chan = spinctrl.GetValue()
self.channel = int(chan)
self.connect((bank,chan),self.demod)
or do I need to call fg.stop() and fg.start()?
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305
interested in to a block, similar to when
using a mixer in the fm examples?
Thanks a lot.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Disc
able to select the channel that I want by passing it as a parameter
to the new block in a gnuradio application. Does anyone have any
recommendations on code that I can look at to help me? How does
history in filters work in gnuradio blocks?
Thanks a lot.
Sebastiaan
--
Sebastiaan Heunis
Radar
regmult_en, mult_en_pre;
always @(posedge clock)
begin
mult_en_pre <= #1 phase!=8;
mult_en <= #1 mult_en_pre;
end
assign clear = start_d4; // was dC
wire latch_result = start_d4; // was dC
assign strobe_out = start_d5; // was dD
Can anyone ple
nstead if putting it inside an
always block? What's the rule of thumb?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnuradio mailing list
Disc
ain amount of time is so obviously I
want to capture a certain amount of samples every now and then and
compare the FFTs from the two channels.
Does anyone know what I am doing wrong?
Thank you very much.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
multiply middle_data by 16384. Why? Do we scale the output
of the HBF filter by two?
The last question is this:
data_out <= #1 dout[30:15] + (dout[33]& |dout[14:0]);
Is this just the correct way to convert a 34 bit number to a 16 bit one?
Thank you very much in advance.
Sebastiaan
--
unny. I'm trying to do it in Gnuradio and my
application has been running for the last hour. DOes anybody have any
suggestions?
Thank you very much.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel:
o you? Can I email it or do I need to SVN it to Gnuradio? I
still need some cleaning up and commenting of the source code.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel: +27 83 305 5667
___
Discuss-gnu
the signal from the cordic and pass it to the CIC
filter. When I want to have a look at the output of the CIC filter,
can I also do the above to get the output to 12-bit decimal?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
multiply this input signal by a 20MHz cos and sine to
generate the I and Q channels. I just need to generate an FM signal
and get it to 16-bits as previously described and send it to the
cordic with the phase value written to the freq register?
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote
the AGC level sensing part in adc_interface do? Does this
monitor the level of the incoming samples to see if clipping occurs?
The last part, the mux, only routes the different adc inputs to the
correct DDC channels in the FPGA, right?
Thanks in advance.
Sebastiaan
--
Sebastiaan Heunis
positive and negative numbers represented, etc? The
FPGA converts the 12bit input to a 16bit output. What is done to get
it from the 0-4095 input to a 16bit output with + and - numbers?
Thank you very much.
Sebastiaan
--
Sebastiaan Heunis
Radar and Remote Sensing Group, University of Cape Town
Tel
the incoming sine wave and phase
values and save the output from the cordic to a text or datafile. If
you know how to access and read/write files in Iverilog, could you
please just show me a line of code or two to do it?
Thank you very much.
Sebastiaan Heunis
Matt
My DSPing is a bit rusty. With the TVRX card, we send -20MHz to the
DDC. Is this because of 44-64 MHz? The code where the actual FPGA
register gets written is in usrp_standard.cc? Here is a function
called compute_fpga_freq_control_word which takes the -20MHz and
returns 2952790016 which
Hi
I want to write a testbench for phase_acc.v to help me to get started
in simulating the whole decimation scheme. So this is the phase_acc.v
file:
module phase_acc
(clk,reset,enable,strobe,serial_addr,serial_data,serial_strobe,phase);
`include "setting_reg.v"
parameter FREQADDR = 0;
p
_addr),.in(serial_data),.out(freq));
Thank you very much.
Sebastiaan Heunis
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Brian
I had a look at some of the Verilog again. For a decimation of 8,
decim_strobe pulses every 64MHz/4 when FR_DECIM_RATE is equal to 3, so
this is correct. hb_strobe will then be 16MHz/2. I'm looking at the
phase_acc and cordic now. When the DDC gets set to -20MHz as is the
case when we're
cy, so we just keep adding the same freq value
to phase every 1/64MHz?
When I know the above, I should be fine in figuring the rest out.
Thanks for your help.
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
the strobe signals. Logic tells me
that if we're decimating by 16, we have a decimation of 8 in the CIC
and 2 in the HBF, so strobe_decim should be 64MHz/8 and hb_strobe
should be 64MHz/(8*2).
Thank you in advance.
Sebastiaan Heunis
___
Discuss-g
Hi
I read a lot of the USRP's Verilog lately and sort of figured out what
happens on the FPGA. master_control.v generates all the control
signals as far as I understand. I would just like to know how the
strobe signals work.
Looking at master_control.v it seems as if rx_sample_strobe is always
ner module). When I measure this
signal, I just get a random noise signal or something. Could someone
please help me?
Thanks.
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Hi
I managed to get the previous issue sorted. You guys were right,
FIFOs are blocking, so you first need to open a read before you can
start writing to it. Now I just have a question. How do I read this
data in C++? At the moment I am using
double *buf = new double;
FILE* fifo = fopen("myf
Hi
I'm trying to write USRP data to a FIFO and read it out using a C++
app. I can't get it to work. What I did was to type 'mkfifo myfifo'
in the shell. This is the output to ls -l myfifo.
prw-r--r-- 1 sebastiaan sebastiaan 0 2008-07-23 14:20 myfifo
I then tried to run my application, passing
Hi
No need to reply to my previous post. I found that usrp_rx_cfile.py
is in the utils directory and that it just uses the normal gnuradio
file sink, so I'll use that to write to a fifo.
Thank you
Sebastiaan
___
Discuss-gnuradio mailing list
Discuss
Hi
I need to get USRP samples from Gnuradio to C++. Eric mentioned that
a fifo with usrp_rx_cfile is the best approach to do this. All the
examples that I see use file_sink. How should I use usrp_rx_cfile?
Is it just like usrp_rx_cfile(gr.sizeof_gr_comples,filename)? Then
just one more questio
much.
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Hi
I was wondering if anyone could please help me? I'm doing some
measurements on the Microtune Cable modem module. I already modified
the .py file to be able to set the 3 gain stages independently. I am
trying to see how the gains should be set to get an input signal of
2Vp-p to the ADC to be
George
Thanks. So I just reinstall GnuRadio with the new .py file and next
time I use a TvRX daughterboard, I'll be able to access any newly
created functions?
Sebastiaan
On 7/3/08, George Nychis <[EMAIL PROTECTED]> wrote:
>
>
> Sebastiaan Heunis wrote:
>> Sorry if
se the new file?
Thank you
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Eric
Thanks. I read through the code in db_tv_rx.py and I know how that
works now. You're first setting the gain of the rf amp up to a level
of 60dB, then the if amp up to a level of 35 dB and then the pga up to
a level of 20dB. From what I understand I need to modify that .py
file and include
Hi
Can anyone please tell me how to individually control the
amplification stages when using a Microtune tuner module with the usrp
(IF,RF and PGA)? self.subdev0.set_gain() sets the total gain as far
as I understand.
Thank you in advance.
Sebastiaan Heunis
-- Forwarded message --
From: Sebastiaan Heunis <[EMAIL PROTECTED]>
Date: Sat, 21 Jun 2008 19:31:30 +0200
Subject: Re: [Discuss-gnuradio] C++ interface to USRP
To: [EMAIL PROTECTED]
Chuck
I know about the interp = 128, meaning that the data gets decimated to
decrease the
Hi
Can anyone please help me? I want to use the C++ interface in order
to use the Qwt C++ library to create contour plots, etc.
UsrpFAQ/CppInterface has some code illustrating how to do this. I
just have a few questions concerning this. I'm sorry, but my
understanding of sampling is not what it
will need to get the samples to c++ in real-time.
Thank you very much.
Sebastiaan Heunis
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Hi
I need to write a Gnuradio application where I should be able to open
an mp3, decode it and FM modulate it. I do not find any blocks in
Gnuradio that can do this. The idea that I have is to write a C++
block using libmad to decode the mp3 and then use SWIG to make it
available in Gnuradio. I
Hi
Can anyone please help me? I am using gnuradio3.1.1. I had no build
problems and it installed fine. When I try to run
usrp_benchmark_usb.py, I get the a RuntimeError: Unable to find USRP
#0. I don't think that the firmware gets downloaded to the USRP,
since the one light keeps on flashing q
85 matches
Mail list logo