[Discuss-gnuradio] Model name of different components of USRP radio front ends
I am working on how channel scheduling algorithm influences system level power consumption in software defined radios. I need the power consumption of different components of SDR front ends. Is there any document that lists the model names of the following components in USRP; 1. ADC 2. DAC 3. Analog filters at different stages of the radio front end chain 4. VCO 5. Mixer 6. Programmmable amplifier, etc. If I get the model names of these components, I can look at the individual data sheets and find the corresponding power measurement. Any feedback will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [USRP-users] Model name of different components of USRP radio front ends
Thanks a lot, Doug. I appreciate your reply. On Tue, Jan 7, 2014 at 4:25 PM, Doug Knabe dkn...@airmail.net wrote: On 01/07/2014 03:02 PM, Nazmul Islam wrote: I am working on how channel scheduling algorithm influences system level power consumption in software defined radios. I need the power consumption of different components of SDR front ends. Is there any document that lists the model names of the following components in USRP; 1. ADC 2. DAC 3. Analog filters at different stages of the radio front end chain 4. VCO 5. Mixer 6. Programmmable amplifier, etc. If I get the model names of these components, I can look at the individual data sheets and find the corresponding power measurement. Any feedback will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. Muhammad, Schematics for USRP are located here. Pick the model of interest. http://code.ettus.com/redmine/ettus/projects/public/documents Cheers, Doug Knabe -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] gr-modtool: command not found?
Hello, I have used the python and gnuradio-companion parts of gnuradio till now. I am going through the tutorial of http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModules#gr-modtool-The-swiss-army-knife-of-module-editingat present. I have tried to execute both of the following commands outside my gnuradio directory: gr_modtool newmod howto gr-modtool newmod howto Unfortunately, I get the following error: gr_modtool: command not found The website says that gr-modtool comes with gnuradio installation by default. I installed this version of gnuradio 6-7 months ago (Can I check my gnuradio version with a simple command?). Since I don't have gr_modtool, do I have to install it separately? Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Is anyone attending ICC 2013?
Hello, Is anyone attending ICC 2013? (http://ieee-icc.org/). I have a paper there. We implemented a USRP/GNUradio based channel sounder last summer and the ICC paper talks about it. We registered for the conference. Unfortunately, my employer, ran out of the travel grant. If any of you plan to attend ICC '13, I would be really grateful if you can present our powerpoint slides. Sorry for this off-topic mail. Thanks in advance! Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] ADC and DAC of USRP
Hello, I am investigating *the ADC/DAC power consumption vs. sampling rate* in different software defined radio's. Where can I get the specific ADC and DAC models that an USRP RF daughterboard (e.g. SBX) uses? If I know the model, I assume that I can go to the manufacturer's website and find the power consumption model. In general, is the ADC/DAC power consumption of the present-day SDR's comparable to the maximum transmit power (e.g. 100 mW in SBX)? If anyone has looked at it before, please let me know. Thanks for reading the email! Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] How can I patch UCSBJello files to my existing gnuradio version?
Thanks a lot, Tom. I am trying to follow the instructions of https://www.cgran.org/wiki/UCSBJello line-by-line. However, I am facing the following issues in step 1 and step 2. Any feedback will be appreciated. *Step 1: Download gnuradio-3.2.2 tarball ( http://gnuradio.org/redmine/wiki/gnuradio/Release32Branch)* The mentioned website does not exist any more. Which command shall I use? Shall I download the latest weekly development code from http://gnuradio.org/files/builds/gnuradio-current.tar.gz? *Step 2: Patch Jello files to gnuradio * It means that I will have to download the jello files separately and then copy to the GNUradio folder, right? I tried the following wget command to recursively download all files of the jello folder ( https://www.cgran.org/browser/projects/ucsb_jello). wget -r --no-parent --reject index.html* --no-check-certificate https://www.cgran.org/browser/projects/ucsb_jello However, it is not downloading a lot of files correctly, i.e., some .cpp and .py files are getting downloaded in corrupt version. I have always installed gnuradio through Marcus's build-gnuradio code. Therefore, I am sorry if these tarball related questions are very novice. Thanks, Nazmul On Fri, Feb 22, 2013 at 9:54 AM, Tom Rondeau t...@trondeau.com wrote: On Thu, Feb 21, 2013 at 4:34 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hello, I am trying to patch UCSBJello files to my (already installed) gnuradio version. I installed the latest version of gnuradio a couple of days ago using the build-gnuradio script. The UCSBJello project page in CGRAN (https://cgran.org/wiki/UCSBJello) tells to download the tarball, patch the files and then run the build gnuradio command. Since, I have gnuradio running in my laptop already, how can I patch the UCSB Jello files to my existing gnuradio version? I can download each file of UCSB Jello one-by-one and see if that works. However, that will take a long time and I wonder if there is any shortcut. I am sorry if this sounds a very novice question. Any feedback will be very appreciated. Thanks, Nazmul Nazmul, I don't think there's really a short-cut. I'm not sure exactly what you mean by downloading each file, but then again, I'm not familiar with that UCSB project. I would just download the project, extract it, then try to build by hand and see where the compiler tells you there are problems. If this was written against another version of GNU Radio, there are probably going to be some API changes between the versions that affect you. Just work through these until the compiler is happy. Tom -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] How can I patch UCSBJello files to my existing gnuradio version?
Hello, I am trying to patch UCSBJello files to my (already installed) gnuradio version. I installed the latest version of gnuradio a couple of days ago using the build-gnuradio script. The UCSBJello project page in CGRAN (https://cgran.org/wiki/UCSBJello) tells to download the tarball, patch the files and then run the build gnuradio command. Since, I have gnuradio running in my laptop already, how can I patch the UCSB Jello files to my existing gnuradio version? I can download each file of UCSB Jello one-by-one and see if that works. However, that will take a long time and I wonder if there is any shortcut. I am sorry if this sounds a very novice question. Any feedback will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] how to install matlab in ubuntu
You can us Octave. (https://help.ubuntu.com/community/Octave) -- Nazmul On Thu, Feb 7, 2013 at 6:18 AM, Omer Omer omer9...@yahoo.com wrote: hi,can someone tell me how to install matlab in ubuntu.reply soon.thanks. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Converting analog signal to digital
Hello Ghulam, GRC generates discrete complex samples. The concept of ideal continuous source does not exist. Let's assume you generate a sinusoid with 10 kHz tone frequency and 1 MHz sampling rate. If you connect this source block to UHD:USRP_Sink block, the USRP will transmit a 1 MHz sinusoid with a period of 100 discrete samples (1 MHz/10 kHz = 100). Thanks, Nazmul On Wed, Jan 16, 2013 at 9:10 AM, Ghulam Rasool Begh grbegh...@yahoo.comwrote: Hi, I am a beginner in GRC. How can I convert a signal source(Continuous) to digital format. Regards GRB ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] GNUradio based papers on channel sounding and TDMA
Hi Niaz, 1. Go to GNUradio webpage 2. Sign in to your account 3. Go to GNUradio academic papers sections/page 4. There should be an option called Edit. Use it to include your paper. Thanks, Nazmul On Wed, Dec 12, 2012 at 3:00 AM, Niaz Ahmed niaz.ah...@nu.edu.pk wrote: Hi,Martin, I have created a GNURadio account and now wish to upload my paper in the academic section. I wish to be added as contributor so that I may upload in the academic section.I put an email to Tom Rondeau but I guess he might be busy right now doing other stuff. On Sat, Dec 8, 2012 at 3:12 PM, Martin Braun (CEL) martin.br...@kit.eduwrote: On Sat, Dec 08, 2012 at 12:48:22PM +0200, Niaz Ahmed wrote: Hi, Recently my paper A Low-cost and Flexible Underwater Platform to Promote Experiments in UWSN Research has been accepted in WUWNET'12 conference,held on Nov 5th, 6th at Los Angeles , California ,USA. We have implemented our modem using GNURadio.The codes can be accessed at http: //sysnet.org.pk/w/Code_and_Tools. I am unable to upload the paper in the Academic Paper section. I wish if someone help me in uploading. Hi Niaz, this should explain how you log on: http://gnuradio.org/redmine/projects/gnuradio/wiki/FAQ#How-can-I-post-on-this-wiki-use-the-bug-tracker You can use the guest:gnuradio access if you don't like to log on. Thanks for using GNU Radio and contributing to the website, MB -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstraße 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- * Best Regards Niaz Ahmed* NUCES-FAST, Islamabad Campus EXT-369 Engineers motto: cheap, good, fast: choose any two ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [ Calculating the amplitude of a signal source ]
Change the Receiver gain and see if the strength/amplitude of the floating points change or not. If they do, then you are doing the right thing. You can place a signal calibrator (e.g. some variable attenuator) to calibrate the floating point strengths and actual received power. Thanks, Nazmul On Mon, Dec 10, 2012 at 4:03 AM, Ashish Raste rasteash...@gmail.com wrote: Hi all, For calculating the amplitude (assume RMS amplitude) of a signal source, I first tried to record the received samples (I'm using a vector signal generator) in a file_sink and then thought to use it for my calculation. The frequency of the signal from the signal generator was set to 400M and the sampling rate of the USRP source block (in GRC) was set to 2M. Have attached the block diagram below:[image: Inline image 1] I am able to extract the float (the data type I used) values from the file but they are too small to be considered as amplitudes at different points in time i.e the maximum value was 1.03e-09 and minimum was -8.4e-13. Can anyone please tell me how I can calculate the amplitude of any such signal in real-time? Is this approach of calculating amplitude the right one OR is there any other smarter way to do it? Thanks and Regards, -- Ashish ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [ Calculating the amplitude of a signal source ]
Hi Ashish, I have always found it difficult to measure the amplitude of each sample using the floating point strengths. Things like frequency offset will change the result and affect the individual samples. However, calculation of average power based floating point strength works for me. For example, I have measured the power of a received sinusoid using FFT. The strength of the floating point outputs of FFT scale expectantly with the transmitted power. Thanks, Nazmul On Mon, Dec 10, 2012 at 11:09 PM, Ashish Raste rasteash...@gmail.comwrote: Hi Nazmul, Thanks for replying. Change the Receiver gain and see if the strength/amplitude of the floating points change or not. If they do, then you are doing the right thing. You can place a signal calibrator (e.g. some variable attenuator) to calibrate the floating point strengths and actual received power. I did notice significant change in the floating point values recorded when the gain was changed. Have attached the plots of those values for the gain values of 20 dB and 25 dB. I also see that these values do not depict the sine wave (the source being a sine wave). So can I assume that these floats are not exactly the amplitudes but they have some relation to the amplitude of the signal? How can I calculate the amplitude from this recorded data (file_sink)? Thanks and Regards, -- Ashish -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] (no subject)
Which port is your antenna connected to? In SBX/WBX daughterboards, you can only transmit through Tx/Rx. However, you can receive through both Tx/Rx and Rx2. This might not be related to your problem. But just checking. Thanks, Nazmul On Thu, Dec 6, 2012 at 2:14 PM, zhengxiangwei zxw...@hotmail.com wrote: Dear Guys, I encounter one strange problem, I can use usrp to receive signal but cannot transmit signal. My usrp is USRP2 and gnuradio version 3.2.2. When running ursp2_siggen.py, it do not return any error but when I use a spectrum analysis, it shows no signal is transmitted. When running benchmark_tx.py and bbn80211_tx.py, it also reports no error, but there is no signal sent out. Do you guys have any advice? Thank you. = Xiangwei Zheng Research Assistant ECE Department, Virginia Tech Office: Durham Hall 365 Tel: 540-553-6235 ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [USRP-users] Gnu Radio apps freezes (locks up)
Another question, what the app locks up, what makes it recover? Reload app, power cycle user, replug eth cable, re ifconfig, restart PC? In my case, I had to press ctrl+C and then restart the code to make it work. Thanks, Nazmul On Tue, Nov 27, 2012 at 1:13 AM, Josh Blum j...@ettus.com wrote: I have now played with the wireshark. I do not get what you suggest ICMP destination unreachable packet or something similar. The only ICMP protocol related is when I connect the device and setting up the ip address, but no unreachable packets or similar during the uhd run. When running there are only UDP frames/protocol. Instead, however, I discovered some really suspect behavior with the ports changing wildly back and forth on both the device and host, and UDP packet/frame size then change much too. This happens both in the beginning of the streaming (see attached packets 241--287), then after a while it settles to the requested (constant) packet size (3050 bytes, close to the requested 3008 bytes) and the ports becomes fixed (see packets 1271-1277) . But then in the end, when it all fails, the ports on the device and host suddenly change again and the packets becomes very small, like 58 or 60 bytes only (see packets 211078 --). The little actual data in those failing packets seem quite odd too. The packets in the dump all look quite normal. If it helps, here is the mapping for the ports from fw_common.h #define USRP2_UDP_CTRL_PORT 49152 //#define USRP2_UDP_UPDATE_PORT 49154 #define USRP2_UDP_RX_DSP0_PORT 49156 #define USRP2_UDP_TX_DSP0_PORT 49157 #define USRP2_UDP_RX_DSP1_PORT 49158 #define USRP2_UDP_FIFO_CRTL_PORT 49159 #define USRP2_UDP_UART_BASE_PORT 49170 #define USRP2_UDP_UART_GPS_PORT 49172 Please find the transcript of the mentioned and seemingly crucial packages from the beginning and the end when the UHD communication fails. Note the selected packets' numbering. The wireshark captured the command: uhd_fft -a addr=192.168.10.2, recv_frame_size=3008 -s 25e6 Is the behavior any different when the recv_frame_size is unspecified/aka left default MTU? Another question, what the app locks up, what makes it recover? Reload app, power cycle user, replug eth cable, re ifconfig, restart PC? -josh ___ USRP-users mailing list usrp-us...@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] GNUradio based papers on channel sounding and TDMA
Hello, I would like to announce two GNUradio based papers that I published/submitted a few months ago. The full reference of the papers are given below: 1. Muhammad Nazmul Islam, Byoung-Jo J. Kim, Paul Henry, Eric Rozner, A Wireless Channel Sounding System for Rapid Propagation Measurementshttp://arxiv.org/abs/1211.4940, submitted to International Conference on Communications 2013. ( http://arxiv.org/abs/1211.4940) 2. Muhammad Nazmul Islam, Shantharam Balasubramanian, Narayan B. Mandayam, Ivan Seskar, Sastry Kompella, Implementation of Distributed Time Exchange Based Cooperative Forwarding http://arxiv.org/abs/1210.5424, published in Military Communications Conference 2012 (http://arxiv.org/abs/1210.5424) I also want to address a particular point about my channel sounding experiments. I have seen several channel sounding based posts in the mailing list where the authors talk about the speed bottlenecks of Gigabit ethernet cable. Basically, the speed bottleneck of the ethernet cable or the computer limits the temporal resolution of the sliding correlator based channel sounding. For example, if you transmit at 10 Mega Symbol/sec, you can only find multipath components at 100 ns, 200 ns, etc. However, this problem can be bypassed by using frequency domain channel sounding. One can send a frequency hopping sequence, determine the frequency domain channel characteristics and then find the channel impulse response through inverse FFT. In this case, the temporal resolution of the multipath components won't depend on the symbol rate. The paper #1 talks about both sliding correlator and frequency domain channel sounding approaches. I took the opportunity to add a copy on the academic papers section: http://gnuradio.org/redmine/projects/gnuradio/wiki/AcademicPapers. Feedback and comments will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Paper: DCSK chaotic modulations with GNU Radio.
Martin, Thanks a lot for your feedback. I have created an account on this page. My login name is: nazmul.islam. Can you please add me as a contributor? I would like to add my two GNUradio based papers to the mailing list. Thanks, Nazmul On Wed, Nov 21, 2012 at 3:47 AM, Martin Braun (CEL) martin.br...@kit.eduwrote: On Wed, Nov 21, 2012 at 12:42:49AM -0500, Nazmul Islam wrote: Hello, I wonder how I can add a paper to the list of academic papers (http:// gnuradio.org/redmine/projects/gnuradio/wiki/AcademicPapers). I can see the listing of all papers but I don't see a link where I can add my own paper. http://gnuradio.org/redmine/projects/gnuradio/wiki/FAQ#How-can-I-post-on-this-wiki-use-the-bug-tracker ...should tell you all you need. M -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstraße 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Paper: DCSK chaotic modulations with GNU Radio.
Hello, I wonder how I can add a paper to the list of academic papers ( http://gnuradio.org/redmine/projects/gnuradio/wiki/AcademicPapers). I can see the listing of all papers but I don't see a link where I can add my own paper. I am sorry if the question seems too basic :S. Any feedback will be appreciated. Thanks, Nazmul On Wed, Nov 14, 2012 at 3:52 AM, Martin Braun (CEL) martin.br...@kit.eduwrote: Hi Julien, On Tue, Nov 13, 2012 at 07:31:30PM +, Julien.Olivain@lacime.etsmtl.cawrote: I took the opportunity to add a copy on the AcademicPapers page of the wiki: http://gnuradio.org/redmine/projects/gnuradio/wiki/AcademicPapers Thanks for adding this! I had a quick peak, and it seems quite interesting what you've done. The code of the modulator and demodulator used in the paper is available at: https://github.com/jolivain/gr-chaos Feedback and comments are welcome. If somebody thinks this has a place in the main repo, let me know what remain to be done. Perhaps you could add a link and a very brief description on CGRAN (https://www.cgran.org). This is where people would most likely look for extensions like this. You don't have to upload code to the CGRAN SVN repos to do this. Cheers, MB -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstraße 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Channel Impulse Response
Hello Daviko, I used gnuradio in channel sounding experiments during the summer. I did not use gr-sounder. Rather, I designed my own transmitter and receiver block diagrams using GRC. You can do both sliding correlator and frequency domain channel sounding using GNUradio. Sliding correlator method directly generates the channel impulse response. Frequency domain sounding allows you to find the impulse response through inverse FFT procedure. There might be other methods that I am unaware of. In general, the frequency domain channel sounding method gives you the channel strengths at different carrier frequencies.Let's say, your desired frequency band is 700-720 MHz region. You can transmit a sinusoid from the transmitter that repeatedly hops at 700, 701, 702, ..., 720, 700, 701, .. , 720 MHz. Your receiver's carrier frequency should hop repeatedly in the same list. If you can time synchronize your Tx Rx, you will know the path loss by taking FFT and observing the strength of the floating points in the desired FFT bin. Thanks, Nazmul On Fri, Nov 16, 2012 at 3:30 PM, daviko david@gmail.com wrote: Hi I want to find *channel impulse response* for my project using sounding techniques I came to know about the 'gr-sounder' application which does just the thing and was implemented in previous versions of gnuradio. I have version 3.6.0 how can I use this app for my purpose? any help is appreciated Thanks in advance -- View this message in context: http://gnuradio.4.n7.nabble.com/Channel-Impulse-Response-tp38383.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 -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] How can I transmit and receive bit level data using the benchmark codes of gnuradio?
I used GRC to transmit +1 and -1. GRC allows you to transmit any integer or floating point numbers (scaled between -1 to +1). The attached GRC file shows a simple flow-graph about this. Thanks, Nazmul On Thu, Oct 25, 2012 at 3:47 AM, sumitstop sumit.ku...@research.iiit.ac.inwrote: Did you get some solution Nazmul ? I'm curious to know -- View this message in context: http://gnuradio.4.n7.nabble.com/How-can-I-transmit-and-receive-bit-level-data-using-the-benchmark-codes-of-gnuradio-tp29748p38138.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 -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. GLFSR_transmitter.grc Description: Binary data ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] FLL Band-Edge Detectors: Literature?
Hello, Frederic Harris's Multirate Signal Processing: for communication systems has a section on FLL band edge sync. I think that the GR-digital code was designed based on these algorithms. Tom or other GNUradio block designers can verify it. Thanks, Nazmul On Mon, Oct 1, 2012 at 11:40 AM, Martin Braun (CEL) martin.br...@kit.eduwrote: Hi, is there any literature that goes with the FLL synch blocks in gr-digital? Ironically, Google always points me to the GR source files when I search for 'fll band edge' related topics. M -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstraße 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] preload a signal onto USRP
You can preload the signal to a file. Thereafter, just use the flow graph: File source (repeat) -- USRP. Thanks, Nazmul On Tue, Aug 7, 2012 at 4:38 PM, Anisha Gorur at...@virginia.edu wrote: Hello All, I have a bit of a strange question. Is it possible to somehow preload a signal (it would be periodic) onto a USRP so that I would only have to send a signal saying begin transmit, and it would do so, without sending anything besides the begin transmit message over the Ethernet cable? I've been searching around and I haven't found anyone who wanted to do something like this. Thanks, Anisha ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Dynamic flow graph control
Hi, I am trying to simplify my previous email for clarification. I am looking to resolve the following issue: I have two flowgraphs: 1. USRP Source -- File Sink # self.file_sink = gr.file_sink(gr.sizeof_gr_complex*1, Data.dat) 2. USRP Source -- Null Sink I have defined both of them inside a class. I use unlock -- disconnect -- connect -- lock to switch from one flow graph to the other. When I connect USRP--Null, I work on the stored data of Data.dat file. Thereafter, I want to clear the data of the Data.dat file. I use the following line of code to obtain my goal: open(Data.dat,'w').close() However, this command does not seem to erase the data of Data.dat file, i.e., when I run flow graph 1 again, the previous file does not get erased. The file size of Data.dat keeps growing with each run of flow graph. How can I erase the contents of the file sink before I switch to flow graph #1? Any suggestion will be very appreciated. Sorry for sending two emails on the same matter. Thanks, Nazmul On Sun, Aug 5, 2012 at 6:46 PM, Nazmul Islam mnis...@winlab.rutgers.eduwrote: Hello, I have an application where I need to collect the data for 5 seconds from the USRP source and do offline processing for 5 seconds in a repeated manner. I am planning to use the lock unlock features of the gnuradio to obtain my goals. The major part of my code is given below: class SingleSource(grc_wxgui.top_block_gui): self.source = . # Source block self.throttle = .. # throttle self.file_sink = gr.file_sink(gr.sizeof_gr_complex*1, Data.dat)# File Sink self.null_sink = # Null sink self.connect((self.source, 0), (self.throttle, 0)) self.connect((self.throttle, 0), (self.sink, 0)) def reconf1(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0))# Disconnecting the throttle the file sink self.connect((self.gr_throttle_0, 0), (self.gr_null_sink_0, 0)) # re-connecting the throttle the null sink def reconf2(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_null_sink_0, 0)) # disconnecting the throttle the null sink self.connect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0)) # re-connecting the throttle the file sink if __name__ == '__main__': tb = SingleSource() var = 1 tb.start() # Flow graph starts for loop in range(0,2): sleep(5) # Collects the data in the file sink tb.lock() tb.reconf1() # Flowgraph gets locked reconfigured and unlocked tb.unlock() # Now, data is going to the null sink. I don't need this data sleep(5) .# Offline processing open(SineData.dat,'w').close() # I WANT TO ERASE THE DATA IN THE FILE SINK AFTER PROCESSING # SO THAT THE FILE SIZE DOES NOT BIGGER tb.lock() tb.reconf2() # File sink is getting reconnected so that I can collect the data in the next run tb.unlock() Now, the problem is: the file size of SineData.dat should not grow with each loop since I am using open(SineData.dat,'w').close() . In each new loop, I expect the file to only contain the latest information and not the previous ones. However, I am finding that the file size keeps growing with each loop, i.e., the open(SineData.dat,'w').close() command is not working. Any suggestion will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Dynamic flow graph control
Thanks a lot, Sreeraj!! You are right. I made it work using file_sink.close() and file_sink.open() command. Best, Nazmul On Mon, Aug 6, 2012 at 12:39 PM, sreeraj r srees4sr...@yahoo.co.in wrote: This might be happening because gr.file_sink is not closing the passed file handle until its destructed. I checked gr_file_sink_base's source and various functions like open, close and unbuffered writes are supported. Try playing around with these(I haven't used these things yet). http://www.reynwar.net/gnuradio/sphinx/gr/sink_blk.html (Check gr.file_sink section) --- Regards Sreeraj Rajendran http://home.iitb.ac.in/~rsreeraj -- *From:* Nazmul Islam mnis...@winlab.rutgers.edu *To:* GNURadio Discussion List discuss-gnuradio@gnu.org *Sent:* Monday, 6 August 2012 8:52 PM *Subject:* Re: [Discuss-gnuradio] Dynamic flow graph control Hi, I am trying to simplify my previous email for clarification. I am looking to resolve the following issue: I have two flowgraphs: 1. USRP Source -- File Sink # self.file_sink = gr.file_sink(gr.sizeof_gr_complex*1, Data.dat) 2. USRP Source -- Null Sink I have defined both of them inside a class. I use unlock -- disconnect -- connect -- lock to switch from one flow graph to the other. When I connect USRP--Null, I work on the stored data of Data.dat file. Thereafter, I want to clear the data of the Data.dat file. I use the following line of code to obtain my goal: open(Data.dat,'w').close() However, this command does not seem to erase the data of Data.dat file, i.e., when I run flow graph 1 again, the previous file does not get erased. The file size of Data.dat keeps growing with each run of flow graph. How can I erase the contents of the file sink before I switch to flow graph #1? Any suggestion will be very appreciated. Sorry for sending two emails on the same matter. Thanks, Nazmul On Sun, Aug 5, 2012 at 6:46 PM, Nazmul Islam mnis...@winlab.rutgers.eduwrote: Hello, I have an application where I need to collect the data for 5 seconds from the USRP source and do offline processing for 5 seconds in a repeated manner. I am planning to use the lock unlock features of the gnuradio to obtain my goals. The major part of my code is given below: class SingleSource(grc_wxgui.top_block_gui): self.source = . # Source block self.throttle = .. # throttle self.file_sink = gr.file_sink(gr.sizeof_gr_complex*1, Data.dat)# File Sink self.null_sink = # Null sink self.connect((self.source, 0), (self.throttle, 0)) self.connect((self.throttle, 0), (self.sink, 0)) def reconf1(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0))# Disconnecting the throttle the file sink self.connect((self.gr_throttle_0, 0), (self.gr_null_sink_0, 0)) # re-connecting the throttle the null sink def reconf2(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_null_sink_0, 0)) # disconnecting the throttle the null sink self.connect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0)) # re-connecting the throttle the file sink if __name__ == '__main__': tb = SingleSource() var = 1 tb.start() # Flow graph starts for loop in range(0,2): sleep(5) # Collects the data in the file sink tb.lock() tb.reconf1() # Flowgraph gets locked reconfigured and unlocked tb.unlock() # Now, data is going to the null sink. I don't need this data sleep(5) .# Offline processing open(SineData.dat,'w').close() # I WANT TO ERASE THE DATA IN THE FILE SINK AFTER PROCESSING # SO THAT THE FILE SIZE DOES NOT BIGGER tb.lock() tb.reconf2() # File sink is getting reconnected so that I can collect the data in the next run tb.unlock() Now, the problem is: the file size of SineData.dat should not grow with each loop since I am using open(SineData.dat,'w').close() . In each new loop, I expect the file to only contain the latest information and not the previous ones. However, I am finding that the file size keeps growing with each loop, i.e., the open(SineData.dat,'w').close() command is not working. Any suggestion will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA
[Discuss-gnuradio] Dynamic flow graph control
Hello, I have an application where I need to collect the data for 5 seconds from the USRP source and do offline processing for 5 seconds in a repeated manner. I am planning to use the lock unlock features of the gnuradio to obtain my goals. The major part of my code is given below: class SingleSource(grc_wxgui.top_block_gui): self.source = . # Source block self.throttle = .. # throttle self.file_sink = gr.file_sink(gr.sizeof_gr_complex*1, Data.dat)# File Sink self.null_sink = # Null sink self.connect((self.source, 0), (self.throttle, 0)) self.connect((self.throttle, 0), (self.sink, 0)) def reconf1(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0))# Disconnecting the throttle the file sink self.connect((self.gr_throttle_0, 0), (self.gr_null_sink_0, 0)) # re-connecting the throttle the null sink def reconf2(self): self.disconnect((self.gr_throttle_0, 0),(self.gr_null_sink_0, 0)) # disconnecting the throttle the null sink self.connect((self.gr_throttle_0, 0),(self.gr_file_sink_0, 0)) # re-connecting the throttle the file sink if __name__ == '__main__': tb = SingleSource() var = 1 tb.start() # Flow graph starts for loop in range(0,2): sleep(5) # Collects the data in the file sink tb.lock() tb.reconf1() # Flowgraph gets locked reconfigured and unlocked tb.unlock() # Now, data is going to the null sink. I don't need this data sleep(5) .# Offline processing open(SineData.dat,'w').close() # I WANT TO ERASE THE DATA IN THE FILE SINK AFTER PROCESSING # SO THAT THE FILE SIZE DOES NOT BIGGER tb.lock() tb.reconf2() # File sink is getting reconnected so that I can collect the data in the next run tb.unlock() Now, the problem is: the file size of SineData.dat should not grow with each loop since I am using open(SineData.dat,'w').close() . In each new loop, I expect the file to only contain the latest information and not the previous ones. However, I am finding that the file size keeps growing with each loop, i.e., the open(SineData.dat,'w').close() command is not working. Any suggestion will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] multi-tone carrier wave
You can add three sine waves and send them using a single carrier. However, in this approach, the separation of the sine wave frequency components will be limited by the sampling rate. Let's assume that you can obtain a 20 MS/s sampling rate in your system. You can cover 10 MHz frequency band with this sampling rate. If you use a carrier frequency of 902 MHz, you can send different sine waves up to 912 MHz frequency in this approach. Thanks, Nazmul On Thu, Aug 2, 2012 at 4:51 PM, pengyu zhang zhange...@gmail.com wrote: Hi, I know that USRP can send out carrier wave at one frequency. For example, a carrier wave at frequency 902MHz. The carrier wave sent is sin(2*pi*902MHz*t). Can we send a carrier wave at three frequencies? For example, a carrier wave at frequency 902MHz, 915MHz, and 928MHz. The carrier wave I want to send is sin(2*pi*902MHz*t)+sin(2*pi*915MHz*t)+sin(2*pi*928MHz*t). Is multi-tone carrier wave feasible given USRP's hardware? How could I implement this on USRP? Thanks. Pengyu ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Flow graph freezes up
Hello, My gnuradio application seems to freeze from time to time. I think that this issue was raised before ( http://lists.ettus.com/pipermail/usrp-users_lists.ettus.com/2012-March/003969.html). However, I did not see a solution that would permanently fix the problem. My application works in a repeated on-off manner. The receiver USRP works in the following way: 1.The flowgraph starts. It runs for 5 second while collecting data and doing some online processing. Thereafter, the flowgraph stops. 2. I do some off-line processing with the stored data for the next 5 seconds 3. The flowgraph is restarted and step 1-2 are repeated. The flowgraph looks like the following: USRP Source -- Log power FFT -- Vector to stream -- File Sink. However, the flow graph freezes from time to time. This freezing occurs once in every 5-10 trials. It is surprising since I hardly see any overrun in the receiver (I am running the USRP at 4 MS/s and performing 4096 point FFT). Besides, I have a python code that pings the USRP every time before starting the flowgraph. I am using USRP N210, the latest GNUradio UHD drivers, Ubuntu 12.04. Any suggestions on resolving this issue will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Transmission time control from python level
Sorry for the previous email. I mistakenly hit the sent button before completing the mail. Here is the complete mail: Is it possible to see the time through USRP GPSDO with microsecond/millisecond granularity? I want to synchronize the timing of my computers and run gnuradio codes based on the synchronized timing. For example, if I have ethernet based internet connection, I can use ntp servers to synchronize the computers and read the time (using time.time()) with milisecond granularity. I am trying attain the same thing using GPSDO. I am using the following python code. class TimeFind : . self.uhd_usrp_source_0 = uhd.usrp_source( device_addr=, stream_args=uhd.stream_args( cpu_format=fc32, args=peak=0.5, channels=range(1), ), ) ... .. if __name__ == '__main__': tb = TimeFind() print current time : , tb.uhd_usrp_source_0.get_time_now() print last pps time : , tb.uhd_usrp_source_0.get_time_last_pps() print GPS Time: , tb.uhd_usrp_source_0.get_mboard_sensor(gps_time).to_int() tb.Run(True) * I have the following issues: 1. The current time and last pps time show the following output: current time : gnuradio.uhd.uhd_swig.time_spec_t; proxy of Swig Object of type 'uhd::time_spec_t *' at 0x331fcf0 last pps time : gnuradio.uhd.uhd_swig.time_spec_t; proxy of Swig Object of type 'uhd::time_spec_t *' at 0x331fcf0 How can I get the time value? 2. GPS Time: shows the time with 1 second granularity. Can I get higher resolution that 1 second? Is there an option that allows to see the exact time instead of the integer time? I am sorry if these questions were asked before. I am trying to do these from GRC based python codes. Any help will be appreciated. Thanks, Nazmul On Fri, Jul 27, 2012 at 1:15 PM, Nazmul Islam nazmul.is...@gmail.comwrote: Hello Sean, Thanks a lot for your reply. Is it possible to see the time through USRP GPSDO with microsecond/millisecond granularity? I want to synchronize the timing of my computers and run gnuradio codes based on the synchronized timing. For example, if I have ethernet based internet connection, I can use ntp servers to synchronize the computers and read the time (using time.time()) with milisecond granularity. I am trying attain the same thing using GPSDO. I am using the following python code. class : self.uhd_usrp_source_0 = uhd.usrp_source( device_addr=, stream_args=uhd.stream_args( cpu_format=fc32, args=peak=0.5, channels=range(1), ), ) ... .. if __name__ == '__main__': On Thu, Jul 12, 2012 at 9:44 AM, Nowlan, Sean sean.now...@gtri.gatech.edu wrote: Timestamps (tx_time), start-of-burst (tx_sob) and end-of-burst (tx_eob) tags have to be affixed to samples in the work function of an upstream block (before the UHD sink block). The UHD sink block interprets these stream tags and controls the USRP accordingly, but it doesn’t implement the scheduling itself. Your upstream block needs to know how many samples per 1-second burst (which obviously depends on your USRP sample rate) and affix tx_time, tx_sob, and tx_eob tags to the correct samples. ** ** IIRC, one of the stream tags examples already implements the aforementioned algorithm. You just need to lift it and perhaps put it in a new block in line with your GR/GRC processing chain. ** ** Sean ** ** *From:* discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org[mailto: discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org] *On Behalf Of *Nazmul Islam *Sent:* Thursday, July 12, 2012 7:00 AM *To:* j...@ettus.com *Cc:* discuss-gnuradio@gnu.org *Subject:* Re: [Discuss-gnuradio] Transmission time control from python level ** ** Hi Josh, ** ** Thanks a lot for your reply. Can I control the TX stream from the GRC generated python code? In other words, can I change the UHD:USRP source/sink parameters to set up the time stamps or controlling the scheduling? ** ** Thanks, ** ** Nazmul On Sun, Jul 8, 2012 at 12:30 AM, Josh Blum j...@ettus.com wrote: On 07/07/2012 09:30 AM, Nazmul Islam wrote: I have three USRP's and I want them to transmit a continuous stream of repeated GLFSR source in non-overlapping manner. In other words, each transmitter will transmit the source for 1 second and then pause for 5 seconds. All transmitters will transmit during the 'odd' seconds so that there is a 1 second gap between the sources. This process should continue for ever. Currently, I am controlling the starting and stopping time of the flow graphs to achieve my goals. Unfortunately, the code/flowgraph sometimes hangs after 15-20 starts. I am using
Re: [Discuss-gnuradio] Transmission time control from python level
Thanks a lot, Josh. I tried to use the time_spec_t class in the GRC generated python code through the following way: class TimeFind(grc_wxgui.top_block_gui): . self.time_spec_t = uhd.time_spec_t(0) . if __name__ == '__main__': tb = TimeFind() var = 1 tb.start() while var == 1: sleep(0.1) print current fractional time : , tb.time_spec_t.get_frac_secs() print System time: , tb.time_spec_t.get_system_time() print full sec: , tb.time_spec_t.get_full_secs() print real second: , tb.time_spec_t.get_real_secs() tb.stop() Basically, My code produces the following output: current fractional time : 0.0 System time: gnuradio.uhd.uhd_swig.time_spec_t; proxy of Swig Object of type 'uhd::time_spec_t *' at 0x34fbe10 full sec: Swig Object of type 'time_t *' at 0x34fbe10swig/python detected a memory leak of type 'time_t *', no destructor found. real second: 0.0 Unfortunately, this same output is displayed repeatedly. I am not sure why the time does not change. Is there any other command that will keep printing/pulling the recent time after 10 ms (1 ms)? Thanks, Nazmul On Fri, Jul 27, 2012 at 2:07 PM, Josh Blum j...@ettus.com wrote: On 07/27/2012 10:24 AM, Nazmul Islam wrote: Sorry for the previous email. I mistakenly hit the sent button before completing the mail. Here is the complete mail: Is it possible to see the time through USRP GPSDO with microsecond/millisecond granularity? I want to synchronize the timing of my computers and run gnuradio codes based on the synchronized timing. When synchronized to a common clock reference and time, a group of USRPs can perform actions simultaneously with accuracy down the the jitter of GPSDO ref clock + clock synthesizer chain. For example, if I have ethernet based internet connection, I can use ntp servers to synchronize the computers and read the time (using time.time()) with milisecond granularity. I am trying attain the same thing using GPSDO. I am using the following python code. the magic of the GPSDO and time synchronization is that there is a shared pulse aka PPS. This pulse is used to latch a time value into the FPGA at a very specific moment. From that point on, a group of usrps share the same concept of time. class TimeFind : . self.uhd_usrp_source_0 = uhd.usrp_source( device_addr=, stream_args=uhd.stream_args( cpu_format=fc32, args=peak=0.5, channels=range(1), ), ) ... .. if __name__ == '__main__': tb = TimeFind() print current time : , tb.uhd_usrp_source_0.get_time_now() print last pps time : , tb.uhd_usrp_source_0.get_time_last_pps() print GPS Time: , tb.uhd_usrp_source_0.get_mboard_sensor(gps_time).to_int() tb.Run(True) * I have the following issues: 1. The current time and last pps time show the following output: current time : gnuradio.uhd.uhd_swig.time_spec_t; proxy of Swig Object of type 'uhd::time_spec_t *' at 0x331fcf0 last pps time : gnuradio.uhd.uhd_swig.time_spec_t; proxy of Swig Object of type 'uhd::time_spec_t *' at 0x331fcf0 How can I get the time value? see member functions: http://files.ettus.com/uhd_docs/doxygen/html/classuhd_1_1time__spec__t.html 2. GPS Time: shows the time with 1 second granularity. Can I get higher resolution that 1 second? Is there an option that allows to see the exact time instead of the integer time? GPS time in seconds is actually a blocking call that waits until the seconds increments to return you the time. That way you know very precisely that the next pulse will be time_read + 1 seconds. -josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Trying to use the complex int16 option of the UHD blocks
Hi Josh, I am just wondering how the USRP performs the 8 bit mapping for I Q samples. The ADC DAC have 12 - 14 bit precision, I think. When I select the sc8 wire format, does the USRP divide the entire received signal range into 2^8 sectors and uses one number to represent each of those? Thanks, Nazmul On Sun, Jul 22, 2012 at 4:22 PM, Josh Blum j...@ettus.com wrote: On 07/22/2012 01:14 PM, Nazmul Islam wrote: Hello, I am trying to use the complex int16 option of the UHD (source/sink) blocks in my GRC generated python codes. I am doing wide band spectral analysis in my experiments. Therefore, 50 MS/s will be very helpful for me. The host format and the wire format are totally independent options here. Both of these properties also configurable properties in the GRC USRP source/sink blocks. * You need to set the wire format to sc8 (thats 2 bytes per complex sample) to achieve 50 Msps over gigabit ethernet. * The desired host format does not have to change. fc32 (complex floats) is a perfectly valid setting -josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Trying to use the complex int16 option of the UHD blocks
Thanks, Josh. How can I specify the peak from GRC generated Python code? For example, when I select the sc8 wire format, the following code is generated through GRC. stream_args=uhd.stream_args( cpu_format=fc32, otw_format=sc8, channels=range(1), ), If I want to limit the peak to 0.1 (if the received signal is very weak), can I just use the following? stream_args=uhd.stream_args( cpu_format=fc32, otw_format=sc8, peak = 0.5, channels=range(1), ), Thanks, Nazmul On Thu, Jul 26, 2012 at 8:15 PM, Josh Blum j...@ettus.com wrote: On 07/26/2012 05:09 PM, Nazmul Islam wrote: Hi Josh, I am just wondering how the USRP performs the 8 bit mapping for I Q samples. The ADC DAC have 12 - 14 bit precision, I think. When I select the sc8 wire format, does the USRP divide the entire received signal range into 2^8 sectors and uses one number to represent each of those? Technically, there is just a multiply and slice operation. You can specify peak to optimize for the best use of t 8 bits of dynamic range. See: http://files.ettus.com/uhd_docs/doxygen/html/structuhd_1_1stream__args__t.html#a4463f2eec2cc7ee70f84baacbb26e1ef -josh Thanks, Nazmul On Sun, Jul 22, 2012 at 4:22 PM, Josh Blum j...@ettus.com wrote: On 07/22/2012 01:14 PM, Nazmul Islam wrote: Hello, I am trying to use the complex int16 option of the UHD (source/sink) blocks in my GRC generated python codes. I am doing wide band spectral analysis in my experiments. Therefore, 50 MS/s will be very helpful for me. The host format and the wire format are totally independent options here. Both of these properties also configurable properties in the GRC USRP source/sink blocks. * You need to set the wire format to sc8 (thats 2 bytes per complex sample) to achieve 50 Msps over gigabit ethernet. * The desired host format does not have to change. fc32 (complex floats) is a perfectly valid setting -josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [USRP-users] Gnu Radio apps freezes (locks up)
://ubuntuforums.org/showthread.php?t=1890369 The Ethernet interface is labeled Atheros Communicaitons AR8151 v1.0 Gigabit Ethernet but I haven't found the appropriate linux drivers and how to install those yet. / Rickard ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Transmission time control from python level
Hi Josh, Thanks a lot for your reply. Can I control the TX stream from the GRC generated python code? In other words, can I change the UHD:USRP source/sink parameters to set up the time stamps or controlling the scheduling? Thanks, Nazmul On Sun, Jul 8, 2012 at 12:30 AM, Josh Blum j...@ettus.com wrote: On 07/07/2012 09:30 AM, Nazmul Islam wrote: I have three USRP's and I want them to transmit a continuous stream of repeated GLFSR source in non-overlapping manner. In other words, each transmitter will transmit the source for 1 second and then pause for 5 seconds. All transmitters will transmit during the 'odd' seconds so that there is a 1 second gap between the sources. This process should continue for ever. Currently, I am controlling the starting and stopping time of the flow graphs to achieve my goals. Unfortunately, the code/flowgraph sometimes hangs after 15-20 starts. I am using the following code: tb = GLFSR_transmitter() # The Tx flowgraph : GLFSR source (float) -- RRC filter -- USRP Sink var = 1 while var == 1: # This process should run forever time.sleep(1-time.time() + int(time.time())) condition = ((int(time.time())%6) == 0) # The transmitter will transmit after every 6 seconds if (condition): print time.time() tb.start() sleep(1) # The transmitter runs for 1 second tb.stop() tb.wait() You really dont want to stop and start the flow graph. TX streams can be controlled with stream tags. Links to header docs and example here: http://code.ettus.com/redmine/ettus/projects/uhd/wiki/GNU_Radio_UHD#Using-UHD-with-GNU-Radio My USRP's don't seem to like this frequent starting and stopping of flow graphs, especially when I am transmitting at 15-20 MS/s rate. I am using USRP N210 (SBX daughterboards) and the latest gnuradio images. What other things can I do to achieve this timing control? I am looking for options in python level since my C++ OOP background is not strong. Josh talked about some python based blocks ( ttps://github.com/guruofquality/gnuradio/tree/python_blocks2 https://github.com/guruofquality/gnuradio/tree/python_blocks2) in (http://old.nabble.com/How-to-implement-a-TDMA-system-td33727749.html ). They seem to be merged to the master ( http://gnuradio.org/redmine/projects/gnuradio/repository/revisions/f8581fb475267e1a97eaab962e423559fb4bfce2 ) but I can't find the blocks. All that stuff + instructions and coding guide can be found here https://github.com/guruofquality/grextras/wiki -josh ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Constellation Decoder GRC Help
I received the following response from Ben a few weeks ago. I guess that this answers your question. 1. The Constellation Receiver block asks for constellation object and it accepts raw data type. What should I put here? I tried using the options 2 and bpsk but they did not work. digital.constellation_bpsk() On Mon, Jul 9, 2012 at 6:56 PM, sibar002 sibar...@ucr.edu wrote: Hello, I am unsure of how to set the CONSTELLATION OBJECT parameter in the GRC block. I am using GNU Radio 3.6.1. I would greatly appreciate any help. Thank you. Sam -- View this message in context: http://old.nabble.com/Constellation-Decoder-GRC-Help-tp34137043p34137043.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 -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Transmission time control from python level
I have three USRP's and I want them to transmit a continuous stream of repeated GLFSR source in non-overlapping manner. In other words, each transmitter will transmit the source for 1 second and then pause for 5 seconds. All transmitters will transmit during the 'odd' seconds so that there is a 1 second gap between the sources. This process should continue for ever. Currently, I am controlling the starting and stopping time of the flow graphs to achieve my goals. Unfortunately, the code/flowgraph sometimes hangs after 15-20 starts. I am using the following code: tb = GLFSR_transmitter() # The Tx flowgraph : GLFSR source (float) -- RRC filter -- USRP Sink var = 1 while var == 1: # This process should run forever time.sleep(1-time.time() + int(time.time())) condition = ((int(time.time())%6) == 0) # The transmitter will transmit after every 6 seconds if (condition): print time.time() tb.start() sleep(1) # The transmitter runs for 1 second tb.stop() tb.wait() My USRP's don't seem to like this frequent starting and stopping of flow graphs, especially when I am transmitting at 15-20 MS/s rate. I am using USRP N210 (SBX daughterboards) and the latest gnuradio images. What other things can I do to achieve this timing control? I am looking for options in python level since my C++ OOP background is not strong. Josh talked about some python based blocks ( ttps://github.com/guruofquality/gnuradio/tree/python_blocks2https://github.com/guruofquality/gnuradio/tree/python_blocks2) in (http://old.nabble.com/How-to-implement-a-TDMA-system-td33727749.html). They seem to be merged to the master ( http://gnuradio.org/redmine/projects/gnuradio/repository/revisions/f8581fb475267e1a97eaab962e423559fb4bfce2) but I can't find the blocks. Any suggestion will be appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] [USRP-users] Getting a -135 dBm/Hz noise spectral density in USRP N210
You are exactly right! We were using TX/RX antenna port in the WBX receiver daughterboard. I get almost -170 dBm/Hz noise spectral density when I select RX2. This is almost perfect! Thanks! Your email increased my pathloss calculation range by 30 dB :) Nazmul On Wed, Jun 27, 2012 at 9:22 AM, Jason Roehm jas...@3db-labs.com wrote: Do you have the correct antenna port selected? I believe that RX2 is the default for the SBX. If you are injecting signal into the port that isn't selected, then you'll see ~30-40 dB of isolation in the front-end antenna switch. That seems to be in the neighborhood of the difference that you're seeing. Jason On 06/27/2012 01:51 AM, Nazmul Islam wrote: Hello, I am trying to measure channel path loss using two USRP N210. I need to measure the noise floor so that I can find the threshold for pathloss measurement. I am using the attached flowgraph to calibrate the receiver signal strength. I tried two ways to calibrate the receiver power and both show me approximately -135 dBm/Hz noise spectral density. 1. At first I don't transmit anything and measure the power of the floating point numbers that is coming out of rx USRP block. Then I transmit a PN sequence of -5 dBm power at 17 MS/s from an USRP. I connect this USRP through a 60 dB attenuator to the receiver USRP. This input (-65 dBm) seems to double the power of the floating point numbers. I infer that the my USRP noise floor is equivalent to -65 dB at 17 MHz. 2. I also apply an external 1 MHz noise source of -75 dBm power to the receiver USRP. This leads to an increase of 3 dB power in the receiver FFT plot. This also suggests I have -75 dBm noise power at 1 MHz. Both these experiments suggest -135 dBm/Hz noise spectral density in my rx USRP. However, this is very far from theoretical noise spectral density (approximately -170 dBm/Hz). My Rx USRP N210 has a WBX daughterboard and my Tx USRP has an SBX daughterboard. The ettus websites suggest only 6 dB noise figure (http://code.ettus.com/redmine/ettus/documents/16). If my USRP daughterboard is not faulty, I must be giving some wrong parameters. I put the RX gain as 30 dB to get the full range of WBX daughterboards ( http://files.ettus.com/uhd_docs/manual/html/dboards.html). Shall I increase it more? Thanks for your help. Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ USRP-users mailing listUSRP-users@lists.ettus.comhttp://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com ___ USRP-users mailing list usrp-us...@lists.ettus.com http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Getting strange outputs from FLL_Band_Edge block
Hello Tom, Thanks a lot for your reply. I am currently working with two USRP N210's and they have a frequency offset of a few hundred Hz. That's why, the costas loop is taking care of it. I previously worked with two USRP2's which had frequency offsets around 5 kHz (with 450 MHz carrier frequency). The costas loop did not work there, as expected. We are purchasing two more USRP N210 for our experiments. I am having all my fingers crossed that their offsets will not be much! Otherwise, I will need the FLL block :S Thanks again, Nazmul On Wed, Jun 20, 2012 at 10:34 PM, Tom Rondeau t...@trondeau.com wrote: On Mon, Jun 18, 2012 at 11:31 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: I am trying to implement a PN_correlator through gnuradio-companion generated python codes. I am transmitting a continuous stream of repeated GLFSR source and I want my receiver to be synchronized (as much as possible) with the transmitter. I have followed the generic_mod_demod.py in designing the transmitter and the receiver and I have used the following paths: Tx: GLFSR source (producing +1 -1) -- RRC -- USRP Sink Rx: USRP Source -- AGC2 -- FLL Band Edge -- Polyphase Clock Sync -- Costas -- File Sink (the receiver snapshot is attached as PN_receiver.png). I have the following issues: 1. When I run the Rx without FLL, the USRP sink spits out roughly 40 MB data by 1 second with 10M sample rate. However, if I run the Rx with FLL, the USRP spits out much lower amount of data, e.g., 4 - 6 MB within 1 second. I think that Josh investigated a similar issue before ( http://lists.gnu.org/archive/html/discuss-gnuradio/2011-11/msg00080.html). Can this strange phenomenon have an adverse effect in the output? Quite possibly. The problem was more that it was a huge latency issue. I can't reliably recreate this in the digital benchmark examples, though, so it's really hard to debug what's going on. There's no reason that I can see for it to happen. The main issue is that the filter operation isn't done well in this block, and it tends to run near the front of the receiver, so it's performing an inefficient filter at a high sample rate. That'll slow things down. With the new gr-filter work just merged today, I hope we can use that to make use of Volk to improve it. 2. More worryingly, I am getting strange outputs from FLL. I will be a bit verbose in explaining its weird nature and I am sorry for that. I am transmitting a PN sequence with 1023 chips. The theory is simple: if I correlate the Rx output with the PN sequence, I should get a high peak after every 1023 symbols and almost zero in between. --- The Correlation_FLL_input.png shows the correlation between the AGC2 output and PN sequence. At this point, I have 2 sample/symbol. The high value (~ 400) suggests that one sample fell close to the symbol peaks. The medium values (~ 200) denote that the other sample fell midway between two symbol peaks. Fair enough. -- If I take out the FLL_Band_Edge block (i.e. AGC2 -- Polyphase_Clock) and take correlation after Polyphase_Clock_Recovery, the output takes the form of Corr_timing_recovery_without_FLL.png. High peaks after every 1023 symbol almost zero correlation in between, great! -- If I keep the FLL block, the correlation after FLL_Band_Edge + Polyphase_Clk_Recovery takes the form of Corr_timing_recovery_with_FLL.png. You can see that it is completely smeared and there is no pattern at all! I took the correlation after FLL and found that the strange output is due to the FLL block, not timing recovery. Am I doing any gross mistake with the FLL_Band_Edge parameters? I pretty much took the parameters from generic_mod_demod.py and they are also aligned with the RRC of the Tx side. Not sure. In my experience, the FLL takes a bit to converge, but once it does, it's stable and should be fine. There seems to be something else involved in this block that's causing issues with latency, which might be the cause of this problem, too. 3. Does GNUradio have any other FLL block that I can test? Not really. There's the Costas loop block, but that's fairly limited in the frequency offset that it can correct. On the other hand, the FLL is when you are far away in frequency. So you can a) use a reference clock that has more accuracy to make sure the frequencies are close or b) hand tune the receiver to be close to the transmitter. As long as you're close, you can correct for the offset. Since you're working fine without the FLL, why do you need to add it? Sounds like you're fine just bypassing it altogether. Tom Suggestion on any of the questions will be appreciated. Thanks a lot for reading my long email :S Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA
[Discuss-gnuradio] Constallation receiver block in gnuradio companion
Hello, I want to transmit a continuous stream of data and obtain its synchronized version (before decoding) at the receiver using gnuradio companion. Following the generic_mod_demod.py, I have designed the transmit and receive path in the following way Tx:GLFSR source (producing +1 -1) -- RRC filter -- USRP Sink Rx: USRP Source -- AGC2 -- FLL Band Edge -- Polyphase Clock Sync. I want to insert the *Constellation Receiver* block at the end of the Polyphase Clock Sync. I have two questions on this: 1. The Constellation Receiver block asks for constellation object and it accepts raw data type. What should I put here? I tried using the options 2 and bpsk but they did not work. 2. The Constellation_Receiver_cb accepts baseband complex streams and returns byte level data. Will it output the decoded data? I want the complex data, that has gone through the costas and MM recovery block, but has not been decoded yet. How can I obtain that? Any suggestion will be appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Recording continuous I-Q stream and frequency offset with an external reference clock
John, Thanks a lot for your email. My previous USRP2 modules had some old daughterboards. I am currently working with USRP N210. I am not sure even this one is getting the external reference, either. Couple of things: 1. I have the tools to probe the 10 MHz reference signal. But I did not find R523 :S. I can see R521, R522, R524, C523, etc. But I did not see R523 in USRO N210. 2. I have kept the J510 jumper at 1-2. Therefore, it should take signal from external reference clock instead of GPS. 3. When I use the external clock source option in UHD:USRP Sink block of gnuradio-companion, the E led turns off. On the other hand, if I transmit with default clock source option in UHD: USRP sink block, the E led turns on !!! It's very surprising ! 4. I did another experiment to check if the USRP is locked to the external reference. At first, I gave an input of 10 MHz sine wave as an external source and transmitted a signal at 700 MHz carrier frequency. The carrier frequency option was given at gnuradio-companion software. Thereafter, I varied the reference clock frequency slightly (from 10 to 10.3, 10.4 MHz, etc.). During this period, I observed the signal at my laboratory spectrum analyzer. If there was a fixed gain that converted the 10 MHz reference source to 700 MHz carrier frequency, the transmitted signal's center frequency would have shifted from 700 MHz because the fixed gain would multiply 10.1 instead of 10 now. However, the center frequency did not change. I suspect that my USRP is still locked to its internal clock source. Since this happened to two different USRP's, the issue might be in software. Has anyone used external clock source from a gnuradio-companion generated python code? I am changing the external clock reference source in GRC. Do I need to make any other change? Thanks a lot for your help. Nazmul On Fri, Jun 8, 2012 at 12:53 PM, John Malsbury john.malsb...@ettus.comwrote: Nazmul, Do you have the tools(o-scope) and capacity to probe the 10 MHz reference signal at various places? Looking at the schematic, it looks like R523 is a good place to determine if the 10 MHz reference is a good place. If you don't see the external reference across this resistor, there may be a problem with the reference input or conditioning circuitry. If we eliminate this as a possibility we can investigate some others... -John -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Recording continuous I-Q stream and frequency offset with an external reference clock
Hi Tom Nick, Thanks for your replies. The function generator is producing a sine wave with 1 V (10 MHz). This is going to the ref clocks. The E light is ON and I have changed the clock source option to be external in gnuradio-companion environment. I tried with square wave, too. But the output did not change. The transmission is taking place at 450 MHz carrier frequency. I am using USRP2's with RFX400 FLEX400 daughterboard. In fact, I see a 6 kHz frequency offset even without the reference clock. Does it suggest that the external reference clock is somehow not going through? I don't know if I should change more options in gnuradio-companion toolbox to make the reference clock work. Thanks, Nazmul On Thu, Jun 7, 2012 at 11:31 PM, Nick Foster n...@ettus.com wrote: On Thu, Jun 7, 2012 at 7:11 PM, Tom Rondeau t...@trondeau.com wrote: On Thu, Jun 7, 2012 at 1:30 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: I got a partial answer to my previously posted question :). When I pass the complex baseband I Q with a costas loop block, the output indeed looks like a square wave. Does it mean that external reference clock does not correct the phase/carrier offset error? Does it only solve the timing error issue? Thanks, Nazmul Glad that you are able to get far enough to recover it. As for the remaining 6 kHz offset, what's the RF frequency? What does 6 kHz translate into for a parts per million? While I would expect them to be the same with both locked to the same external clock, we are talking about reality here, so things aren't always that cooperative. I can't think what would cause this kind of an offset, though, as it seems rather large. Maybe someone with more hands-on hardware experience with precision equipment can jump in here. Tom 6kHz is way too high. They should be cycle-locked. What is the amplitude of the clock signal you're feeding into the USRP2? --n On Thu, Jun 7, 2012 at 12:00 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hi Tom, First of all, thanks a lot for your detailed reply. I appreciate it. I did as you told in the last email, i.e., I transmitted a square wave (switching between 0.5 to -0.5). The sqaure wave's period was 1 ms and the sampling rate was 1 MHz. I have attached the real part of the outputs with the email. The output shows a phase shift after every 500 samples, i.e., half period of the square wave with 1 MHz sampling rate. The sinusoidal nature of the output probably comes from frequency offset of the two USRP's. I expected this for an internal clock source. However, I see a 6 kHz frequency offset (3 sine period per 0.5 ms) even with the presence of an external clock. The external clock is driving both USRP's. The E LED is on. I am using a sine wave with 10 MHz frequency 7 dBm amplitude as the external clock. I also put the clock source options in grc as external. Do I need to make any other changes in the GRC blocks to inform USRP about the external source? Any suggestions will be appreciated. Thanks for all of your help. Nazmul On Fri, May 25, 2012 at 1:40 PM, Tom Rondeau t...@trondeau.com wrote: On Thu, May 24, 2012 at 7:07 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hello, I want to transmit a continuous stream of 1's or 0's (with bpsk modulation) and record the received I-Q stream. I am trying to use the 'digital_bert_tx.py' code for transmission and the uhd_rx_cfile code (gr-uhd/apps) for reception. Thereafter, I use the read_complex_binary code to read the data in Matlab. Surprisingly, I am receiving similar type of I-Q stream (around 0.3 + j 0.3) for both 1 and 0 transmission. I am using the following commands: self._bits = gr.vector_source_b([1,], True) (I either transmit infinite 1 or infinit 0's. When I transmit infinite 0's, I replace '1' by '0' in the command) ./digital_bert_naz_tx.py -r 5M -m bpsk -f 450M --gain 0.1 --non-differential(I am using non-differential since I want to see the different amplitude levels for '1's or 0's) ./uhd_rx_cfile -N 1000 -f 450M --samp-rate 5M file.dat (Since I am using bpsk, sample-rate should be equal to bit rate, I assume) Ideally, the I-Q stream of bpsk should show 180 degree phase shift for 1 and 0 transmission. I am getting the same value for both transmission. Can anyone suggest where I am making mistakes? Thanks, Nazmul Nazmul, Hard to say from this info. A few things to note on, though. First, 1000 samples isn't that much. There are startup transients in hardware, so you might just be seeing effects of those. I'd capture ten thousand or a million and just read out the last 1000. Also, the transmitter and receiver are running on two different clocks, so their frequency and phases aren't going to match, unless
Re: [Discuss-gnuradio] Recording continuous I-Q stream and frequency offset with an external reference clock
I got a partial answer to my previously posted question :). When I pass the complex baseband I Q with a costas loop block, the output indeed looks like a square wave. Does it mean that external reference clock does not correct the phase/carrier offset error? Does it only solve the timing error issue? Thanks, Nazmul On Thu, Jun 7, 2012 at 12:00 PM, Nazmul Islam mnis...@winlab.rutgers.eduwrote: Hi Tom, First of all, thanks a lot for your detailed reply. I appreciate it. I did as you told in the last email, i.e., I transmitted a square wave (switching between 0.5 to -0.5). The sqaure wave's period was 1 ms and the sampling rate was 1 MHz. I have attached the real part of the outputs with the email. The output shows a phase shift after every 500 samples, i.e., half period of the square wave with 1 MHz sampling rate. The sinusoidal nature of the output probably comes from frequency offset of the two USRP's. I expected this for an internal clock source. However, I see a 6 kHz frequency offset (3 sine period per 0.5 ms) even with the presence of an external clock. The external clock is driving both USRP's. The E LED is on. I am using a sine wave with 10 MHz frequency 7 dBm amplitude as the external clock. I also put the clock source options in grc as external. Do I need to make any other changes in the GRC blocks to inform USRP about the external source? Any suggestions will be appreciated. Thanks for all of your help. Nazmul On Fri, May 25, 2012 at 1:40 PM, Tom Rondeau t...@trondeau.com wrote: On Thu, May 24, 2012 at 7:07 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hello, I want to transmit a continuous stream of 1's or 0's (with bpsk modulation) and record the received I-Q stream. I am trying to use the 'digital_bert_tx.py' code for transmission and the uhd_rx_cfile code (gr-uhd/apps) for reception. Thereafter, I use the read_complex_binary code to read the data in Matlab. Surprisingly, I am receiving similar type of I-Q stream (around 0.3 + j 0.3) for both 1 and 0 transmission. I am using the following commands: self._bits = gr.vector_source_b([1,], True) (I either transmit infinite 1 or infinit 0's. When I transmit infinite 0's, I replace '1' by '0' in the command) ./digital_bert_naz_tx.py -r 5M -m bpsk -f 450M --gain 0.1 --non-differential(I am using non-differential since I want to see the different amplitude levels for '1's or 0's) ./uhd_rx_cfile -N 1000 -f 450M --samp-rate 5M file.dat (Since I am using bpsk, sample-rate should be equal to bit rate, I assume) Ideally, the I-Q stream of bpsk should show 180 degree phase shift for 1 and 0 transmission. I am getting the same value for both transmission. Can anyone suggest where I am making mistakes? Thanks, Nazmul Nazmul, Hard to say from this info. A few things to note on, though. First, 1000 samples isn't that much. There are startup transients in hardware, so you might just be seeing effects of those. I'd capture ten thousand or a million and just read out the last 1000. Also, the transmitter and receiver are running on two different clocks, so their frequency and phases aren't going to match, unless you've locked them to the same source. It'd be hard to say what you'll see, exactly, due to this. That's why we use recovery loops for all of these things. What I would recommend is to create a transmitter that transmits a long string of 1's followed by a long string of 0's (100 or 200 each). When you plot the last 1000 samples, you should see something that moves between two amplitudes. I wouldn't trust what you see from one run to another, so just do it at the same time. Tom -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] pulse signal generation
You can use UHD: USRP_Source an UHD:USRP_Sink block. You can define the center frequency of transmission in that block. Thanks, Nazmul On Tue, Jun 5, 2012 at 1:20 AM, S'dir chit...@gmail.com wrote: Hi Roberts, Greetings. Thank you for your input. I am able to bring up my system with Ubuntu 10.10 and with latest gnuradio as well able to run the grc file successfully and see the output on screen. However, would like to know how the same to integrate and generate and take the signal from USRP1 do I need to add any UHD blocks? (Typically how to interface with USRP1) Regds, Sudhir. On Fri, May 11, 2012 at 11:07 PM, wayne roberts wroberts92...@gmail.comwrote: Something to try: byte file source with one byte of 0xff, and the other 9 is 0x00. grc is attatched, but Gaussian filter is very strongly filtering it and i really dont understand it very well, which is needed for bandwidth limiting. But if you dont want any filtering, you could feed file source directly to real input of float-to-complex (with only type conversion). also attached is file you can use xxd to convert binary file to from text file. I dont know if binary file attaches to email, but you can put this into xxd -r: 000: ff00 On Thu, May 10, 2012 at 11:50 PM, S'dir chit...@gmail.com wrote: Hi, I am a starter. How to generate 100Hz (10% duty) pulsed signal using gnuradio usrp1 Any help would be highly appreciated. Thanks Regds, Sudhir. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Using external clock references in GRC environment
Hello, I am running two USRP2's with a 10 MHz external clock. I am using gnuradio-companion to transmit data between the USRP's. I have changed the *clock source* option as 'external' in the UHD:USRP Source Sinc blocks. I kept the time source and clock rate block as default since I am not providing any external pps. Unfortunately, I am getting unexpected and wrong outputs. Do I need to make any other changes in the USRP Source Sink options? Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Any grc flowgraph example on bpsk (or any other digital modulation) transmission/reception?
Hello, Is there any bpsk transmission + reception flow graph in grc repository? I know about the benchmark python codes but I am looking for a similar gnuradio companion flowgraph. An email from last year ( http://lists.gnu.org/archive/html/discuss-gnuradio/2011-01/msg00255.html) suggests that there is a bpsk flowgraph in the GRC examples folder but I did not find any. In fact, if anyone has a grc flowgraph example on bit generation - transmission - reception, I will appreciate if it is shared here. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] graphical sink blocks of grc
Hi, I installed the latest version of gnuradio and gnuradio-companion a few weeks ago. The Graphical Sinks option of my grc has two blocks: Eye Diagram and Fast AutoCorrelation Sink. I am following a grc tutorial ( http://www.csun.edu/~skatz/katzpage/sdr_project/sdr/grc_tutorial1.pdf). The authors' grc version had more blocks (scope sink, fft sink, waterfall sink, etc.). Were these options taken out recently? Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] How can I transmit and receive bit level data using the benchmark codes of gnuradio?
Hello, Can I transmit and receive bit level data using the benchmark_tx and rx codes of the narrowband/OFDM folder? At present, I can transmit and receive byte level data using the codes, i.e., I can put 1500 characters (or 1500 bytes) in each packet and receive it. But I want to transmit (i.e. 0 and 1 / -1 and +1) and receive the demodulated bits (not the bytes or characters). Can I do it using the benchmark or any other codes of gnuradio? Any suggestion will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] How can I transmit and receive bit level data using the benchmark codes of gnuradio?
Thanks, Alex. I tried using the log files in benchmark_rx. But the file has 200 Megabit size and Matlab could not handle it. Can you limit the size of the recorded data? Besides, can you transmit bit level data using the benchmark_tx code? I can transmit '1', '2', 'a', etc. but I cannot transmit 1, 0. I assume that '1', '2', etc. are being transmitted as bytes. (I know that the digital_bert codes allow bit level processing but I wonder how I can transmit 0 and 1 using the benchmark_tx and rx codes, i.e., in a packetized format). Thanks, Nazmul On Thu, May 24, 2012 at 3:58 PM, Alex Zhang cingular.a...@gmail.com wrote: I just turn on the log and read the log files in Matlab. The intermediate signal processing results can be written into files. Hope it help you. On Thu, May 24, 2012 at 11:31 AM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hello, Can I transmit and receive bit level data using the benchmark_tx and rx codes of the narrowband/OFDM folder? At present, I can transmit and receive byte level data using the codes, i.e., I can put 1500 characters (or 1500 bytes) in each packet and receive it. But I want to transmit (i.e. 0 and 1 / -1 and +1) and receive the demodulated bits (not the bytes or characters). Can I do it using the benchmark or any other codes of gnuradio? Any suggestion will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Alex, *Dreams can come true – just believe.* -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Recording I-Q stream with uhd_rx_cfile
Hello, I want to transmit a continuous stream of 1's or 0's (with bpsk modulation) and record the received I-Q stream. I am trying to use the 'digital_bert_tx.py' code for transmission and the uhd_rx_cfile code (gr-uhd/apps) for reception. Thereafter, I use the read_complex_binary code to read the data in Matlab. Surprisingly, I am receiving similar type of I-Q stream (around 0.3 + j 0.3) for both 1 and 0 transmission. I am using the following commands: self._bits = gr.vector_source_b([1,], True) (I either transmit infinite 1 or infinit 0's. When I transmit infinite 0's, I replace '1' by '0' in the command) ./digital_bert_naz_tx.py -r 5M -m bpsk -f 450M --gain 0.1 --non-differential(I am using non-differential since I want to see the different amplitude levels for '1's or 0's) ./uhd_rx_cfile -N 1000 -f 450M --samp-rate 5M file.dat (Since I am using bpsk, sample-rate should be equal to bit rate, I assume) Ideally, the I-Q stream of bpsk should show 180 degree phase shift for 1 and 0 transmission. I am getting the same value for both transmission. Can anyone suggest where I am making mistakes? Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Maximum possible transmission rate through the benchmark code
Hello, I am running the benchmark_tx and benchmark_rx codes of the narrowband and ofdm folder (gr-digital/examples) between two USRP2's. I have several questions regarding the maximum possible transmission rate in these two codes. I am listing the questions and my experiment details below: USRP2 with GB Ethernet cable Daughterboard: RFX400 (on the transmitter side) and FLEX400 (on the receiver side) GNUradio version: latest (downloaded on May 21, 2012) Ubuntu: 12.04 Question 1: I ran the benchmark_tx.py OFDM code at 20 MHz bandwidth at the transmitter side and uhd_fft.py at the receiver side. The spectrum analyzer of the uhd_fft could correctly (approximately) estimate the power level of the received signal in the frequency domain. (I used a real spectrum analyzer to check it). I read in the GNUradio tutorials that the FPGA down-converts the signal to 8 Mega complex samples per second for USB 2.0 compatibility. Then how could I observe a signal with 20 MHz bandwidth in the uhd_fft spectrum analyzer? I used the following commands: ./benchmark_tx.py -f 450M -W 25M --occupied-tones 400 -M 20M ./uhd_fft -s 25M Question 2: When I was trying to receive the packets that were sent with 20 MHz bandwidth, I saw overrun in the receiver. I assume that the receiver side computer is not fast enough to keep up with 20 MHz bandwidth. Then how could it detect the strength of the signal in the entire 20 MHz region? Can I record and store the received signal (with 20 MHz bandwidth) in the time domain just using the gnuradio softwares? (i.e. without doing any FPGA programming) Question 3: I tried to run the benchmark_tx.py code of the narrowband folder at 20 Mbit/sec. But the code was showing underrun whenever the bit rate exceeded 6 Mbit/sec. I used the following command: ./benchmark_tx.py -f 450M -r 7M -M 20 The ofdm transmitter code is keeping up with high bandwidth but the narrowband tx code is not. I just wonder what the reason might be. Feedback on any of the questions will be highly appreciated. Thanks for reading the email. Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Maximum possible transmission rate through the benchmark code
Alex, Thanks for the email. I think that the high bitrate occuring at OFDM and modulations except gmsk come mostly from peak to average power ratio issues. GMSK works best for everyone, I guess. I am just surprised to see how the uhd_fft.py is measuring the signal strength in the 20 MHz band. I thought that the FPGA only allows 8 MHz complex samples per second. Besides, I wonder why the narrowband benchmark_tx shows underrun at 10 Mega Hz bandwidth whereas the OFDM benchmark_tx doesn't show this issue at the same bit rate. Thanks, Nazmul On Wed, May 23, 2012 at 12:38 PM, Alex Zhang cingular.a...@gmail.comwrote: Nazmul, Seems you are doing the similar experiment with me. In my test for both OFDM and narrowband, the 20MHz bandwidth is too wide to be supported by my computer. For OFDM, I am using the tunnel.py to test the ping, unfortunately, most of the time, the ARP query fails. So I have to use the static ARP to save traffic. And when the bandwidth is more than 1.2MHz, the dual-way communications suffers from overflow. The ping packet loss reaches 30% even when the bandwidth is 500KHz. Some friends suggest to adjust the tx-amplitude due to high PAPR of OFDM, I tried the 0.2-0.3, but it does not help a lot. You can search the archive for my testing result and complaining days ago. I have been querying for the performance for days but no latest reported result yet. Some students using the GNURadio as master thesis, ever reported that only 100kbps can be reached over GNURadio provided OFDM. For narrowband, GMSK, the life is much better. The tunnel.py runs with bitrate up to 3Mbps, with 1% packet loss of ping test. Your result is better than me. On Wed, May 23, 2012 at 11:20 AM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: Hello, I am running the benchmark_tx and benchmark_rx codes of the narrowband and ofdm folder (gr-digital/examples) between two USRP2's. I have several questions regarding the maximum possible transmission rate in these two codes. I am listing the questions and my experiment details below: USRP2 with GB Ethernet cable Daughterboard: RFX400 (on the transmitter side) and FLEX400 (on the receiver side) GNUradio version: latest (downloaded on May 21, 2012) Ubuntu: 12.04 Question 1: I ran the benchmark_tx.py OFDM code at 20 MHz bandwidth at the transmitter side and uhd_fft.py at the receiver side. The spectrum analyzer of the uhd_fft could correctly (approximately) estimate the power level of the received signal in the frequency domain. (I used a real spectrum analyzer to check it). I read in the GNUradio tutorials that the FPGA down-converts the signal to 8 Mega complex samples per second for USB 2.0 compatibility. Then how could I observe a signal with 20 MHz bandwidth in the uhd_fft spectrum analyzer? I used the following commands: ./benchmark_tx.py -f 450M -W 25M --occupied-tones 400 -M 20M ./uhd_fft -s 25M Question 2: When I was trying to receive the packets that were sent with 20 MHz bandwidth, I saw overrun in the receiver. I assume that the receiver side computer is not fast enough to keep up with 20 MHz bandwidth. Then how could it detect the strength of the signal in the entire 20 MHz region? Can I record and store the received signal (with 20 MHz bandwidth) in the time domain just using the gnuradio softwares? (i.e. without doing any FPGA programming) Question 3: I tried to run the benchmark_tx.py code of the narrowband folder at 20 Mbit/sec. But the code was showing underrun whenever the bit rate exceeded 6 Mbit/sec. I used the following command: ./benchmark_tx.py -f 450M -r 7M -M 20 The ofdm transmitter code is keeping up with high bandwidth but the narrowband tx code is not. I just wonder what the reason might be. Feedback on any of the questions will be highly appreciated. Thanks for reading the email. Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Alex, *Dreams can come true – just believe.* -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Trying to read the .dat file created from the --log option of the benchmark codes
I am trying to read the .dat file, created from the --log option of benchmark_rx, in Matlab. Unfortunately, Matlab is showing errors. I used the following command to get the file: ./benchmark_rx.py -f 450M -r 1M --log This created the fmdemod.dat file. I downloaded the reading codes from gnuradio-core/src/utils and ran those on the .date file in the following way: GNUdata=read_float_binary('fmdemod.dat'); GNUdata=read_complex_binary('fmdemod.dat'); GNUdata=read_short_binary('fmdemod.dat'); Unfortunately, all of these commands are producing the following pattern of error: ??? Error: File: read_float_binary.m Line: 1 Column: 1 Unexpected MATLAB operator. How can I solve this? Any suggestion regarding reading the .dat file, created from the benchmark_rx code, will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Citation of GNUradio codes
Thanks a lot, George Michael. I really appreciate your suggestions. Nazmul On Sat, Feb 25, 2012 at 1:59 PM, Michael Dickens m...@alum.mit.edu wrote: Hi Nazmul - If you use the GNU Radio GIT master and update it regularly, I think that GNU Radio Website, accessed February 2012. [Online]. Available: http://www.gnuradio.org is complete enough, since it refers to both the project in general as well as the code. If you use a specific version (e.g., of the GIT master or a release such as 3.5.1), you'd probably want to state that just to make it clear. The (La)TeX markup that I use for the above is: @misc{url:gnu-radio, author = {GNU Radio Website}, year = {accessed February 2012}, url = {http://www.gnuradio.org} } The important parts for any URL-based citation such as this are: (0) The project name, with any distinguishing characteristics needed to make it unique (such as the version number or extended name if there are more than 1 projects using a similar name); (1) when you last accessed the URL, since websites do change and sometimes you won't have accessed it for a while before you submitted the paper; and (2) a valid URL as of the month of last access (for example, the above URL works with or without the trailing '/', while others require it). That said, before I submit such a paper I always work through the URLs and update their info, verifying each one to make sure it is still valid if not then figuring out the correct URL. Hope this helps! - MLD ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Seeks Information about GNURadio examples
Hello Selverine, Look at this ( http://gnuradio.org/redmine/projects/gnuradio/wiki/Tutorials ). Also, search for Dawei Shen GNUradio tutorial in google. Nazmul On Thu, Feb 16, 2012 at 2:56 PM, Selverine aurelienbri...@gmail.com wrote: Hi everybody, I'm a beginner, I start working on GNU Radio. I noted that there were many examples, but apart dial_tone I can't understand the code. Does anyone can help me by giving me tutorials that explains the examples? Or any information that they could help me? Thank you a lot! -- View this message in context: http://old.nabble.com/Seeks-Information-about-GNURadio-examples-tp7629p7629.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 -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Three different USRP2 nodes are transmitting with almost exactly 1 MHz frequency offset
Hello Ben, Shantharam, my colleague, installed the latest UHD image. Now I don't see the 1 MHz frequency offset any more. The benchmark_rx program is also receiving packets correctly from the benchmark_tx code. Thanks a lot for your help. We really appreciate your effort. Nazmul On Thu, Feb 9, 2012 at 12:44 PM, Ben Hilburn b...@ettus.com wrote: Nazmul - Your version of UHD is from November 22nd. Will you try updating your UHD install? I'm not sure how you installed, or how familiar you are with git / Linux - here is a quick command list, assuming you used Git to checkout the code to begin with, and it is in a directory called uhd.git/ $ cd uhd.git $ git checkout master $ git remote update; git pull $ rm -rf build $ mkdir build; cd build $ cmake ../ make Let us know how it goes! Cheers, Ben On Wed, Feb 8, 2012 at 8:52 PM, Nazmul Islam mnis...@winlab.rutgers.eduwrote: Thanks for the reply, Jason. The uhd_usrp_probe --version command gave the following result: linux; GNU C++ version 4.4.5; Boost_104200; UHD_003.004.000-71810ad 003.004.000-71810ad Do I have to download the latest UHD image? The image that I am using right now was downloaded by one of my colleagues and I think that he did it recently. Also, I tried running the benchmark_tx and benchmark_rx codes with a 1 MHz frequency offset input, i.e., I gave the following commands: ./benchmark_tx.py -f 2.4G -r 1M -m gmsk -a addr = 192.168.10.2 ./benchmark_tx.py -f 2.401G -r 1M -m gmsk -a addr = 192.168.10.2 Since the uhd_fft.py and the my lab spectrum analyzer show a 1 MHz frequency offset, I assumed that the above commands would work. Unfortunately, this did not help either! Suggestions will be very appreciated. Thanks, Nazmul On Wed, Feb 8, 2012 at 7:37 PM, Jason Abele ja...@ettus.com wrote: On Wed, Feb 08, 2012 at 06:39:24PM -0500, Nazmul Islam wrote: Hello, I am running the benchmark_tx.py codes and looking at the spectrum of the signals using uhd_fft.py. I am using the latest image of GNU radio (GNUradio 3.5) and I have XCVR2450 daughterboards. I ran the benchmark_tx.py code in three transmitter nodes and surprisingly, all of them are transmitting with 1 MHz frequency offset! I have attached two screenshots with the email (I hope that they go through). I give the following input parameters to run the benchmark_tx code. ./benchmark_tx.py -f 2.4G -r 1M -m gmsk -M 10 -a addr = 192.168.10.2 Both uhd_fft.py and the spectrum analyzer of my laboratory show that the received signal is centered at 2.401 GHz. I varied the frequency to 2.45 GHz, 2.41 GHz, but this 1 MHz frequency shift persists. When I run the benchmark_rx.py code at the receiver nodes, they don't receive/detect any packets (due to the frequency offset, I guess). I even tried to run the transmitter at 2.4 GHz and the receiver at 2.401 GHz. However, that did not help either! I will try to modify the control loop gain parameters using Tom's blogs suggestions and see if that helps. However, I am really surprised to see how all three different transmitter nodes can transmit with almost exactly 1 MHz frequency offset. Any suggestion will be appreciated. Can you tell us which version of UHD you are using? (uhd_usrp_probe --version) We have heard reports of such an issue and my best guess is that it was related to an accidental swap of I and Q in the XCVR2450 transmitter code. This went in after the 3.3.2 release and is fixed on latest UHD master since 837437c65ce36d418cceb3df5b093f9497b3af5f Jason -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Three different USRP2 nodes are transmitting with almost exactly 1 MHz frequency offset
Thanks for the reply, Jason. The uhd_usrp_probe --version command gave the following result: linux; GNU C++ version 4.4.5; Boost_104200; UHD_003.004.000-71810ad 003.004.000-71810ad Do I have to download the latest UHD image? The image that I am using right now was downloaded by one of my colleagues and I think that he did it recently. Also, I tried running the benchmark_tx and benchmark_rx codes with a 1 MHz frequency offset input, i.e., I gave the following commands: ./benchmark_tx.py -f 2.4G -r 1M -m gmsk -a addr = 192.168.10.2 ./benchmark_tx.py -f 2.401G -r 1M -m gmsk -a addr = 192.168.10.2 Since the uhd_fft.py and the my lab spectrum analyzer show a 1 MHz frequency offset, I assumed that the above commands would work. Unfortunately, this did not help either! Suggestions will be very appreciated. Thanks, Nazmul On Wed, Feb 8, 2012 at 7:37 PM, Jason Abele ja...@ettus.com wrote: On Wed, Feb 08, 2012 at 06:39:24PM -0500, Nazmul Islam wrote: Hello, I am running the benchmark_tx.py codes and looking at the spectrum of the signals using uhd_fft.py. I am using the latest image of GNU radio (GNUradio 3.5) and I have XCVR2450 daughterboards. I ran the benchmark_tx.py code in three transmitter nodes and surprisingly, all of them are transmitting with 1 MHz frequency offset! I have attached two screenshots with the email (I hope that they go through). I give the following input parameters to run the benchmark_tx code. ./benchmark_tx.py -f 2.4G -r 1M -m gmsk -M 10 -a addr = 192.168.10.2 Both uhd_fft.py and the spectrum analyzer of my laboratory show that the received signal is centered at 2.401 GHz. I varied the frequency to 2.45 GHz, 2.41 GHz, but this 1 MHz frequency shift persists. When I run the benchmark_rx.py code at the receiver nodes, they don't receive/detect any packets (due to the frequency offset, I guess). I even tried to run the transmitter at 2.4 GHz and the receiver at 2.401 GHz. However, that did not help either! I will try to modify the control loop gain parameters using Tom's blogs suggestions and see if that helps. However, I am really surprised to see how all three different transmitter nodes can transmit with almost exactly 1 MHz frequency offset. Any suggestion will be appreciated. Can you tell us which version of UHD you are using? (uhd_usrp_probe --version) We have heard reports of such an issue and my best guess is that it was related to an accidental swap of I and Q in the XCVR2450 transmitter code. This went in after the 3.3.2 release and is fixed on latest UHD master since 837437c65ce36d418cceb3df5b093f9497b3af5f Jason -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Issues with benchmark_tx and benchmark_rx codes
Tom, Thanks a lot for your reply. I appreciate it. I will upgrade to GNUradio 3.5. But I have a few more questions on the options. 1. Is there a roughly standard range of the option values that one should use? (the values of --tx-ampl, --tx-gain, --rx-gain, threshold, alpha, --costas-alpha, etc). For example, the values of alpha and thresh are given as 0.001 and 30 in the receive_path.py program. Shall I change these? If so, by how much? Are these values completely dependent on the local daughterboards? 2. Is there any file or document that describe these options in more details? From my communication systems course, I can roughly understand these options. But some options, e.g. the effect of --tx-ampl versus the effect of --tx-gain are not clear to me. Any feedback will be really appreciated. Thanks, Nazmul On Sat, Nov 26, 2011 at 11:36 AM, Tom Rondeau trondeau1...@gmail.comwrote: On Wed, Nov 23, 2011 at 1:49 PM, Nazmul Islam mnis...@winlab.rutgers.eduwrote: Hello All, I am trying to measure packet error rates for different modulation schemes using benchmark_tx and benchmark_rx codes. I run my codes on XCVR2450 USRP2 dughterboard and I am using the UHD_003_002_001 image (That image was downloaded on June, 2011 from the website, I believe). Now, I am getting strange results in terms of packet error rate. The benchmark_rx codes don't receive anything for d8psk modulation. It receives packets for dqpsk and qbpsk, but the work-ability depends on the inputs in a weird way. I am listing down some of the results that I have observed for different commands: Scenario 1: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 20 -m dbpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dbpsk --costas-alpha 0.05 --gain-mu 0.01 Results: All packets receiverd. Scenario 2: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m dbpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dbpsk --costas-alpha 0.05 --gain-mu 0.01 Results: All packets are received as false.( The only difference between scenario 1 and scenario 2 is the in the increase of --tx-gain (from 20 to 25).) Scenario 3: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m dqpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dqpsk --costas-alpha 0.05 --gain-mu 0.01 Result: All packets are received as OK. (The difference between scenario 2 and scenario 3 lies in the change of modulation (from dbpsk to dqpsk).) Scenario 4: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m d8psk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m d8psk --costas-alpha 0.05 --gain-mu 0.01 Result: No packet gets received. The receiver sits idle waiting for the packets. I observed my transmitted signal in the spectrum analyzer and I did not see any carrier offset, i.e., the received signal was centered at 2.4 GHz. I think that the error is coming from either over-saturation of transmission signal or the costas-loop at the receiver. At present, I am simply walking in the dark and trying random input values to make the schemes work. Is there any suitable range for these options? (--tx-ampl, --tx-gain, --costas-alpha, --gain-mu, --rx-gain, etc.)? Please let me know if any of you have found a suitable range for these options. Your suggestions will be valuable. Thanks for reading the long email. Nazmul Nazmul, You could try upgrading to version 3.5 of GNU Radio. There are a lot of changes in the digital modulation blocks that might help. There's still some work to be done with them, but the recovery loops used are more stable to the parameter settings than previously. It should help. My guess from your post above is that, yes, you are having some issues with overloading the transmitters. Tom -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Issues with benchmark_tx and benchmark_rx codes
Hello All, I am trying to measure packet error rates for different modulation schemes using benchmark_tx and benchmark_rx codes. I run my codes on XCVR2450 USRP2 dughterboard and I am using the UHD_003_002_001 image (That image was downloaded on June, 2011 from the website, I believe). Now, I am getting strange results in terms of packet error rate. The benchmark_rx codes don't receive anything for d8psk modulation. It receives packets for dqpsk and qbpsk, but the work-ability depends on the inputs in a weird way. I am listing down some of the results that I have observed for different commands: Scenario 1: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 20 -m dbpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dbpsk --costas-alpha 0.05 --gain-mu 0.01 Results: All packets receiverd. Scenario 2: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m dbpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dbpsk --costas-alpha 0.05 --gain-mu 0.01 Results: All packets are received as false.( The only difference between scenario 1 and scenario 2 is the in the increase of --tx-gain (from 20 to 25).) Scenario 3: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m dqpsk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m dqpsk --costas-alpha 0.05 --gain-mu 0.01 Result: All packets are received as OK. (The difference between scenario 2 and scenario 3 lies in the change of modulation (from dbpsk to dqpsk).) Scenario 4: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 --tx-ampl 0.8 --tx-gain 25 -m d8psk ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m d8psk --costas-alpha 0.05 --gain-mu 0.01 Result: No packet gets received. The receiver sits idle waiting for the packets. I observed my transmitted signal in the spectrum analyzer and I did not see any carrier offset, i.e., the received signal was centered at 2.4 GHz. I think that the error is coming from either over-saturation of transmission signal or the costas-loop at the receiver. At present, I am simply walking in the dark and trying random input values to make the schemes work. Is there any suitable range for these options? (--tx-ampl, --tx-gain, --costas-alpha, --gain-mu, --rx-gain, etc.)? Please let me know if any of you have found a suitable range for these options. Your suggestions will be valuable. Thanks for reading the long email. Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] No packet reception in higher modulation
Hello, I am running my codes in basic TX/RX with gnuradio-3.3.0 image. I am using benchmark_tx and benchmark_rx codes in the gnuradio-examples/python/digital folder to find packet loss for different modulation schemes (I believe that these files have been transferred to the gr-digital/examples/narrowband folder in the new image). When I run my the benchmark codes with dbpsk and dqpsk modulation, the receiver receives packets. However, when I run the codes with d8psk modulation scheme, the receiver just sits idle waiting for the packets but does not receive anything ! I am giving the following commands in the benchmark programs: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m d8psk --tx-ampl 0.5 ./benchmark_rx.py -f 2.4G -r 1M -e eth2 -m d8psk I am getting the following packet reception ratios for different modulation schemes: dbpsk: 99%, dqpsk: 92%, d8psk: 0% !! I expected to get less packets (higher packet loss) through d8psk modulation since it is transmitting at a higher data rate. But the receiver is not receiving anything at all !! Your feedback will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] benchmark_rx is not receiving any packet for 8PSK modulation
Hello, I am working on the effect of adaptive modulation in packet loss. I am running my codes in USRP2 with XCVR2450 daughter-board and I am using UHD_003_001_002 image. I am using benchmark_tx and benchmark_rx codes in the gnuradio-examples/python/digital folder to find packet loss for different modulation schemes. Now, when I run my the benchmark codes with dbpsk and dqpsk modulation, the receiver receives packets. However, when I run the codes with d8psk modulation scheme, the receiver just sits idle waiting for the packets but does not receive anything. Let's say I am giving the following commands in the benchmark programs: ./benchmark_tx.py -f 2.4G -r 1M -e eth2 -m d8psk --tx-ampl 0.95 (I am using a very high transmitter power) ./benchmark_rx.py -f 2.4G -r 1M -e eth2 -m d8psk I am getting the following packet reception ratios for different modulation schemes: dbpsk: 99% dqpsk: 92% d8psk: 0% !! I expected to get less packets (higher packet loss) through d8psk modulation since it is transmitting at a higher data rate. But the receiver is not receiving anything at all !! Does it mean that the channel between the transmitter and the receiver is simply not good enough to transmit 3 bit per second per Hz? In other words, am I exceeding Shannon's capacity here? Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Unable to find USRP[0] issue
Hi Josh, Thanks a lot for the reply. The thing is, I was able to run the benchmark_rx.py and benchmark_tx.py codes in another UHD upgraded daughterboard. That daughter-board module is XCVR2450 transceiver. Unfortunately, I could not run the benchmark programs in the FLEX-400 daughterboard (enabled with Gigabit Ethernet). In both cases, I used the uhd_003_002_001 image. Therefore, does the compatibility issue vary from one daughter-board to another? We need to run the benchmark_rx and benchmark_tx.py programs for our experiments and mostly we have access to FLEX-400 daughterboard. Any suggestion will be highly appreciated. Thanks a lot for the help. Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Unable to find USRP[0] issue
Hello, I am trying to use the old gnuradio python programs in a USRP2 daughterboard. I am facing the unable to find USRP [0] problem. I know that questions regarding this problem have appeared before. However, I am still posting my problem since it is probably occurring due to the compatibility issues between UHD and Non-UHD image. At first, I used to image the usrp2 with gnuradio-3.3.0 image and run benchmark codes. It ran fine. Now, the authorities in my laboratory are using UHD compatible SD cards to run codes in USRP2. USRP2 has been imaged with UHD_003_002_001 image. Using this image, when I log in to the node, I can go to the gnuradio folder by giving the following command: *cd gnuradio-uhd/gnuradio/* Thereafter, I give the following commands: *ifconfig eth2 192.168.10.1* *ifconfig eth2 up* * * *find_usrps* However, it says No USRP found (but I know that the daughter-boards are properly connected). I at first thought that the problem could be solved by uninstalling and then re-building gnuradio. Therefore, inside the gnuradio directory, I gave the following commands: * sudo make uninstall git clean -d -x -f ./bootstrap ./configure make make check sudo make install * *ifconfig eth2 up* *root@node1-1:~/git/uhd# ifconfig eth2 192.168.10.1* However, even this did not solve my problem. That means, when I type find_usrps, it still says: *ethernet:write_packet: send: Network is down* *No USRP2 found.* As a result, when I try to run the benchmark_rx.py and benchmark_tx.py programs of the python/digital folder, it says: *usrp: failed to find usrp[0]* *Traceback (most recent call last):* * File ./benchmark_rx.py, line 112, in module* *main()* * File ./benchmark_rx.py, line 101, in main* *tb = my_top_block(demods[options.modulation], rx_callback, options)* * File ./benchmark_rx.py, line 45, in __init__* *self.rxpath = usrp_receive_path.usrp_receive_path(demodulator, rx_callback, options) * * File /root/gnuradio-uhd/gnuradio/gnuradio-examples/python/digital/usrp_receive_path.py, line 65, in __init__* *self._setup_usrp_source(options)* * File /root/gnuradio-uhd/gnuradio/gnuradio-examples/python/digital/usrp_receive_path.py, line 76, in _setup_usrp_source* *self.u = usrp_options.create_usrp_source(options)* * File /usr/local/lib/python2.6/dist-packages/gnuradio/usrp_options.py, line 88, in create_usrp_source* *gain=options.rx_gain,* * File /usr/local/lib/python2.6/dist-packages/gnuradio/blks2impl/generic_usrp.py, line 138, in __init__* *_generic_usrp_base.__init__(self, **kwargs)* * File /usr/local/lib/python2.6/dist-packages/gnuradio/blks2impl/generic_usrp.py, line 63, in __init__* *except: raise Exception, 'Failed to automatically setup a usrp device.' * *Exception: Failed to automatically setup a usrp device.* * * I don't know how to solve this problem. Your help will be very very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Looking for books and online courses on gnuradio?
Hello Tom, I think that both your and Wyglinski's book uses Python code based examples. WINLAB has recently switched to UHD recently. UHD uses C++ based codes for the application. Is there any book that contains GNUradio examples for UHD based C++ codes? Thanks, Nazmul On Sat, Aug 27, 2011 at 11:54 AM, Tom Rondeau trondeau1...@gmail.comwrote: On Thu, Aug 25, 2011 at 12:49 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: This is Nazmul, a PhD student of Wireless Info. Networking Lab of ECE, Rutgers University. I need to use GNUradio in UHD platform to implement some wireless communication algorithms. I have two very general questions. 1. Do you know of any book that focuses mostly on software defined radio with GNUradio? I found one (http://www.amazon.com/Software-Defined-Radio-GNU-USRP/dp/0071498834) but it is out of print! :S 2. Do you know of any online course that focuses on GNU radio? Basically, I am a beginner in software defined radio research. I am coming from mostly theoretical wireless communication background and I have some limited programming language experiences (C/C++, Matlab). I will really appreciate if you can even suggest some general books/online courses on software defined radio that might help me. I am probably asking some elementary questions but any of your feedback will be really helpful. Thanks, Nazmul Nazmul, Search back in the archives on this topic as it has come up a lot. The short answer is that there is no book dedicated to this topic, and the one you pointed out was never published (and I don't know why Amazon keeps it on its website). There are a couple, but instead of rehashing this conversation, please look for the past discussions of this topic. Tom -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Looking for books and online courses on gnuradio?
Tom, Thanks a lot for your email. I appreciate your feedback. I guess that your and Dr. Wyglinski's book will be helpful for me. I will try to get these books through my library and see how it goes from there. Thanks, Nazmul On Sat, Aug 27, 2011 at 11:54 AM, Tom Rondeau trondeau1...@gmail.comwrote: On Thu, Aug 25, 2011 at 12:49 PM, Nazmul Islam mnis...@winlab.rutgers.edu wrote: This is Nazmul, a PhD student of Wireless Info. Networking Lab of ECE, Rutgers University. I need to use GNUradio in UHD platform to implement some wireless communication algorithms. I have two very general questions. 1. Do you know of any book that focuses mostly on software defined radio with GNUradio? I found one (http://www.amazon.com/Software-Defined-Radio-GNU-USRP/dp/0071498834) but it is out of print! :S 2. Do you know of any online course that focuses on GNU radio? Basically, I am a beginner in software defined radio research. I am coming from mostly theoretical wireless communication background and I have some limited programming language experiences (C/C++, Matlab). I will really appreciate if you can even suggest some general books/online courses on software defined radio that might help me. I am probably asking some elementary questions but any of your feedback will be really helpful. Thanks, Nazmul Nazmul, Search back in the archives on this topic as it has come up a lot. The short answer is that there is no book dedicated to this topic, and the one you pointed out was never published (and I don't know why Amazon keeps it on its website). There are a couple, but instead of rehashing this conversation, please look for the past discussions of this topic. Tom -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Looking for books and online courses on gnuradio?
This is Nazmul, a PhD student of Wireless Info. Networking Lab of ECE, Rutgers University. I need to use GNUradio in UHD platform to implement some wireless communication algorithms. I have two very general questions. 1. Do you know of any book that focuses mostly on software defined radio with GNUradio? I found one ( http://www.amazon.com/Software-Defined-Radio-GNU-USRP/dp/0071498834) but it is out of print! :S 2. Do you know of any online course that focuses on GNU radio? Basically, I am a beginner in software defined radio research. I am coming from mostly theoretical wireless communication background and I have some limited programming language experiences (C/C++, Matlab). I will really appreciate if you can even suggest some general books/online courses on software defined radio that might help me. I am probably asking some elementary questions but any of your feedback will be really helpful. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Need to resolve error: Unpack requires a string argument of length 3
Hello, This is Nazmul, a PhD student of Rutgers University. I am using a modified form of 'benchmark_Tx.py' and 'benchmark_Rx.py' for my research. I am transmitting a random binary sequence and calculating the bit error rate at the receiver (BER). Basically, I am generating a long binary sequence, grouping them into different packets and then transmitting the packets using 'benchmark_Tx' program. I receive the packets using 'benchmark_Rx.py' and then find the BER. The program works at high transmitter amplitude, i.e., when channels are good. However, when I start lowering the transmitter amplitude, i.e. create bad channels, at some point, I get the following error: *Exception in thread Thread-1: Traceback (most recent call last): File /usr/lib/python2.6/threading.py, line 532, in __bootstrap_inner self.run() File /usr/local/lib/python2.6/dist-packages/gnuradio/blks2impl/pkt.py, line 164, in run self.callback(ok, payload) File ./rec_randombingen.py, line 97, in rx_callback (ide,pktno,) = struct.unpack('!cH', payload[0:3]) error: unpack requires a string argument of length 3* After showing this error, the whole programs. Let's assume that I am transmitting 100 packets. If this error occurs at 20-th packet, the benchmark_rx does not receive the next 80 packets. This really hampers the calculation of packet loss probability and bit error rate. I guess, for very bad channels, noise is acting as erasure, i.e., some part of the packet header is getting erased. Ideally, I would like the program to assume this packet to be 'lost' and move on to receiving the remaining packets. It is OK with me if I lose a packet due to this type of error but how can I make sure that the whole program does not stop due to this error? Your feedback will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Benchmark_rx is giving weird output for high bit rate
Hello, This is Nazmul, a PhD student of Rutgers University. I am using a modified form of 'benchmark_Tx.py' and 'benchmark_Rx.py' for my research. I am transmitting a random binary sequence from an USRP2 testbed and calculating the bit error rate at the receiver (BER), another USRP2 testbed. Basically, I am generating a long binary sequence, grouping them into different packets and then transmitting the packets using 'benchmark_Tx' program. I receive the packets using 'benchmark_Rx.py' and then find the BER. The program works well when bit rate is lower than 3 Mbps or 3.5 Mpbs. However, when the bit rate exceeds 3.5 Mbps, the benchmark_Rx produces a bunch of S characters. It produces a weird output like following!! I don't know why this weird output occurs. Does it happen because I am exceeding the capacity of the path? Or is there an in built low pass filter at the receiver that only passes signals whose bandwidth is lower than 3 MHz? (let's say that I am using Differential BPSK here). Your feedback on this will be highly appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical Computer Engineering Wireless Information Networking Laboratory Rutgers, USA. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio