Re: [Discuss-gnuradio] ctest -V segfault, coredump reveals nothing
Sounds plausible. Ctest is actually just running a shell script. You can try running that script through gdb. The name of the script will be printed near the top of ctest -V. Alternatively you should be able to find it in $build/modname/python/namespace/qa_whatever_your_test_is_called.sh; an example for gr-digital: build/gr-digital/python/digital/qa_mpsk_snr_est_test.sh Nathan, great call. Running the script without the ctest infrastructure yielded a valid stacktrace. I found that it was related to the way I was creating my fft engines. Instead of instantiating an FFT directly, I was creating it w/ a *managed_resource_pool_nofactory*. I haven't investigated fully why this is causing my program to segfault, but as a quick test I replaced the way I was creating the fft with just this line: *fft::fft_complex fft = fft::fft_complex(fftSize);* and am not getting the segfaults anymore. I'll have to do some debugging to figure out why this is going on, but atleast I know where to start now. For those that are curious, the backtrace looks like this: Program terminated with signal 11, Segmentation fault. #0 0x0031 in ?? () (gdb) backtrace #0 0x0031 in ?? () #1 0x7f0317592c70 in boost::checked_deletegr::fft::fft_complex (x=0xb07430) at /usr/include/boost/checked_delete.hpp:34 #2 0x7f03175974c0 in boost::detail::sp_counted_impl_pgr::fft::fft_complex::dispose (this=0xb065d0) at /usr/include/boost/smart_ptr/detail/sp_counted_impl.hpp:78 #3 0x7f0317585e02 in boost::detail::sp_counted_base::release (this=0xb065d0) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #4 0x7f0317585e91 in boost::detail::shared_count::~shared_count (this=0xadb240, __in_chrg=optimized out) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #5 0x7f031759023c in boost::shared_ptrgr::fft::fft_complex::~shared_ptr (this=0xadb238, __in_chrg=optimized out) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328 #6 0x7f0317593da8 in std::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::~pair (this=0xadb230, __in_chrg=optimized out) at /usr/include/c++/4.8/bits/stl_pair.h:96 #7 0x7f0317596378 in __gnu_cxx::new_allocatorstd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::destroy (this=0x7fff820439ef, __p=0xadb230) at /usr/include/c++/4.8/ext/new_allocator.h:133 #8 0x7f0317595742 in std::_Rb_treegr::fft::fft_complex*, std::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::_Select1ststd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::lessgr::fft::fft_complex*, std::allocatorstd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::_M_destroy_node (this=0xaca178, __p=0xadb210) at /usr/include/c++/4.8/bits/stl_tree.h:395 #9 0x7f031759478f in std::_Rb_treegr::fft::fft_complex*, std::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::_Select1ststd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::lessgr::fft::fft_complex*, std::allocatorstd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::_M_erase (this=0xaca178, __x=0xadb210) at /usr/include/c++/4.8/bits/stl_tree.h:1127 #10 0x7f0317593c57 in std::_Rb_treegr::fft::fft_complex*, std::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::_Select1ststd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex , std::lessgr::fft::fft_complex*, std::allocatorstd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::~_Rb_tree (this=0xaca178, __in_chrg=optimized out) at /usr/include/c++/4.8/bits/stl_tree.h:671 #11 0x7f0317593176 in std::mapgr::fft::fft_complex*, boost::shared_ptrgr::fft::fft_complex, std::lessgr::fft::fft_complex*, std::allocatorstd::pairgr::fft::fft_complex* const, boost::shared_ptrgr::fft::fft_complex ::~map (this=0xaca178, __in_chrg=optimized out) at /usr/include/c++/4.8/bits/stl_map.h:96 #12 0x7f03175957e9 in pooled_resourcegr::fft::fft_complex::~pooled_resource (this=0xaca130, __in_chrg=optimized out) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:20 #13 0x7f0317595836 in boost::checked_deletepooled_resourcegr::fft::fft_complex (x=0xaca130) at /usr/include/boost/checked_delete.hpp:34 #14 0x7f031759747e in boost::detail::sp_counted_impl_ppooled_resourcegr::fft::fft_complex ::dispose (this=0xaca2e0) at /usr/include/boost/smart_ptr/detail/sp_counted_impl.hpp:78 #15 0x7f0317585e02 in boost::detail::sp_counted_base::release (this=0xaca2e0) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #16 0x7f0317585e91 in boost::detail::shared_count::~shared_count (this=0xadb1a0, __in_chrg=optimized out) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #17 0x7f0317591d0a in
[Discuss-gnuradio] Digital voice encryption block
Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machinebut without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.org 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Digital voice encryption block
Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.org 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] dvb-t project with two USRPN200 devices failure
Can I trans/receive without Rational Resampler? It distorts the signal too much :( Mon, 31 Mar 2014 20:12:27 +0400 от Nasi nesaz...@mail.ru: Thanks a lot! I will try them too... Mon, 31 Mar 2014 09:08:04 -0700 (PDT) от Bogdan Diaconescu b_diacone...@yahoo.com: One thing I did once and worked are: 1. Use a file sink instead of USRP when transmitting. Then, once the file is generated send the samples from file (opened in a file source) directly to USRP. That will need a good harddrive with at least 80MB/s read speed, a SSD will work probably. 2. Do the above but write the file int RAM like dd if=yourfile.bin of=/dev/ram0 - you may need to give root access. Then open /dev/ram0 in a file source and send it to USRP. This will consume you RAM and will potentiall lock your laptop if the .bin file is bigger than RAM size. But, indeed you probably need a better computer. Bogdan On Monday, March 31, 2014 6:59 PM, Marcus Müller mar...@hostalia.de wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm afraid you can't reduce needed sample rate for a fixed bandwidth. You need a stronger laptop. Often, plugging it into mains power helps. Marcus On 31.03.2014 17:52, Nasi wrote: ohhh, now I understand. It produces in the transmitter side - which probably means underflow with my laptop. Do you know how to decrease this power? Mon, 31 Mar 2014 08:44:49 -0700 (PDT) ?? Bogdan Diaconescu b_diacone...@yahoo.com : For dvbt the bandwidth is around 9.14Msps so with the rational resampler you need to set-up the USRP at 10Msps. 1Msps will not work as only a part of the spectrum will be received. Bogdan On Monday, March 31, 2014 6:36 PM, Nasi nesaz...@mail.ru wrote: Hi, Thanks! I am using collected data also as you say. I am using sampling rate of 1 Mbps instead of 10 Mbps which must be the same for static transmission. Isn't it? Mon, 31 Mar 2014 08:23:01 -0700 (PDT) ?? Bogdan Diaconescu b_diacone...@yahoo.com : Hi, not having access to my setup for now but for the beginning you could try recording the spectrum with your USRP and then use the file source to decode the signal offline. There is a script file apps/capture.sh that I usually use to capture data. You may tweak it for your needs (frequency, gain). Sometimes it was reported that on old cpus the processing power is not enough so that the result is an overflow (you directly see a long OOO message in this case). Try to see if this is the case. One way to reduce the overhead is to run the receiving flow directly from command line instead of gnuradio-companion (e.g. ./top_block out.txt) after you have generated the flowgraph. The gnuradio-companion cannot cope with big amount of data when the blocks gets out a lot of text. Bogdan On Monday, March 31, 2014 1:22 PM, Nasi nesaz...@mail.ru wrote: Hi all, I am using ubuntu 13.04, GNURADIO 3.7. I cannot transmit or receive using two (USRPN200 + XCRV2450 d.board+VERT2450 antennas) devices for DVB-T project. Here is the dvb-t project: https://github.com/BogdanDIA/gr-dvbt It will be very helpful and appreciated if you help me. If someone tested it or can do it, please let me know. As far as I know someone tested it with N210 model. I think this failure is due to high noise/interference or smt. else. However I tested it already with all possible configurations. I also attach my .grc files. -- NE ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- NE ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -BEGIN PGP SIGNATURE- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJTOZDPAAoJEBQ6EdjyzlHtDWwIALcmUMVs7Rrx/WdFtqJ//Fxn tzMvsVrDOKBu+5AnmmbVZ20dVulN2lcZ25vZScpFYKOAbe5TwRy2XTsFODHItGNF dhmyOQNLVArDSSQuWTLSnMODKEUMCgU/sxyDtal0SVz6KuCSjjwP/exgaKHtNweU tQid+PdH0JTZ/5iqvtQyHJhwy0rcl0RIK8ig0MXhoQG8IQVl2lKZXUtlOle1wMsC w5oed0uop0d1J4bWDxC3oBRd6DfSCLx9avXtCHEFdgiAZSkFPva0XhJbimm3K8GP V6qzH2S29eojRZYQHqlWxy8ISMG8SCr0Ii2joHv6iESCB9cgK1KkWrECMc0Ltvk= =HjFO -END PGP SIGNATURE- ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -- NE -- NE ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Digital voice encryption block
Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.org 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] help on exception on using the uhd.dll i think...
Hey, In order to start my on application code using the uhd code, I tried creating a new blank project ,and did all The necessary includes, and library include in the linker an compiler and so on.. As a starter I copied the uhd_find_devices.cpp to my project lib and build it. It's run o.k , and then I tried to use the exe and it has this exception: First-chance exception at 0x0f62763b in uhd_find_devices.exe: 0xC005: Access violation reading location 0x02796000 What can I do next?? Thanks, iftah ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] help on exception on using the uhd.dll i think...
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Hi Iftah, usually you'd run it with a debugger, and try to find out where exactly the access violation happens. Greetings, Marcus On 17.04.2014 16:12, iftah giladi wrote: Hey, In order to start my on application code using the uhd code, I tried creating a new blank project ,and did all The necessary includes, and library include in the linker an compiler and so on.. As a starter I copied the uhd_find_devices.cpp to my project lib and build it. It's run o.k , and then I tried to use the exe and it has this exception: First-chance exception at 0x0f62763b in uhd_find_devices.exe: 0xC005: Access violation reading location 0x02796000 What can I do next?? Thanks, iftah ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -BEGIN PGP SIGNATURE- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJTT+NOAAoJEBQ6EdjyzlHtZGUH/3H6S2ZumwxsBTfh7WqUNfqi fHYhh4dULXmRQv8D306tuwDmXTpTwSHX7yrl6D63wZcN9uCraT5JUgl86C7ZtmmP OXrUXFpYaYFdOXfV70c7XLcQXvd7omRgvi1s1ctOb/44Dlv7DghhxEXXP/RNMWlE dm+6rK0QxF+0xXRBX1vWzZPw6ZXpeeEhAThwmfJelaPbEztAZf1UhMr3ddbguW+5 6S0m8unNP+Dk41mWrmkkhO+A0wWNJ/6LJDCT8Y4f8OzCnjdO7ImJIbiV+tqhqZ3R wxRqF/Wm/3eN4i32Pk0K1WR2ZwFhtywz+topuNz63k8NKAaNdd/lGOAt7YppYRE= =UyXB -END PGP SIGNATURE- ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Digital voice encryption block
Question 3: AES is indeed a common system for voice encryption, widely used for example in US police / public safety radios (APCO25 standard). Older systems used often DES, but not with a neat linear predictive voice codec, but just a CVSD digitizer, DES box and FSK radio link (Motorola SECURENET). Then there are lots of proprietary / closed source encryption systems, some really weak with 32 bit keys, more aimed against the casual listener / scanner kid, but not providing real security against an advanced eavesdropping attack. Ralph. From: discuss-gnuradio-bounces+ralph=schmid@gnu.org [mailto:discuss-gnuradio-bounces+ralph=schmid@gnu.org] On Behalf Of Tigor Christian Sent: Thursday, April 17, 2014 3:50 PM To: discuss-gnuradio@gnu.org Subject: [Discuss-gnuradio] Digital voice encryption block Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.org https://www.cgran.org/ 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Digital voice encryption block
There is no crypto in the main GNU Radio installation. I am not aware of any public out-of-tree modules that implement crypto. Your best bet would probably be handling crypto at the data socket layer and pushing to a GNU Radio PDU-to-tagged-stream or using GR's message passing interface to pass encrypted data packet between the upper layer and GR mod/demod layer. You could use PyCrypto, as you suggested, or libgcrypt in C/C++. http://www.gnu.org/software/libgcrypt/ GNU Radio is best suited for the PHY and basic MAC layers, but of course this doesn't preclude wrapping libgcrypt functions into GNU Radio blocks. I just think it would be more efficient to do crypto at a layer above the GR mod/demod blocks. You would essentially pass data between the layers using message queues and message handlers. Sean From: discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org [mailto:discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org] On Behalf Of Ralph A. Schmid, dk5ras Sent: Thursday, April 17, 2014 10:38 AM To: 'Tigor Christian'; discuss-gnuradio@gnu.org Subject: Re: [Discuss-gnuradio] Digital voice encryption block Question 3: AES is indeed a common system for voice encryption, widely used for example in US police / public safety radios (APCO25 standard). Older systems used often DES, but not with a neat linear predictive voice codec, but just a CVSD digitizer, DES box and FSK radio link (Motorola SECURENET). Then there are lots of proprietary / closed source encryption systems, some really weak with 32 bit keys, more aimed against the casual listener / scanner kid, but not providing real security against an advanced eavesdropping attack. Ralph. From: discuss-gnuradio-bounces+ralph=schmid@gnu.orgmailto:discuss-gnuradio-bounces+ralph=schmid@gnu.org [mailto:discuss-gnuradio-bounces+ralph=schmid@gnu.org] On Behalf Of Tigor Christian Sent: Thursday, April 17, 2014 3:50 PM To: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org Subject: [Discuss-gnuradio] Digital voice encryption block Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.orghttps://www.cgran.org/ 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Digital voice encryption block
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Also, if using encryption over a wireless link, you'll need some way to ensure that damaged data gets resent, or to ensure a damaged block does not affect the decryptability of following data. So I think your flowgraphs should read Mic/Soundcard - low pass - source coding (at least some uLaw or so) - - encryption - frame building channel coding - symbol mapping/modulation - pulse shaping - tx system rx system - freq/time/clock sync (might include deframing) - channel decoding (equalizing might happen somewhere here) - decryption - source decode - soundcard As Sean pointed out, this does not necessarily translate nicely into a GNU Radio sample flow graph and you might be better of with a combination of sample flows and message passing. With encryption, you really really need the channel code, since a single flipped bit will render your transmission unusable. Also, I don't really understand: GRC creates python *flow graphs* out of graphical representations. It can generate hier blocks, which are just flow sub-graphs internally, but it can not generate blocks that have a work function. If you're already at ease with designing oot modules, then using a python library to encode a block of data seems to be rather trivial, and I don't see how that should be possible or easier from withing GRC ;) Greetings, Marcus On 17.04.2014 16:37, Ralph A. Schmid, dk5ras wrote: Question 3: AES is indeed a common system for voice encryption, widely used for example in US police / public safety radios (APCO25 standard). Older systems used often DES, but not with a neat linear predictive voice codec, but just a CVSD digitizer, DES box and FSK radio link (Motorola SECURENET). Then there are lots of proprietary / closed source encryption systems, some really weak with 32 bit keys, more aimed against the casual listener / scanner kid, but not providing real security against an advanced eavesdropping attack. Ralph. From: discuss-gnuradio-bounces+ralph=schmid@gnu.org [mailto:discuss-gnuradio-bounces+ralph=schmid@gnu.org] On Behalf Of Tigor Christian Sent: Thursday, April 17, 2014 3:50 PM To: discuss-gnuradio@gnu.org Subject: [Discuss-gnuradio] Digital voice encryption block Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machine but without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first thought is to get data stream of certain block and do encryption process with PyCrypto (not in the OoTM, but directly in synthesized python code) then put them back to the next block. Would it be possible and how to achieve this? 2. Do GNURadio has a ready-to-use GRC blocks or OoTM of digital encryption algorithm (not scrambler)? and how do I get it (a tutorial would be fine)? So far, I can not found the block either in GRC or https://www.cgran.org https://www.cgran.org/ 3. Last question may be off topic a bit. Is it common to use AES algorithm to encrypt voice data, or is there any common encryption method (preferably could be implemented in GRC)? Thank you for your time and willingness to answer these questions Regards tc ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio -BEGIN PGP SIGNATURE- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJTT+1xAAoJEBQ6EdjyzlHtZwEIAJk86sf0TWhP+z976wDd8Oi4 tMk6Nk2rcUMEFP4TopDo4fo0uCH3n6oO9jL+6Wuh2M1gqrpj3jvdfUvPMJRPHVDo LpWzE6V2XIcNbShA/XOp56sf3/OqS+qDAXLD2Wa1xnZIW4cPttJ0bWWNaukjxpUO 5z2M8zkWSy7pIl4eMDIexY6fedzko0ZfO7sw8ynLNmRSA2mNHsJ9qiwrhmVuzqLS a7xgQBkFlTpmOx6t4g254uB0wWakPPcw3Td1GzSr3j5p1/Lk/FskJdM/mLTLbGuw 5CAB2Kl4fBwOy6mPTcNHrF3pDAoPrPqtNSEjFFuvaCytATYo92DeoIc6kYOZHEE= =yCnV -END PGP SIGNATURE- ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] Error rate block with USRP
On Wed, Apr 16, 2014 at 3:38 PM, Azza azza.ben.mos...@gmail.com wrote: Tom Rondeau-2 wrote On Wed, Apr 16, 2014 at 2:06 PM, Azza lt; azza.ben.mosbah@ gt; wrote: Tom Rondeau-2 wrote On Wed, Apr 16, 2014 at 10:57 AM, Azza lt; azza.ben.mosbah@ gt; wrote: Thank you. I have taken out the throttle block and add an AGC block at the receiver. To proceed with the synchronization, should I use a Constellation Receiver block or a Polyphase Clock Sync block ? Kind regards, Azza You'll actually need both. AGC - clock sync - constellation receiver (phase/freq recovery and decoding). Also, please reply in-line with the rest of the message. By cutting off the other part of our conversation makes it difficult for others to follow the thread. Tom Thank you. I have added modifications to my flowgraph: lt;http://gnuradio.4.n7.nabble.com/file/n47630/gnu-ber-modified.pnggt ; But, I am still confused about minimum/maximum frequency deviation in the Constellation Receiver block. How should it be set? Regards, Azza Those are settings to keep the frequency sync from walking away, in normalized frequency. +1 and -1 should work fine. Tom ___ Discuss-gnuradio mailing list Discuss-gnuradio@ https://lists.gnu.org/mailman/listinfo/discuss-gnuradio Tom, I still found BER=0.5, however the error output of the Constellation Receiver block gives 0. Regards, Azza Azza, Maybe take a step back from trying to calculate the BER. Make sure you have a transmitting system and receiver system that are working correctly. At the receiver, the first thing to do is make sure you're getting a proper constellation. If so, you should be able to extract the bits to compare them. And by this, I mean make two flowgraphs for the tx and rx sides so you're not confusing yourself by trying to tie everything together. Also, make sure you are either using differential modulation encoding to correct for unknown phase offsets or that you are somehow correcting for this possibility. Then, you need to make sure you're getting your frames through. There will be a delay between what you transmit over the air and when you receive it. You'll have to account for this, too. Tom ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] Developer Call today at 1700 UTC
I'll be starting the hangout promptly at 1700 UTC. (That's 1 PM EDT) I am 99.9% certain I will start the hangout by inviting one person, then posting a link in the #gnuradio irc channel. This worked an hour ago, so I expect things to go smoothly today. Philip ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] help on exception on using the uhd.dll i think...
(this=0xac91c8, __x=0xadb170) at /usr/include/c++/4.8/bits/stl_tree.h:1127 #22 0x7f0317590584 in std::_Rb_treeint, std::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex , std::_Select1ststd::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex , std::lessint, std::allocatorstd::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex ::_M_erase (this=0xac91c8, __x=0xac9b80) at /usr/include/c++/4.8/bits/stl_tree.h:1125 #23 0x7f031758fa95 in std::_Rb_treeint, std::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex , std::_Select1ststd::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex , std::lessint, std::allocatorstd::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex ::~_Rb_tree (this=0xac91c8, __in_chrg=optimized out) at /usr/include/c++/4.8/bits/stl_tree.h:671 #24 0x7f031758f248 in std::mapint, boost::shared_ptrpooled_resourcegr::fft::fft_complex , std::lessint, std::allocatorstd::pairint const, boost::shared_ptrpooled_resourcegr::fft::fft_complex ::~map (this=0xac91c8, __in_chrg=optimized out) at /usr/include/c++/4.8/bits/stl_map.h:96 #25 0x7f031758f277 in managed_resource_poolgr::fft::fft_complex, int::~managed_resource_pool (this=0xac91a8, __in_chrg=optimized out) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:58 #26 0x7f031758f2be in managed_resource_pool_nofactorygr::fft::fft_complex, int::~managed_resource_pool_nofactory (this=0xac91a8, __in_chrg=optimized out) at /home/kiran/awst/gnuradio/include/es/pooled_resource.h:115 #27 0x7f0317598109 in gr::wifi_detector::es_80211b_chip_and_freq_sync_c_impl::~es_80211b_chip_and_ freq_sync_c_impl (this=0xac91a0, __in_chrg=optimized out, __vtt_parm=optimized out) ---Type return to continue, or q return to quit--- at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/es_80211b_chip_and_freq_sync _c_impl.cc:73 #28 0x7f03175981c2 in gr::wifi_detector::es_80211b_chip_and_freq_sync_c_impl::~es_80211b_chip_and_ freq_sync_c_impl (this=0xac91a0, __in_chrg=optimized out, __vtt_parm=optimized out) at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/es_80211b_chip_and_freq_sync _c_impl.cc:75 #29 0x00418a04 in boost::detail::sp_counted_base::release (this=0xb04e10) at /usr/include/boost/smart_ptr/detail/sp_counted_base_gcc_x86.hpp:146 #30 0x00418a93 in boost::detail::shared_count::~shared_count (this=0x7fff820441c8, __in_chrg=optimized out) at /usr/include/boost/smart_ptr/detail/shared_count.hpp:371 #31 0x00426a74 in boost::shared_ptrgr::wifi_detector::es_80211b_chip_and_freq_sync_c::~share d_ptr (this=0x7fff820441c0, __in_chrg=optimized out) at /usr/include/boost/smart_ptr/shared_ptr.hpp:328 #32 0x00425b38 in gr::wifi_detector::qa_es_80211b_chip_and_freq_sync::t1 (this=0xac8be0) at /home/kiran/awst/pybombs/src/gr-ieee-80211b/lib/qa_es_80211b_chip_and_freq_s ync.cc:57 #33 0x0041681c in CppUnit::TestCallergr::wifi_detector::qa_es_80211b_chip_and_freq_sync::run Test (this=0xac8e50) at /usr/include/cppunit/TestCaller.h:166 -- next part -- An HTML attachment was scrubbed... URL: http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20140417/989 fc505/attachment.html -- next part -- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 2366 bytes Desc: S/MIME Cryptographic Signature URL: http://lists.gnu.org/archive/html/discuss-gnuradio/attachments/20140417/989 fc505/attachment.bin -- Message: 10 Date: Thu, 17 Apr 2014 21:50:00 +0800 (SGT) From: Tigor Christian christian.ti...@rocketmail.com To: discuss-gnuradio@gnu.org discuss-gnuradio@gnu.org Subject: [Discuss-gnuradio] Digital voice encryption block Message-ID: 1397742600.33022.yahoomail...@web192403.mail.sg3.yahoo.com Content-Type: text/plain; charset=us-ascii Hi all, I want to simulate a voice transmission system in GNURadio Companion (GRC) before I build a real one. My system configuration is as follows. TX: mic -- encoder -- encryption -- modulator -- RF Rx: speaker -- decoder -- decryption -- demodulator -- RF I have succeed in simulating the above configuration in Ubuntu 12.04 LTS machinebut without encryption/decryption blocks. I want to encrypt my digital voice using AES (128/192/256, either one) algorithm, but so far, I couldn't find suitable blocks for my purpose. I know that GNURadio will synthesize a python code when you compile your blocks configuration in GRC. On the other hand, every python dev installation in Ubuntu will also install PyCrypto lib in your machine, this library has a ready-to-use function of AES algorithm. Furthermore, I also know the concept of Out-of-Tree Module (OoTM) of GNURadio. My questions are: 1. My first
Re: [Discuss-gnuradio] How to Access Received Data for Use In Changing RX Parameters
Jonathan Fox wrote Hey List, I have two scripts I am running, the ofdm_v1_tx_freq_test.py and the RX version of it (see flow graph images and attached transmitter Python script). I am transmitting a sinusoid using OFDM modulation over the USRP, it works perfectly. I have made an alteration to the transmitter script by adding a frequency change function that goes off every 2.5 seconds. The frequency will inclemently go up 1 MHz 20 times before going back to the default. That code works; what I want to do now is to cease the sinusoid broadcast at every 2.5 seconds so I can transmit the new frequency to the receiver right before I change it. I think I can figure that part out, I may just use another vector source with the new frequency and have transmit five times. Probably use another flow graph to implement it. If there is a better way to do, I am open for ideas. Now for my question: after receiving this new frequency on the RX side, how do I get my script to read this data and use it to change frequencies? I have a feeling that this may be simple to do but I am at a loss in figuring it out. Please note, this is more of a proof of concept work, so there is a reason why I do not have identical frequency change functions in both TX and RX, the goal down the road is to get some DSA capabilities. Thanks, Jon ___ Discuss-gnuradio mailing list Discuss-gnuradio@ https://lists.gnu.org/mailman/listinfo/discuss-gnuradio ofdm_v1_tx_freq_test.py (7K) lt;http://gnuradio.4.n7.nabble.com/attachment/47642/0/ofdm_v1_tx_freq_test.pygt; ofdm_v1_rx.png (97K) lt;http://gnuradio.4.n7.nabble.com/attachment/47642/1/ofdm_v1_rx.pnggt; ofdm_v1_tx.png (77K) lt;http://gnuradio.4.n7.nabble.com/attachment/47642/2/ofdm_v1_tx.pnggt; You can use a message queue to get data in and out of the flow from your Python script. I'm sure there are better ways, but this is what I have been experimenting with recently. It's just a matter of polling the queue and clearing it when there is new data. This is a good write up: http://pwnhome.wordpress.com/2011/04/19/intro-to-gnuradio-and-the-usrp-part-4/ -- View this message in context: http://gnuradio.4.n7.nabble.com/How-to-Access-Received-Data-for-Use-In-Changing-RX-Parameters-tp47642p47655.html Sent from the GnuRadio mailing list archive at Nabble.com. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
[Discuss-gnuradio] April Developer Call Video online
Enjoy, http://youtu.be/fbcYt0UGX9k Philip ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Re: [Discuss-gnuradio] dvb-t project with two USRPN200 devices failure
Yes, it's possible. The use of the rational re-sampler is to be compatible with commercial DVB-T receivers. If you're just interested in USRP to USRP, then it's okay to use a 10 Msps sample rate. The signal will be slightly wider than a standard 8 MHz signal at 9.142857 Msps. You can modify my DVB-T Transport Stream bitrate calculator to determine the required bitrates at 10 Msps. https://github.com/drmpeg/dtv-utils/blob/master/dvbtrate.c Ron On 4/17/2014 7:07 AM, Nasi wrote: Can I trans/receive without Rational Resampler? It distorts the signal too much :( Mon, 31 Mar 2014 20:12:27 +0400 от Nasi nesaz...@mail.ru: Thanks a lot! I will try them too... Mon, 31 Mar 2014 09:08:04 -0700 (PDT) от Bogdan Diaconescu b_diacone...@yahoo.com: One thing I did once and worked are: 1. Use a file sink instead of USRP when transmitting. Then, once the file is generated send the samples from file (opened in a file source) directly to USRP. That will need a good harddrive with at least 80MB/s read speed, a SSD will work probably. 2. Do the above but write the file int RAM like dd if=yourfile.bin of=/dev/ram0 - you may need to give root access. Then open /dev/ram0 in a file source and send it to USRP. This will consume you RAM and will potentiall lock your laptop if the .bin file is bigger than RAM size. But, indeed you probably need a better computer. Bogdan On Monday, March 31, 2014 6:59 PM, Marcus Müller mar...@hostalia.de wrote: -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 I'm afraid you can't reduce needed sample rate for a fixed bandwidth. You need a stronger laptop. Often, plugging it into mains power helps. Marcus On 31.03.2014 17:52, Nasi wrote: ohhh, now I understand. It produces in the transmitter side - which probably means underflow with my laptop. Do you know how to decrease this power? Mon, 31 Mar 2014 08:44:49 -0700 (PDT) ?? Bogdan Diaconescu b_diacone...@yahoo.com: For dvbt the bandwidth is around 9.14Msps so with the rational resampler you need to set-up the USRP at 10Msps. 1Msps will not work as only a part of the spectrum will be received. Bogdan On Monday, March 31, 2014 6:36 PM, Nasi nesaz...@mail.ru wrote: Hi, Thanks! I am using collected data also as you say. I am using sampling rate of 1 Mbps instead of 10 Mbps which must be the same for static transmission. Isn't it? Mon, 31 Mar 2014 08:23:01 -0700 (PDT) ?? Bogdan Diaconescu b_diacone...@yahoo.com: Hi, not having access to my setup for now but for the beginning you could try recording the spectrum with your USRP and then use the file source to decode the signal offline. There is a script file apps/capture.sh that I usually use to capture data. You may tweak it for your needs (frequency, gain). Sometimes it was reported that on old cpus the processing power is not enough so that the result is an overflow (you directly see a long OOO message in this case). Try to see if this is the case. One way to reduce the overhead is to run the receiving flow directly from command line instead of gnuradio-companion (e.g. ./top_block out.txt) after you have generated the flowgraph. The gnuradio-companion cannot cope with big amount of data when the blocks gets out a lot of text. Bogdan On Monday, March 31, 2014 1:22 PM, Nasi nesaz...@mail.ru wrote: Hi all, I am using ubuntu 13.04, GNURADIO 3.7. I cannot transmit or receive using two (USRPN200 + XCRV2450 d.board+VERT2450 antennas) devices for DVB-T project. Here is the dvb-t project: https://github.com/BogdanDIA/gr-dvbt It will be very helpful and appreciated if you help me. If someone tested it or can do it, please let me know. As far as I know someone tested it with N210 model. I think this failure is due to high noise/interference or smt. else. However I tested it already with all possible configurations. I also attach my .grc files. ___ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio