[Discuss-gnuradio] USRP2 firmware and FPGA code for MIMO

2011-06-01 Thread Fisheep

Hi,

I'm trying to implement 2x2 MIMO systems using four USRP2s, two of which are
connected by MIMO Cable and only one USRP2 is connected to computer through
ethernet. 

After I look through the related discussions and document on the website. As
far as I know, the SD card for USRP2 connected to computer should be loaded
with firmware and FPGA code as master. The other SD card for USRP2
connected with MIMO cable should loaded with other firmware and FPGA code as
Slave. However, from the previous discussion
(http://osdir.com/ml/discuss-gnuradio-gnu/2010-12/msg00388.html) , the link
in that page is not found. I can not find the page to download related
files. Besides, I also find that there is some file like packet_router!? is
necessary. But I still can not find the download page.

Does any one have any idea?
Please let me know.
Thanks.


Fisheep



 
-- 
View this message in context: 
http://old.nabble.com/USRP2-firmware-and-FPGA-code-for-MIMO-tp31755121p31755121.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


[Discuss-gnuradio] Where can I download mimo_tx.bin and mimo_tx_slave.bin files?

2010-12-06 Thread Fisheep

Hi,

I'm currently establish two usrp2 synchronized by mimo cable. From previous
discussion and instructions on
http://gnuradio.org/redmine/wiki/gnuradio/USRP2UserFAQ , I should change the
firmware and FPGA code on the SD card. But from the website
http://code.ettus.com/redmine/ettus/projects/public/wiki/U2binaries, there
are no mimo_tx.bin and mimo_tx_slave.bin provided for download.

Do I have to generate these two files by myself or they could be found on
the websites? If I should generate these files, how to do it? Is there any
instruction? (I find that there are mimo_tx.c and mimo_tx_slave.c in
/usrp2/firmware/apps/. But I don know how to use.)

If anyone have any idea, please let me know.
I am deeply appreciate.

Fisheep


-- 
View this message in context: 
http://old.nabble.com/Where-can-I-download-mimo_tx.bin-and-mimo_tx_slave.bin-files--tp30393009p30393009.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] About MIMO-cable

2010-11-18 Thread Fisheep

Hi everyone,

I also have the same question about USRP2 with MIMO Cable. I found from the
forum that it should program the SD card with new firmware, but I don't know
where to find the firmware code on the gnuradio wiki. 

Doee anyone have any idea about this. Please let me know, thanks in
advance:)

Fisheep



Hongliang Zhang wrote:
 
 Hello everyone,
 
 I'm curious about synchronising 2 USRP2 boards using MIMO-cable. Is there
 any firmware code, which supports transmitting and receiving signals from
 two USRP2s connected by MIMO-cable? Which blocks do I need to use in
 GNURadio companion for it? 
 
 By the way, compared to setting ref. and PPS clock, which is the best way
 for setting up MIMO system?
 
 Thanks in advance. :clap:
 
 Best wishes,
 Hongliang
 
 
 
 

-- 
View this message in context: 
http://old.nabble.com/About-MIMO-cable-tp30189888p30255389.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] C++ and python in OFDM doubt

2010-10-20 Thread Fisheep

Hi,

I think you can take a look at those files ofdm.py and ofdm_receiver.py (in
gnuradio/gnuradio-core/src/python/gnuradio/blks2impl/*.) The C++ blocks are
all used inside those files.

The ofdm_receiver.py does the synchronization, remove cp, fft, and
equalization.


FIsheep




Laser_s wrote:
 
 Hello,
 
 I am working on OFDM.
 I have several questions about OFDM codes, and in general GNU radio.
 As I understand, there are functions in C + + that are linked through
 python, right?
 
 if I look on the web:
 http://www.gnuradio.org/doc/doxygen/
 I can find the C + + blocks there for OFDM: gr_ofdm_bpsk_demapper,
 gr_ofdm_cyclic_prefixer, gr_ofdm_frame_acquisition ect 
 
 On the other hand, if you look at the code: benchmark_ofdm_rx.py, it calls
 another function that is ofdm_demod belonging to ofdm.py. Then call
 ofdm_receiver.py later ofdm_sync_ml.py
 
 But I never see the function calls in C + + mentioned above.
 For me this raises several questions:
 
 Benchmark_ofdm_rx.py program uses C + + functions OFDM?
 Is there any way to see a python code in graphical form? as block diagrams
 or something?
 
 My ultimate goal is to take the blocks C + + and use them in simulink for
 a receiver, is it possible?
 
 Thanks
 

-- 
View this message in context: 
http://old.nabble.com/C%2B%2B-and-python-in-OFDM-doubt-tp29969780p30012769.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] USRP1 cannot transmit/receive a OFDM packet discontinuously sometimes

2010-09-15 Thread Fisheep

Hi Tom,

Thanks for your suggestion. I will take your advice and try it out.

But recently I connect two USRP1 with the cable not through the antennas,
hoping to remove the channel effect in this experiment. At the receiver,
using the usrp_fft.py to observe the spectrum of received signal which is
discontinuously transmitted from transmitter. The result shows that
sometimes the spectrum doesn't get rise when transmitter send a packet.Is it
possible that the transmitted packet doesn't transmit from USRP1? If
possible, how do I examine this problem?

Sorry, I'm not very expert in hardware implementation, but I will do my best
to get familiar with USRP. 

Fisheep





Tom Rondeau wrote:
 
 On Tue, Sep 14, 2010 at 12:52 AM, Fisheep fisheep0...@gmail.com wrote:

 Hi,

 My problem is that I try to discontinuously send a OFDM packet by using
 time.sleep() on USRP1, but fail to successfully receive this OFDM packet
 at
 the receiver sometimes.

 Brief Setting Description:
 Code : gnuradio-example/python/ofdm/benchmark_ofdm_tx{rx}.py
 Daughterboard : FLEX900
 OS : Ubuntu 8.10
 Tx :
    send_pkt(data) - time.sleep(1) - send_pkt(data) - time.sleep(1) -
 ...
 Rx :
  ok = False , pktno = 65537, 
  ok = True  , pktno = 1      , 
  ...

 I have surveyed about this discussion on the forum. Using discontinuous
 transmission is to ensure the transmitter successly sending a packet and
 receiver will receive this packet. And I try this scheme on single
 carrier
 case like benchmark_tx{rx}.py on digital file, every packet is successful
 receive at receiver. But when changing to OFDM, not every packet is
 successful receive.

 Is it that fft consumes lots of time and causes the transmitter doesn't
 send
 this packet?
 I think this is the main different between single carrier and OFDM.

 If anyone have any idea about this problem, please let me know.
 I am deeply appreciative.


 Fisheep
 
 
 Fisheep,
 
 I don't think anyone has actually tried doing this. I know when Matt
 and I put the system together, we were concerned only with the
 continuous case. We have some improvements to the OFDM pieces that are
 on my todo list, though, and once the continuous case is finished,
 we'll work on the discontinuous. Until then, though, I'm afraid the
 only advice I could give would be completely speculative.
 
 My first thought would be to see how the synchronization is behaving;
 that's almost certainly where the problem is. We have the
 gr_plot_ofdm.py script that helps to visualize what's happening with
 the received symbols (you'll need to turn logging on and have scipy
 and matplotlib installed). Play with that in loopback mode to
 understand what you're seeing, then see what happens with your
 over-the-air tests.
 
 If you figure out ways to make it better, I'd love to hear it!
 
 Tom
 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/USRP1-cannot-transmit-receive-a-OFDM-packet-discontinuously-sometimes-tp29705204p29715560.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


[Discuss-gnuradio] USRP1 cannot transmit/receive a OFDM packet discontinuously sometimes

2010-09-13 Thread Fisheep

Hi,

My problem is that I try to discontinuously send a OFDM packet by using
time.sleep() on USRP1, but fail to successfully receive this OFDM packet at
the receiver sometimes.

Brief Setting Description:
Code : gnuradio-example/python/ofdm/benchmark_ofdm_tx{rx}.py
Daughterboard : FLEX900
OS : Ubuntu 8.10
Tx : 
send_pkt(data) - time.sleep(1) - send_pkt(data) - time.sleep(1) -
...
Rx :
  ok = False , pktno = 65537, 
  ok = True  , pktno = 1  , 
  ...

I have surveyed about this discussion on the forum. Using discontinuous
transmission is to ensure the transmitter successly sending a packet and
receiver will receive this packet. And I try this scheme on single carrier
case like benchmark_tx{rx}.py on digital file, every packet is successful
receive at receiver. But when changing to OFDM, not every packet is
successful receive.

Is it that fft consumes lots of time and causes the transmitter doesn't send
this packet?
I think this is the main different between single carrier and OFDM.

If anyone have any idea about this problem, please let me know.
I am deeply appreciative.


Fisheep


-- 
View this message in context: 
http://old.nabble.com/USRP1-cannot-transmit-receive-a-OFDM-packet-discontinuously-sometimes-tp29705204p29705204.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


[Discuss-gnuradio] Problem on passing complex data from rx_path to tx_path in benchmark_ofdm

2010-09-04 Thread Fisheep

Hi,

I am currently implement such scheme that have to pass the
information(complex data type) from rx_path to tx_path in benchmark_ofdm.
The information (complex data) is said to be channel gain that can be
calculated by pilot sequence inserted in ofdm symbol, and it can be get from
gr_ofdm_frame_acquisition.cc. And I want to make use of this information for
next transmitted packet. So I need a method to implement this scheme.

Here are some methods that I used to implement but got some problems.

1) In gr_ofdm_frame_acqusition.cc, I save the complex data in a file and
read this file when I send a packet. But it seems that saving file will
slows down the process and causes the packet fail.

2) I rewrite the io_signature in the block of gr_ofdm_frame_acqusition.cc
that increase the output port for the complex data. And connect this port to
the transmit path.
Like this:
Rx-USRP - rx_path --(gr_complex)-- tx_path - Tx-USRP  
I know the rx_path and tx_path are parallel in GNU Radio. Is it possible to
connect these two block with one port?

3) Maybe I can use gr_message. But I don't know how to use it for the data
is complex data type. It seems that gr_message is for string data (unsigned
char). Can it use for complex or floating data type?

Anyone have any suggestions about these problems, please let me know.
I am deeply appreciative.


Fisheep

-- 
View this message in context: 
http://old.nabble.com/Problem-on-passing-complex-data-from-rx_path-to-tx_path-in-benchmark_ofdm-tp29621722p29621722.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] question of dual transmitter/receiver

2010-07-26 Thread Fisheep

Hi,

It seems you have two daughterboards on one USRP1, and you want to
communicate with these two daughterboards.
Maybe you could take a look at fm_tx_2_daughterboards.py first(in
/gnuradio-examples/python/usrp/.).
From your code, I think you didn't modify the USRP setting that causes your
code fail.

Hope that helps,

Fisheep



YouheiFujii wrote:
 
 Hi all,
 
 I'd like to ask some questions about dual transmitter/receiver on USRP1.
 
 I want to make dual transmitter/receiver
 by remodeling benchmark_tx/rx.py.
 
 In detail,
 I want to use two daughterboard   (two FLEX400) on one USRP1.
 The pair of side-A transmit and receive on 412MHz,
 and the pair of side-B transmit and receive on 420MHz.
 
 
   USRP1(tx only)USRP1(rx only)
   ++++
   ||||
   |db1:| 420MHz |db1:|
   | FLEX400(A)FLEX400(A) |
   ||||
   |db2:||db2:|
   | FLEX400(B)FLEX400(B) |
   || 412MHz ||
   ++++
 
 
 Now I made tx-node's program like attachment file,
 and execute this file.
 -
 $ sudo python dual_tx.py -f 412M
 -
 
 However, I got the following error.
 -
 user:/usr/share/gnuradio/examples/digital$ sudo python dual_tx.py -f 412M
 {'verbose': False, 'discontinuous': False, 'samples_per_symbol': 2,
 'usrpx': None, 'interp': None, 'fusb_block_size': 0, 'megabytes': 1.0,
 'rx_freq': 41200.0, 'size': 1500, 'show_tx_gain_range': False,
 'log': False, 'tx_subdev_spec': (0, 0), 'fusb_nblocks': 0, 'lo_offset':
 None, 'tx_gain': None, 'which': 0, 'modulation': 'gmsk', 'excess_bw':
 0.34998, 'bt': 0.34998, 'interface': 'eth0',
 'freq': None, 'bitrate': 10.0, 'from_file': None, 'tx_freq':
 42000, 'mac_addr': '', 'tx_amplitude': 0.25, 'gray_code': True}
 gr_fir_fff: using SSE
 Requested TX Bitrate: 100k Actual Bitrate: 125k
 @
 {'verbose': False, 'discontinuous': False, 'samples_per_symbol': 2,
 'usrpx': None, 'interp': None, 'fusb_block_size': 0, 'megabytes': 1.0,
 'rx_freq': 41200.0, 'size': 1500, 'show_tx_gain_range': False,
 'log': False, 'tx_subdev_spec': (1, 0), 'fusb_nblocks': 0, 'lo_offset':
 None, 'tx_gain': None, 'which': 0, 'modulation': 'gmsk', 'excess_bw':
 0.34998, 'bt': 0.34998, 'interface': 'eth0',
 'freq': None, 'bitrate': 10.0, 'from_file': None, 'tx_freq':
 41200, 'mac_addr': '', 'tx_amplitude': 0.25, 'gray_code': True}
 usrp_open_interface:usb_claim_interface: failed interface 1
 could not claim interface 1: Device or resource busy
 usrp_basic_tx: can't open tx interface
 Traceback (most recent call last):
   File dual_tx.py, line 150, in module
 main()
   File dual_tx.py, line 109, in main
 tb = my_top_block(mods[options.modulation], options)
   File dual_tx.py, line 54, in __init__
 self.txpath_b = usrp_transmit_path.usrp_transmit_path(modulator,
 options)
   File /usr/share/gnuradio/examples/digital/usrp_transmit_path.py,
 line 67, in __init__
 self._setup_usrp_sink(options)
   File /usr/share/gnuradio/examples/digital/usrp_transmit_path.py,
 line 76, in _setup_usrp_sink
 self.u = usrp_options.create_usrp_sink(options)
   File /usr/share/gnuradio/examples/digital/usrp_options.py, line 119,
 in create_usrp_sink
 gain=options.tx_gain,
   File /usr/share/gnuradio/examples/digital/generic_usrp.py, line 199,
 in __init__
 _generic_usrp_base.__init__(self, **kwargs)
   File /usr/share/gnuradio/examples/digital/generic_usrp.py, line 57,
 in __init__
 elif usrpx == '1' or self._subdev_spec: self._setup_usrpx(USRP1_TYPE)
   File /usr/share/gnuradio/examples/digital/generic_usrp.py, line 76,
 in _setup_usrpx
 if self._type == USRP1_TYPE: self._setup_usrp1()
   File /usr/share/gnuradio/examples/digital/generic_usrp.py, line 229,
 in _setup_usrp1
 fusb_nblocks=self._fusb_nblocks)
   File /usr/lib/python2.6/dist-packages/gnuradio/usrp/usrp_swig.py,
 line 2412, in sink_c
 return _usrp_swig.sink_c(*args, **kwargs)
 RuntimeError: can't open usrp
 user:/usr/share/gnuradio/examples/digital$
 -
 
 
 I think, I couldn't make two txpath.
 (I can make txpath_a, but can't make txpath_b)
 But we can make two path ( txpath and rxpath) in tunnel.py.
 Why I can't make two txpath like this way?
 
 I can't  make dual transmit path like this way.
 
 Does anyone has some idea to make ?
 If you know, please tell me dual transmit path technique.
 
 
 Thanks,
 youhei
 
 
 
 #!/usr/bin/env python
 #
 # Copyright 2005,2006,2007,2009 Free Software Foundation, Inc.
 # 
 # This file is part of GNU Radio
 # 
 # GNU Radio is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation; either version 3, or (at your option)
 # any later version.
 # 
 # GNU Radio is distributed in the hope that it will be useful

Re: [Discuss-gnuradio] question of dual transmitter/receiver

2010-07-26 Thread Fisheep

Hi,

Sorry for my unclear suggestion before.
In the fm_tx_2_daughterboards.py code, just refer to the code of USRP
setting and make the same change for benchmark_tx.py. 
The code start from
 # 
# Set up USRP to transmit on both daughterboards
self.u = usrp.sink_c(nchan=2)  # say we want two channels

self.subdev = (self.u.db(0, 0), self.u.db(1, 0))
...
self.u.set_mux(0xba98)
...
 # 
And the setting of USRP1 of benchmark_tx.py
(/gnuradio-examples/python/digital/.) is in usrp_transmit_path.py.
But I remember that the new version of gnuradio hides the USRP setting in
the files of usrp_options.py (/gnuradio-core/src/python/.) and
generic_usrp.py (/gnuradio-core/src/python/blks2impl/.)
If you want to modify these two files, I think it is a little bit difficult. 
Maybe you have to construct a new USRP setting in usrp_transmit_path.py.

The setting of set_mux seems different for tx and rx, but I don't know the
exact reason. Sorry.

I am not sure whether this information is what you want. Hope this helps.

Fisheep


YouheiFujii wrote:
 
 Hi,
 
 Thank you for your advice.
 
  It seems you have two daughterboards on one USRP1, and you want to 
 communicate with these two daughterboards.
 Yes, that's right.
 
 I want to use my dual-db program in /usr/share/example/digital.
 I saw fm_tx_2_daughterboards.py, but that program isn't use digital's 
 py-files and modules.
 
 When I search, I saw the function set_mux.
 I tried use set_mux, but I didn't do that well.
 
 If does anyone have experience of making program which on dual-db on 
 1-USRP1,
 please give me advice.
 
 I have to do well in few days ;-
 
 
 Thanks,
 youhei
 
 (2010/07/26 21:55), Fisheep wrote:
 Hi,

 It seems you have two daughterboards on one USRP1, and you want to
 communicate with these two daughterboards.
 Maybe you could take a look at fm_tx_2_daughterboards.py first(in
 /gnuradio-examples/python/usrp/.).
  From your code, I think you didn't modify the USRP setting that causes
 your
 code fail.

 Hope that helps,

 Fisheep

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

-- 
View this message in context: 
http://old.nabble.com/question-of-dual-transmitter-receiver-tp29253936p29266829.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] OFMD TX and RX

2010-06-15 Thread Fisheep

Hi,

I'm not sure why you can't receive all the packet correctly, but I can
briefly tell you how ofdm implement in GNU Radio.

First, fft_length=512 means it will take 512 subcarriers to do ifft/fft, and
occupied_tones=200 means it only take 200 subcarriers to put your modulation
symbol. Besides, the 200 subcarriers are set at the center of 512
subcarriers. Then you will see there are the remaining 312(512-200)
subcarriers which is zero outside the occupied_tones.

likes this: 

xOOxxOOx
--+ f

O = occupied_tones
x = remaining subcarriers
the two x at the center is to avoid DC offset.
After ifft, the CP is added.

OFDM is sensitive to the bitrate(interpolate/decimate), so set the bitrate
carefully.

Hope this will help you little.

Fisheep.




Chris_Spain wrote:
 
 Hello everybody,
 
 
 I' am trying to test and understand the OFDM Modulation implemented in GNU
 Radio. I'm using the deafult values, fft_lenth=512, occupied_tones =200,
 cp_length= 128 and bpsk modulation, besides, I'm using a RFX900
 Daughterboards on USPR and I'm connecting the TX and RX with a coaxial
 cable.
 
 I try to send a package of 1024 bytes but I'm not receiving all packets,
 always lost the first packet and then is a little bit random, sometimes I
 receive and I demodulated the 2º,3º,4º package and lost 5º, or lost 3º and
 recive ok 2 ºand 4º...
 I don't know what are happening, because I don't know how the OFDM
 implementation map the 1024 bytes onto 200 carriers of data.
 
 If I'm understanding the OFDM theory, with a bpsk modulation each carrier
 are modulated for two bits and my OFDM symbol length are 512+128
 (fft_length+cp_length).So, ¿with 2 bits per data carrier (200), each
 symbol transport 400 bits, 50 bytes? 
 
 That can´t be true because I receive some packages with no errors.
 Somebody can explain me, How works OFDM Modulation implemented in GNU
 Radio?
 
 

-- 
View this message in context: 
http://old.nabble.com/OFMD-TX-and-RX-tp28871027p2368.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] how to use from file in benchmark_tx.py

2010-06-01 Thread Fisheep

Hi,

Try this:
./benchmark_tx.py -f 2.45G -r 512k --from-file=Apress.pdf

I think this will be work.

Fisheep



Muhammad Rizwan-3 wrote:
 
 Hello,
 I have a couple of (in fact more than that) questions, kindly answer
 them asap:
 How to use the option of --from-file in benchmark_tx.py?
 I am using USRP1, gnuradio3.2.1 and RFX2400. Secondly how to use --log
 option in benchmark_rx.py? From where the --from-file option reads the
 input files and how to receive that file? Kindly describe these options
 a little bit as well, what they exactly do?
 This is how i am using it in the terminal:
 ./benchmark_tx.py -f 2.45G -r 512k --from-file Apress.pdf
 but its not working.
 When i use the log file option, it generates a file
 'clock_recovery.dat'. It never opens. What to do?
 Thanks!
 Muhammad Rizwan
 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/how-to-use-from-file-in-benchmark_tx.py-tp28739017p28749883.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


[Discuss-gnuradio] USRP1 can't correctly receive packet from USRP2 using benchmark_tx/rx or benchmark_ofdm_tx/rx

2010-05-18 Thread Fisheep

Hi,

I have currently set up a transmission between USRP1 and USRP2 with FLEX900.
And got the following results.

In gnuradio/gnuradio-example/python/digital/
Successful transmission (ok = True) when
  Tx (USRP1) : ./benchmark_tx2.py -f 900M --tx-amplitude=0.4 -m dbpsk2
  Rx (USRP2) : ./benchmark_rx2.py -f 900M -m dbpsk2 -e eth0
Fail (ok = False and lost lots of packets) when
  Tx (USRP2) : ./benchmark_tx2.py -f 900M --tx-amplitude=0.4 -m dbpsk2 -e
eth0
  Rx (USRP1) : ./benchmark_rx2.py -f 900M -m dbpsk2 

In addition, if using the original modulation like dbpsk not dbpsk2, the
transmission also not work as expected.

also ref to the two discussions:
http://www.ruby-forum.com/topic/203035
http://www.ruby-forum.com/topic/202105

I successfully transmit packet from USRP1 to USRP2 with the following
parameter setting.
  Tx (USRP1) : benchmark_ofdm_new_tx.py -f 900M --tx-amplitude=0.4 -i 128
  Rx (USRP2) : benchmakr_ofdm_new_rx.py -f 900M -d 100
But the same problem as above, USRP1 can't receive correct packet from
USRP2.

Does anyone has any suggection about this problem, please let me known,
Thanks.

Sincerely,
Fisheep



-- 
View this message in context: 
http://old.nabble.com/USRP1-can%27t-correctly-receive-packet-from-USRP2-using-benchmark_tx-rx-or-benchmark_ofdm_tx-rx-tp28603392p28603392.html
Sent from the GnuRadio mailing list archive at Nabble.com.


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


Re: [Discuss-gnuradio] bpsk lost some packet when transmit data discontinuously

2010-03-14 Thread Fisheep

Tom,

It is really what you are said. After I transmitted packet several times, I
got the
probability of 1/2 that correctly received packet and probabilty of 1/2 that
got nothing.
I think this result is explicit when I change the carrier frequency from
900M Hz to 2.4G Hz.

It is my fault. I thought that it will work like a bpsk if I removed the
differential encoder/decoder
from dbpsk.py. But I haven't do the channel estimation to get the correct
phase rotation.

Did anyone try to implement the channel estimation into gnuradio?

I find that at the gr_mpsk_receiver_cc block there is a parameter theta that
pass into this block.
In dbpsk the theta is set to 0. Is it correct that I pass the phase rotation
from the channel estimation?
If is, how do I do the channel estimation before the synchronization...there
are two samples/symbol
before the gr_mpsk_receiver_cc block. 

Sorry for I first contact with software defined radio. And I really don't
have a complete concept of the 
transmission structure when it involves synchronization and channel
estimation.

Fisheep



Tom Rondeau wrote:
 
 On Tue, Mar 9, 2010 at 3:03 AM, Fisheep fisheep0...@gmail.com wrote:

 Hi:

 I have some problem about dbpsk and bpsk using benchmark_tx/rx.py with
 some
 modification.

 My experiment set up was that the transmitter waits for a time delay (0.5
 s)
 after sending a packet.
 It means that we transmit data discontinuously.

 If we using dbpsk modulation, we can successfully receive every packet.
 But if we removed the differential encoder/decoder (equals to bpsk
 modulation), we uaually
 lost some packet (almost half of the data lost).

 However, when we transmit data continuously,the bpsk modulation seems
 work
 fine and we can successfully receive every packet.

 My problem is that what reason causing the bpsk modulation can not
 successfully receive packet when
 transmit data discontinuously.

 Could anyone have any idea about it, please let me know.
 I am deeply appreciative.

                             Fisheep :)
 
 
 Fisheep,
 
 I'm wondering how you are compensating for the phase ambiguity of the
 BPSK signal in the receiver? In the current DBPSK, there is no method
 to properly rotate the constellation because the differential encoding
 doesn't care. If you are just transmitting BPSK, you'll have a 180
 degree phase ambiguity in the receiver. If that's the case, then for
 every burst of a packet, when the receiver locks to the constellation,
 it will be in one of two phase rotations, one which works and one
 which inverts every symbol. They should be distributed with equal
 probability, so half of the time you'll have the correct rotation and
 the other half you won't.
 
 When you transmit continuously, I would expect that you'll also see
 the same behavior. If you've got the right rotation, you'll receive
 every packet. Otherwise, you'll see nothing. Does that happen
 sometimes?
 
 Tom
 
 ___
 Discuss-gnuradio mailing list
 Discuss-gnuradio@gnu.org
 http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
 
 

-- 
View this message in context: 
http://old.nabble.com/bpsk-lost-some-packet-when-transmit-data-discontinuously-tp27832481p27893508.html
Sent from the GnuRadio mailing list archive at Nabble.com.



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


[Discuss-gnuradio] bpsk lost some packet when transmit data discontinuously

2010-03-09 Thread Fisheep

Hi:

I have some problem about dbpsk and bpsk using benchmark_tx/rx.py with some
modification.

My experiment set up was that the transmitter waits for a time delay (0.5 s)
after sending a packet.
It means that we transmit data discontinuously.

If we using dbpsk modulation, we can successfully receive every packet.
But if we removed the differential encoder/decoder (equals to bpsk
modulation), we uaually 
lost some packet (almost half of the data lost). 

However, when we transmit data continuously,the bpsk modulation seems work
fine and we can successfully receive every packet.

My problem is that what reason causing the bpsk modulation can not
successfully receive packet when
transmit data discontinuously.

Could anyone have any idea about it, please let me know.
I am deeply appreciative.

 Fisheep :)
-- 
View this message in context: 
http://old.nabble.com/bpsk-lost-some-packet-when-transmit-data-discontinuously-tp27832481p27832481.html
Sent from the GnuRadio mailing list archive at Nabble.com.



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


Re: [Discuss-gnuradio] bpsk lost some packet when transmit data discontinuously

2010-03-09 Thread Fisheep

Thanks for your reply.

I thought that the problem can not get enough data to fill up a packet could
happen on any modulator.

But why we could receive every packet properly when using dbpsk and lost
packets when using bpsk?
(Under transmitting each packet with a time interval.)

And I went through the packetizer.py quickly and found that it seems that
different modulations have different packet preambles.
i.e. 
preamble = conv_packed_binary_string_to_1_0_string('\xA4\xF2') 
preamble_bpsk = conv_packed_binary_string_to_1_0_string('\x55\x55\x55') 
preamble_qpsk =
conv_packed_binary_string_to_1_0_string('\x1E\x1E\x1E\x1E\x1E\x1E') 
...
Does this different cause the bpsk can not receive data properly?


Again, Thanks for your reply. It really helps me a lot.
I am deeply appreciative.

Fisheep :)



Michael Berman-2 wrote:
 
 The problem does not lie with the bpsk modulator, the problem is in the
 packetizer.  The packetizer waits until it gets enough data to completely
 fill up a packet, generally resulting in the loss of the last packet as
 there is not enough data to fill it perfectly.
 
 There is a modified copy of the packetizer.py that you could use that has
 been set up to handle this specific async digital communication scenario
 at
 http://code.google.com/p/softwaredefinedradio .  If you look at
 .../trunk/src/Data_Path, there is a modified Python file for
 packetizer.py.
 You may also want to look at the dpsk.py file in this directory, as it
 shows
 how to set up the top level design to use a message queue for the
 asynchronous sending of packets.  The last (useful) file in this director
 is
 the txrx_controller.py, which establishes a custom rudimentary protocol to
 ensure packet retrieval went well, and all information is received
 properly.  There is some documentation for this in the Docs folder.
 
 
 -Michael Berman
 
 On Tue, Mar 9, 2010 at 12:03 AM, Fisheep fisheep0...@gmail.com wrote:
 

 Hi:

 I have some problem about dbpsk and bpsk using benchmark_tx/rx.py with
 some
 modification.

 My experiment set up was that the transmitter waits for a time delay (0.5
 s)
 after sending a packet.
 It means that we transmit data discontinuously.

 If we using dbpsk modulation, we can successfully receive every packet.
 But if we removed the differential encoder/decoder (equals to bpsk
 modulation), we uaually
 lost some packet (almost half of the data lost).

 However, when we transmit data continuously,the bpsk modulation seems
 work
 fine and we can successfully receive every packet.

 My problem is that what reason causing the bpsk modulation can not
 successfully receive packet when
 transmit data discontinuously.

 Could anyone have any idea about it, please let me know.
 I am deeply appreciative.

 Fisheep :)
 --
 View this message in context:
 http://old.nabble.com/bpsk-lost-some-packet-when-transmit-data-discontinuously-tp27832481p27832481.html
 Sent from the GnuRadio mailing list archive at Nabble.com.



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

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

-- 
View this message in context: 
http://old.nabble.com/bpsk-lost-some-packet-when-transmit-data-discontinuously-tp27832481p27836131.html
Sent from the GnuRadio mailing list archive at Nabble.com.



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


[Discuss-gnuradio] Different modulation scheme between header and payload

2009-12-27 Thread Fisheep

Hello guys,
I try to modify the ./benchmark_tx/rx.py in gnuradio-examples/digital,
wish to set different modulation scheme for header and payload.
Ex: header with dBPSK modulation
 payload with dQPSK modulation

But I face some difficulties: 
 1.)  We cannot extract arbitrary size of data for output 
 2.)  Synchronization schemes are different among modulation schemes 
  (For we need to find header first, but after we find header, 
   we have dealt the payload with wrong synchronization scheme
already)

Could someone give me some advice about how to implement it?
I am deeply appreciative.

  Fisheep :)
   
-- 
View this message in context: 
http://old.nabble.com/Different-modulation-scheme-between-header-and-payload-tp26934215p26934215.html
Sent from the GnuRadio mailing list archive at Nabble.com.



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