[Discuss-gnuradio] Install gnuradio on E100
Hi, All, I try to reinstall gnuradio (3.5.0rc0) on E100 with $ cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/Toolchains/arm_cortex_a8_native.cmake ../ $ make I got errors when build gruel. How can I fix it? Before this, I got errors for unidentified gcc when cmake, so I opkg remove gcc and then opkg install gcc opkg install gcc-symlink Thanks, Pei [ 2%] Built target gruel make[2]: Warning: File `/usr/lib/libcppunit.so' has modification time 20764434 s in the future Linking CXX executable test_gruel CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function `global constructors keyed to main': test_gruel.cc:(.text+0x2c): undefined reference to `boost::system::generic_category()' test_gruel.cc:(.text+0x34): undefined reference to `boost::system::generic_category()' test_gruel.cc:(.text+0x3c): undefined reference to `boost::system::system_category()' CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function `boost::enable_if, std::allocator >, boost::filesystem2::path_traits> >, bool>::type boost::filesystem2::create_directory, std::allocator >, boost::filesystem2::path_traits> >(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&)': test_gruel.cc:(.text._ZN5boost11filesystem216create_directoryINS0_10basic_pathISsNS0_11path_traitsENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if, std::allocator >, boost::filesystem2::path_traits> >, bool>::type boost::filesystem2::create_directory, std::allocator >, boost::filesystem2::path_traits> >(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&)]+0x44): undefined reference to `boost::filesystem2::detail::create_directory_api(std::basic_string, std::allocator > const&)' CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function `boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> boost::filesystem2::current_path, std::allocator >, boost::filesystem2::path_traits> >()': test_gruel.cc:(.text._ZN5boost11filesystem212current_pathINS0_10basic_pathISsNS0_11path_traitsET_v[boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> boost::filesystem2::current_path, std::allocator >, boost::filesystem2::path_traits> >()]+0x20): undefined reference to `boost::filesystem2::detail::get_current_path_api(std::basic_string, std::allocator >&)' CMakeFiles/test_gruel.dir/test_gruel.cc.o: In function `boost::enable_if, std::allocator >, boost::filesystem2::path_traits> >, bool>::type boost::filesystem2::is_directory, std::allocator >, boost::filesystem2::path_traits> >(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&)': test_gruel.cc:(.text._ZN5boost11filesystem212is_directoryINS0_10basic_pathISsNS0_11path_traitsENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if, std::allocator >, boost::filesystem2::path_traits> >, bool>::type boost::filesystem2::is_directory, std::allocator >, boost::filesystem2::path_traits> >(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&)]+0x14): undefined reference to `boost::system::system_category()' test_gruel.cc:(.text._ZN5boost11filesystem212is_directoryINS0_10basic_pathISsNS0_11path_traitsENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if, std::allocator >, boost::filesystem2::path_traits> >, bool>::type boost::filesystem2::is_directory, std::allocator >, boost::filesystem2::path_traits> >(boost::filesystem2::basic_path, std::allocator >, boost::filesystem2::path_traits> const&)]+0x54): undefined reference to `boost::filesystem2::detail::status_api(std::basic_string, std::allocator > const&, boost::system::error_code&)' collect2: ld returned 1 exit status make[2]: *** [gruel/src/lib/test_gruel] Error 1 make[1]: *** [gruel/src/lib/CMakeFiles/test_gruel.dir/all] Error 2 make: *** [all] Error 2___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] E100 Simultaneous Transmit and Receive
Hi, All, Can I make E100 transmit and receive simultaneously? Basically, I want to receive what I'm transmitting. I'm using XCVR2450 daughterboard. Is there any example code? Thanks, dekst ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] frequency synthesis
Hi, Josh, Thanks a lot! They are results of two USRP1. Now I use USRP E100 to transmit, USRP1 to receive, I got http://www.cse.msu.edu/~huangpe3/usrp/e100tx_1r.png with rx_ascii_art_dft Seems there is no signal. I checked it with usrp_fft.py http://www.cse.msu.edu/~huangpe3/usrp/e100tx_usrp1r.png The frequency offset is too large. There must be something wrong, so I change to use USRP1 for transmission and E100 for receiving, then I got http://www.cse.msu.edu/~huangpe3/usrp/1tx_e100r.png There is a signal near 5500.5MHz Do I need to add more parameters for transmission with e100? sudo ./tx_waveforms --rate 2e6 --freq 5.5e9 --ampl 1.0 --ant J1 --wave-type SINE --wave-freq 0.5e6 sudo ./rx_ascii_art_dft --rate 2e6 --freq 5.5e9 --ant J1 --num-bins 256 --dyn-rng 120 Thanks, dekst___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] frequency synthesis
Hi, all, I used tx_waveforms in uhd to transmit a 0.5M sine wave on 5.5GHz. As we all know, Frequency(A) * Frequenc(B) = Frequency(A-B) + Frequency(A+B) I got two peaks at 5.4995GHz and 5.5005GHz when the tx_rate is 1M samples per second. http://www.cse.msu.edu/~huangpe3/usrp/1Mtx_05Msine.png I thought it is right, sampling frequency is twice the sine frequency. However, when the tx_rate is 2MSps, I got one peak at 5.5005GHz. http://www.cse.msu.edu/~huangpe3/usrp/2Mtx_05Msine.png Then I am confused. Where does the lower frequency part go? Or the first one is actually an aliasing because we need some degree of oversampling in practice. Also I'd like to know where do we remove the lower frequency part (freq(A-B)) in uhd. Thanks a lot for explaining the phenomena. dekst___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] New build structure! (Warning #2)
Thanks, no further error. 'make check' returns no rule to make check, but we can 'make install' without error. A problem is that the PYTHONPATH is not set, so we get error 'cannot find gnuradio' when we are trying to run an example. Even though I put export PYTHONPATH=/usr/local/lib/python2.6/site-packages in ~/.bashrc and ~/.profile it does not work. I have to type export PYTHONPATH=/usr/local/lib/python2.6/site-packages in each terminal that I log into the E100 through SSH. Is there a way to set PYTHONPATH permanently on E100? >-- > >Message: 23 >Date: Thu, 20 Oct 2011 22:46:48 -0700 >From: Josh Blum >To: discuss-gnuradio@gnu.org >Subject: Re: [Discuss-gnuradio] New build structure! (Warning #2) >Message-ID: <4ea10748.30...@ettus.com> >Content-Type: text/plain; charset=ISO-8859-1 > > > >On 10/20/2011 10:22 PM, Daniel Dekst wrote: >> >> Tried on USRP E100 kernel module 3.0.0 >> Error when make. >> >> [ 13%] Building C object >> gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o >> /program/gnuradio/gnuradio-core/src/lib/filter/dotprod_fff_armv7_a.c: In >> function 'dotprod_fff_armv7_a': >> /program/gnuradio/gnuradio-core/src/lib/filter/dotprod_fff_armv7_a.c:67:5: >> error: impossible register constraint in 'asm' >> make[2]: *** >> [gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o] >> Error 1 >> make[1]: *** [gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/all] Error 2 >> make: *** [all] Error 2 >> >> > >You may want to experiment with compiler flags. Try this: > >cmake -DCMAKE_CXX_FLAGS:STRING="-mcpu=cortex-a8 -mfpu=neon >-mfloat-abi=softfp -g" -DCMAKE_C_FLAGS:STRING="-mcpu=cortex-a8 >-mfpu=neon -mfloat-abi=softfp -g" > >-josh > > ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] New build structure! (Warning #2)
Tried on USRP E100 kernel module 3.0.0 Error when make. [ 13%] Building C object gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o /program/gnuradio/gnuradio-core/src/lib/filter/dotprod_fff_armv7_a.c: In function 'dotprod_fff_armv7_a': /program/gnuradio/gnuradio-core/src/lib/filter/dotprod_fff_armv7_a.c:67:5: error: impossible register constraint in 'asm' make[2]: *** [gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/filter/dotprod_fff_armv7_a.c.o] Error 1 make[1]: *** [gnuradio-core/src/lib/CMakeFiles/gnuradio-core.dir/all] Error 2 make: *** [all] Error 2 2011/10/20 >Message: 10 >Date: Wed, 19 Oct 2011 18:43:32 -0700 >From: Tom Rondeau >To: GNURadio Discussion List >Subject: [Discuss-gnuradio] New build structure! (Warning #2) >Message-ID: > >Content-Type: text/plain; charset="iso-8859-1" > >Another big change is happening today! Josh Blum has make GNU Radio build >using cmake, and we are hoping to switch over to it completely. The 'next' >branch has just pulled in his changes, and we now have parallel build >systems, cmake and autofoo. We are trying to make cmake the default build >system, so we need people to start using it and testing as much as possible. >For people who have issues using cmake, the autofoo stuff will still be >there. The parallel build system will be in place official from 3.5. As of >3.6, we will have made a decision to move to cmake or stay with autotools; >the other will be removed. It is expected that we will move to cmake, so >this is a Warning to everyone that autotools is being deprecated as our >build method. > >Details about using cmake can be found here: >http://gnuradio.org/redmine/projects/gnuradio/wiki/CMakeWork > >To summarizes: > >$ cd gnuradio >$ git checkout next >$ git pull >$ mkdir build >$ cd build >$ cmake ../ >$ make >$ make test >$ sudo make install > >Again, if that fails but you really need to use the current next branch, the >same autotools build process will work. Please let us know if you find any >issues. > >Thanks! >Tom > > > ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] USRP1 waveform
Hi, All, I'm using USRP1 with XCVR2450 daughterboard. I transmit packets with OFDM modulation as in benchmark_ofdm_tx.py. Using usrp_fft.py I detect the wave form as http://www.cse.msu.edu/~huangpe3/music/usrp_fft.png The two edges are attenuated a lot and there is a spike in the middle (DC offset?) What are the reasons for them and can I address them by updating firmware or something else to get better waveforms as those obtained from USRP2? Changing the inerpolation rate changes the (frequency) bandwidth. I know that higher data rate results in wider bandwidth. But here the output rate is fixed by DAC 128 MS/s. Why the bandwidth is changing in accordance with the interpolation rate? Thanks a lot for helping me out! Regards, Pei Get your own web address. Have a HUGE year through Yahoo! Small Business. http://smallbusiness.yahoo.com/domains/?p=BESTDEAL___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] clear file_sink every minute
Hi, All, I average symbols' magnitude over a packet and output the value to a file_sink. self.connect(self.symbol_filt, gr.file_sink(gr.sizeof_double*self._occupied_tones, "ofdm_rss_f.dat")) Although I output a value every packet, the file I got has many zeros. Suppose I'm using 64 subcarriers with BPSK. For a 400 bytes packet, I get 64 * 50 = 3200 zeros before I get the last 64 average values. Seems that although I do not output in my program explicitly, each time I consume 64 symbols there are 64 outputs of zeros to the file_sink. I can use Octave to read the binary file and extract the values that I need. But for a long time measurement, I may get memory problem for a large binary file. So I want to open another thread, extracting values every minute. But how could I safely clear the content of the file created by the file_sink while do not interrupt the recording. Thanks, Pei Now that's room service! Choose from over 150,000 hotels in 45,000 destinations on Yahoo! Travel to find your fit. http://farechase.yahoo.com/promo-generic-14795097___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Add parameters to a C++ function
Hi, Thilo, Thanks a lot for your help! We also need to modify the gr_ofdm_frame_sink.i and then it works. Good luck! Best, Pei --- On Mon, 11/8/10, Thilo Mönicke wrote: From: Thilo Mönicke Subject: Re: [Discuss-gnuradio] Add parameters to a C++ function To: "Daniel Dekst" Date: Monday, November 8, 2010, 5:10 PM Hi, have you changed the swig files to? have a look at swig/Makefile.am and swig/yourpakagename.i thilo 2010/11/8 Daniel Dekst Hi, all, I want to get the subcarrier SNR averaged across the whole packet. So I want to trigger the calculation in gr_ofdm_frame_acquisition.cc from gr_ofdm_frame_sink.cc where the packet header is examined to be correct or not. To achieve this, I add one parameter to the construction of gr_ofdm_frame_sink, a pointer pointing to the instance of gr_ofdm_frame_acquistion so that I can access functions in the gr_ofdm_frame_acquisition. However, I got error File "/usr/local/lib/python2.6/dist-packages/gnuradio/gr/gnuradio_swig_py_general.py", line 7039, in ofdm_frame_sink return _gnuradio_swig_py_general.ofdm_frame_sink(*args, **kwargs) TypeError: ofdm_frame_sink() takes at most 8 arguments (9 given) I have changed the gr_ofdm_frame_sink.cc/h to be able to hold 9 arguments. Why does _gnuradio_swig_py_general still report it can only take 8 arguments? What should I modify? Thanks a lot! Best, Pei ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Add parameters to a C++ function
Hi, all, I want to get the subcarrier SNR averaged across the whole packet. So I want to trigger the calculation in gr_ofdm_frame_acquisition.cc from gr_ofdm_frame_sink.cc where the packet header is examined to be correct or not. To achieve this, I add one parameter to the construction of gr_ofdm_frame_sink, a pointer pointing to the instance of gr_ofdm_frame_acquistion so that I can access functions in the gr_ofdm_frame_acquisition. However, I got error File "/usr/local/lib/python2.6/dist-packages/gnuradio/gr/gnuradio_swig_py_general.py", line 7039, in ofdm_frame_sink return _gnuradio_swig_py_general.ofdm_frame_sink(*args, **kwargs) TypeError: ofdm_frame_sink() takes at most 8 arguments (9 given) I have changed the gr_ofdm_frame_sink.cc/h to be able to hold 9 arguments. Why does _gnuradio_swig_py_general still report it can only take 8 arguments? What should I modify? Thanks a lot! Best, Pei ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio