[Discuss-gnuradio] cannot import name GNURadio when launching perf-monitorx and ctrlport-monitor

2015-07-31 Thread Jeon
I am trying to measure performance of my OOT module with performance
counter and control port.

When I execute a command line `gr-perf-monitorx` or `gr-ctrlport-monitor`,
an error below occurred:

File
/usr/local/lib/python2.7/dist-packages/gnuradio/ctrlport/GrDataPlotter.py,
line 26, in module
from gnuradio.ctrlport import GNURadio
ImportError: cannot import name GNURadio

Could anyone give me a hint for this?

For detail information, I've installed GNU Radio with `build-gnuradio`
script. The last commit of cloned git repository in my PC is `d5cea6e4(
https://gnuradio.org/redmine/projects/gnuradio/repository/revisions/d5cea6e44e29db6b62fabe2b1e5ec16e91b41e68)`
in Jun 22 2015. I can't remember exactly, but I think this commit was used
to install the GNU Radio.

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


Re: [Discuss-gnuradio] cannot import name GNURadio when launching perf-monitorx and ctrlport-monitor

2015-07-31 Thread Volker Schroer

The same error happens in the 3.7.8 release candidate.

-- Volker



I am trying to measure performance of my OOT module with performance 
counter and control port.


When I execute a command line `gr-perf-monitorx` or 
`gr-ctrlport-monitor`, an error below occurred:


File 
/usr/local/lib/python2.7/dist-packages/gnuradio/ctrlport/GrDataPlotter.py, 
line 26, in module

from gnuradio.ctrlport import GNURadio
ImportError: cannot import name GNURadio

Could anyone give me a hint for this?

For detail information, I've installed GNU Radio with `build-gnuradio` 
script. The last commit of cloned git repository in my PC is 
`d5cea6e4(https://gnuradio.org/redmine/projects/gnuradio/repository/revisions/d5cea6e44e29db6b62fabe2b1e5ec16e91b41e68)` 
https://gnuradio.org/redmine/projects/gnuradio/repository/revisions/d5cea6e44e29db6b62fabe2b1e5ec16e91b41e68%29%60 
in Jun 22 2015. I can't remember exactly, but I think this commit was 
used to install the GNU Radio.


Regards,
Jeon.


___
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


Re: [Discuss-gnuradio] Communication problems between 2 USRP's

2015-07-31 Thread Tom Rondeau
On Thu, Jul 30, 2015 at 6:30 PM, John Garrick li...@ruby-forum.com wrote:

 Hi all,
 I want to transmit the data between two USRP's and make them communicate
 with each other. But I guess the packets are not being received
 properly..
 My USRP daughterboard model is XCVR2450. When I am running
 ./benchmark_tx.py -f 2.435G, it is starting to transmit the packets but
 a small error occured given below,

 linux; GNU C++ version 4.8.4; Boost_105500;
 UHD_003.009.git-144-g407e3086

 Using Volk machine: avx_64_mmx
 -- Opening a USRP1 device...
 -- Using FPGA clock rate of 64.00MHz...

 No gain specified.
 Setting gain to 7.50 (from [-20.00, 35.00])

 UHD Warning:
 The hardware does not support the requested TX sample rate:
 Target sample rate: 0.05 MSps
 Actual sample rate: 0.25 MSps

 Symbol Rate: 25000.00
 Requested sps:   2.00
 Given sample rate:   25.00
 Actual sps for rate: 10.00

 Requested sample rate: 5.00
 Actual sample rate: 25.00

 ..U...terminate
 called after throwing an instance of 'uhd::runtime_error'
   what():  RuntimeError: usb tx2 transfer status: 1
 Aborted (core dumped).


 But towards the receiver side, I gave the command ./benchmark_rx.py -f
 2.435GG,it has shown the result given below with n_right=0.


 linux; GNU C++ version 4.8.4; Boost_105500;
 UHD_003.009.git-144-g407e3086

 Using Volk machine: avx_64_mmx
 -- Opening a USRP1 device...
 -- Using FPGA clock rate of 64.00MHz...

 No gain specified.
 Setting gain to 56.25 (from [0.00, 112.50])

 UHD Warning:
 The hardware does not support the requested RX sample rate:
 Target sample rate: 0.05 MSps
 Actual sample rate: 0.25 MSps

 Symbol Rate: 25000.00
 Requested sps:   2.00
 Given sample rate:   25.00
 Actual sps for rate: 10.00

 Requested sample rate: 5.00
 Actual sample rate: 25.00
 ok = False  pktno = 53034  n_rcvd =1  n_right =0
 ok = False  pktno =   24  n_rcvd =2  n_right =0
 ok = False  pktno =   35  n_rcvd =3  n_right =0
 ok = False  pktno =   44  n_rcvd =4  n_right =0
 ok = False  pktno =   46  n_rcvd =5  n_right =0
 ok = False  pktno =   46  n_rcvd =6  n_right =0
 ok = False  pktno = 3872  n_rcvd =7  n_right =0
 ok = False  pktno = 12304  n_rcvd =8  n_right =0
 ok = False  pktno =   49  n_rcvd =9  n_right =0
 ok = False  pktno =   50  n_rcvd =   10  n_right =0
 ok = False  pktno =   54  n_rcvd =   11  n_right =0
 ok = False  pktno =  200  n_rcvd =   12  n_right =0
 ok = False  pktno =   63  n_rcvd =   13  n_right =0

 My USRP can access in the range of 2.4GHZ to 5GHZ. Please advice as to
 what I can do. Thanks

 Regards,
 John


John,

There's lots of things that can go wrong here. You didn't set the gains or
transmit amplitude. Do you know if you have a significant frequency offset
between your two radios? You might need to adjust that.

The fact that you are getting ok = False means that the receiver saw a
packet, but there were too many errors and the CRC check failed. Note there
is no FEC applied to the benchmark scripts. So this could be due to low
SNR, a bad channel, or, frankly, many other possibilities.

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


Re: [Discuss-gnuradio] file source with gr-ieee802.11 tx

2015-07-31 Thread Jason Matusiak
 The wifi_tx example GRC comes with a Socket PDU source.

 Just send UDP packets to the port specified containing a IEEE 802.11 packet's 
 amount of data per UDP packet; 
 netcat/nc/ncat is sadly no good for this, because it doesn't allow 
 specification of packet sizes.

 You can also use a file source, stream to tagged stream, tagged stream to PDU 
 flow graph.

 To be honest, GNU Radio is kind of lacking a simple take n items from the 
 input stream and generate a PMT pair 
 (n, items), send that over your message port block, which would take roughly 
 10 lines of python to write (and 
 not much more C++) -- so you might as well do that. 

This is something I have struggled with as well.  A lot of examples I've
seen are for streaming data (which is admittedly probably want most
people are wanting).  

I have been more interested in sending a packet (or a series of packets)
over the air (the end goal being letting someone connect to my UDP
source block and handing me their data they want to send).  I have
played with the WiFi block a bit recently and unfortunately was always
using netcat  

1 - Are you saying that the data's packet being handed to the socket PDU
has to be exactly as long as the pdu_length?  That is something I think
I must have glossed over.

2 - I don't believe there is a way to dump just the payload of the
802.11 packet, right?  Basically, if I sent Hello World to the Socket
PDU (which means my pdu_length would need to be set to 11, right?), is
there a way to have those 11 characters be passed out a UDP sink on the
receiver end?  Right now the only thing I can see to do is to utilize
the Wireshark Connector and dump the pcap output to file, then take info
and extract the payload from there in post-processing.  Is that right?

Thanks.

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


Re: [Discuss-gnuradio] Error during Install my_qpsk_demod in grc

2015-07-31 Thread Tom Rondeau
On Fri, Jul 31, 2015 at 5:33 AM, Surjeet Rawat li...@ruby-forum.com wrote:

 please give some suggestion related to this error

 Attachments:

 http://www.ruby-forum.com/attachment/10928/Screenshot_from_2015-07-31_13_16_57.png


 --
 Posted via http://www.ruby-forum.com/.



Can you explain how you got there?

Also, please just paste the text instead of sending a png. It's likely to
live longer in the archives this way.

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


Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Tom Rondeau
On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edu wrote:

 I’m trying to make an out of tree module based on blocks::file_sink that
 has some additional functionality I need. Right now, I’ve built it OOT, but
 an having trouble getting it to work. The code (file_sink_impl.cc,
 file_sink_impl.h, and file_sink.h à actual names are different so there
 are no conflicts) are all identical to the ones in tree. I used gr-modtool
 to create the OOT modules with this block and it makes and installs fine.
 However, when I try to use it, I get the following error:



 AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’


 What I think is happening here is that the OOT version of my code isn’t
 linking to the file_sink_base in gnuradio-blocks to inherit this function.
 Browsing previous mail lists, Marcus Muller noted in the thread ‘
 [Discuss-gnuradio] Out of Tree linker error... libgnuradio-MYMOD.so:‘ that
 the problem might be in my cmake files. He referenced gr-specest as an
 example which uses in tree modules. I compared the cmakelists.txt in
 gr-specest to the OOT module directory and in the OOT/lib directory and
 added the BLOCKS references in the appropriate places. However, this still
 hasn’t solved the problems. Are there any other steps necessary to make
 and install an OOT modules with in tree dependencies?   All of this is
 running on Ubuntu 14.04LTS with gnuradio 3.7.7.1

The first thing that comes to mind when we see this is that you haven't
added all of the public functions of your block to the public header file
(file_sink.h), but you say that's identical. Still probably worth checking
on that file to make sure.

Have you looked at your swig directory's .i file? That needs to properly
reference your block to export it into Python. It seems like this is ok
since you're getting as far as to see the error on the method, not the
block. Again, though, something to check.

So this is just you replicating the file sink blocks completely? You aren't
trying to inherit from them or use them internally, are you? That might
cause other issues.

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


Re: [Discuss-gnuradio] file source with gr-ieee802.11 tx

2015-07-31 Thread Bastian Bloessl
Hi,

 On 31 Jul 2015, at 14:10, Jason Matusiak ja...@gardettoengineering.com 
 wrote:
 
 The wifi_tx example GRC comes with a Socket PDU source.
 
 Just send UDP packets to the port specified containing a IEEE 802.11 
 packet's amount of data per UDP packet; 
 netcat/nc/ncat is sadly no good for this, because it doesn't allow 
 specification of packet sizes.
 
 You can also use a file source, stream to tagged stream, tagged stream to 
 PDU flow graph.
 
 To be honest, GNU Radio is kind of lacking a simple take n items from the 
 input stream and generate a PMT pair 
 (n, items), send that over your message port block, which would take 
 roughly 10 lines of python to write (and 
 not much more C++) -- so you might as well do that. 
 
 This is something I have struggled with as well.  A lot of examples I've
 seen are for streaming data (which is admittedly probably want most
 people are wanting).  
 
 I have been more interested in sending a packet (or a series of packets)
 over the air (the end goal being letting someone connect to my UDP
 source block and handing me their data they want to send).  I have
 played with the WiFi block a bit recently and unfortunately was always
 using netcat  
 
 1 - Are you saying that the data's packet being handed to the socket PDU
 has to be exactly as long as the pdu_length?  That is something I think
 I must have glossed over.

You can pass data of any size of up to 1500 bytes (minus a bit for headers).

 
 2 - I don't believe there is a way to dump just the payload of the
 802.11 packet, right?  Basically, if I sent Hello World to the Socket
 PDU (which means my pdu_length would need to be set to 11, right?), is
 there a way to have those 11 characters be passed out a UDP sink on the
 receiver end?  Right now the only thing I can see to do is to utilize
 the Wireshark Connector and dump the pcap output to file, then take info
 and extract the payload from there in post-processing.  Is that right?

The transceiver wraps your payload in some headers that add stuff like MAC 
address, frame type, and CRC. These are the minimum fields that are required so 
that a WiFi card actually accepts the frame.

There is currently no option to dump raw bytes, but its a trivial modification 
of the Wireshark block (dump without a PCAP header).
If you want to printed bytes as hex-values on the console that should work with 
the parse block.
Or you could use a Debug Message block and print the PDUs coming out of the PHY 
/ MAC, depending on what you want to see.

Best,
Bastian



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


Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Tom Rondeau
On Fri, Jul 31, 2015 at 10:50 AM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edu wrote:

 So the function (set_unbuffered) that’s coming up as not being found is in
 file_sink_base.h which is included in the file_sink.h so I’m pretty sure
 I’m ok here.



 The swig file just includes file_sink.h….I tried adding file_sink_base.h
 to this as well, but it didn’t change anything.



 For the time being, I’m replicating the file_sink block exactly (except
 the name) to try and get it to compile OOT. However, since file_sink
 depends on file_sink_base, which I’m not copying, I think there are
 problems linking to it.



 Would it be better to also copy file_sink_base to my OOT module?



You should be able to use file_sink_base from libgnuradio-blocks.so, so no,
keep that one in tree so you're not carrying around extra stuff. First, do
you have BLOCKS as one of the GNU Radio required components in your
CMakeLists.txt file?

Also, and I suspect this might be the real problem, do you #define
BLOCKS_API in you .i file? There should be a #define for your module's
name already; just add this line here along with that one.

Tom






 *From:* trond...@trondeau.com [mailto:trond...@trondeau.com] *On Behalf
 Of *Tom Rondeau
 *Sent:* Friday, July 31, 2015 10:27 AM
 *To:* Valenta, Chris R.
 *Cc:* discuss-gnuradio@gnu.org
 *Subject:* Re: [Discuss-gnuradio] Building an OOT modules with an In Tree
 Dependency



 On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
 chris.vale...@gtri.gatech.edu wrote:

 I’m trying to make an out of tree module based on blocks::file_sink that
 has some additional functionality I need. Right now, I’ve built it OOT, but
 an having trouble getting it to work. The code (file_sink_impl.cc,
 file_sink_impl.h, and file_sink.h à actual names are different so there
 are no conflicts) are all identical to the ones in tree. I used gr-modtool
 to create the OOT modules with this block and it makes and installs fine.
 However, when I try to use it, I get the following error:



 AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’


 What I think is happening here is that the OOT version of my code isn’t
 linking to the file_sink_base in gnuradio-blocks to inherit this function.
 Browsing previous mail lists, Marcus Muller noted in the thread ‘
 [Discuss-gnuradio] Out of Tree linker error... libgnuradio-MYMOD.so:‘ that
 the problem might be in my cmake files. He referenced gr-specest as an
 example which uses in tree modules. I compared the cmakelists.txt in
 gr-specest to the OOT module directory and in the OOT/lib directory and
 added the BLOCKS references in the appropriate places. However, this still
 hasn’t solved the problems. Are there any other steps necessary to make
 and install an OOT modules with in tree dependencies?   All of this is
 running on Ubuntu 14.04LTS with gnuradio 3.7.7.1

 The first thing that comes to mind when we see this is that you haven't
 added all of the public functions of your block to the public header file
 (file_sink.h), but you say that's identical. Still probably worth checking
 on that file to make sure.



 Have you looked at your swig directory's .i file? That needs to properly
 reference your block to export it into Python. It seems like this is ok
 since you're getting as far as to see the error on the method, not the
 block. Again, though, something to check.



 So this is just you replicating the file sink blocks completely? You
 aren't trying to inherit from them or use them internally, are you? That
 might cause other issues.



 Tom



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


Re: [Discuss-gnuradio] About physcially acceptable, applicable signal input range for GNU Radio.

2015-07-31 Thread Marcus D. Leech

On 07/31/2015 11:29 AM, Jeon wrote:

Dear all of you helping me, Marcus, Tom and Marcus

Thanks for all of your answers.

I've successfully receive frames and decode it.
There are some physical and practical issues and glitches that I 
haven't thought about when writing source codes. But it's not what 
should be handled in this thread.


I will let you know when I finish implementing GNU Radio OOT module 
and analog circuit front end, if there are someone interested in. :)


One small question is, is there no way to guess a value of voltage, 
given that ADC sampled value?
I think it's quite impossible to guess both values of DC component and 
AC component.
It's because time sink figure in the original post,there's no DC 
component, but I fed a DC biased signal into the LFRX.

At least for AC component, however, I think it is possible to guess...
If we know ADC resolution, impedance (of course 50 ohms) and so...

It's just curiosity. I'm not going to use such things right now.
So if it is hard to tell in short time, YES or NO is sufficient. or 
you can just ignore this question.


Thanks again.

Regards,
Jeon.
You either calibrate, or you have a very precise model of effective 
gains and losses throughout the entire signal-processing chain from 
antenna to
  flow-graph, for every possible hardware combination, including 
variable parameters like frequency, gain settings, bandwidth, etc.




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


Re: [Discuss-gnuradio] file source with gr-ieee802.11 tx

2015-07-31 Thread Jason Matusiak
 The transceiver wraps your payload in some headers that add stuff like MAC 
 address, frame type, and CRC. 
 These are the minimum fields that are required so that a WiFi card actually 
 accepts the frame.

Makes sense.  I knew about the headers and CRC, but I wasn't even
thinking about it being used with an actual WiFi device (as opposed to
two USRPs).

 There is currently no option to dump raw bytes, but its a trivial 
 modification of the Wireshark block (dump 
 without a PCAP header).

This sounds reasonable to me, but so far I have been unsuccesful.  I am
attempting to edit wireshark_connector_impl.cc, but none of my mods have
worked so far.  I am not looking for you to do the work, but I wanted to
make sure I am looking at the right file.  One of my concerns with it is
that my C++ is really rusty and I haven't played with the low-level GR
stuff before, so I am muddling through what is going on in that file.  

Near the end of the file is the following:
int to_copy = std::min((d_msg_len - d_msg_offset), noutput);
memcpy(out, d_msg + d_msg_offset, to_copy);
I believe that that second line is where the information is put on the
output buffer.  So for a test, I changed the memcpy to be:
memcpy(out, d_msg + d_msg_offset + 10, to_copy - 10);
to basically cut off the first 10B (just a quick and dirty test).

I then run:
sudo make uninstall  make clean  make  sudo make install 
sudo ldconfig
from the gr-foo/build directory.

It builds fine, but when I run my GRC script, the output to a file sink
(for simplicity I am dumping to a file instead of UDP for now), doesn't
change its length.  I did reload blocks in GRC too.

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


Re: [Discuss-gnuradio] Issues with OOT

2015-07-31 Thread Martin Braun
Marius,

hard to say from this info. However, did you go through
http://gnuradio.org/redmine/projects/gnuradio/wiki/Guided_Tutorials to
learn how to write blocks? Those tutorials usually explain the most
common pitfalls.

Cheers,
M

On 31.07.2015 08:04, Marius Cachelin wrote:
 Hi everyone,
 
 I am writing here because I have some issues using an OOT module.
 Actually, I have gnuradio installed on my desktop.
 
 I want to install gnuradio on other laptop so that I can use 2 USRP.
 
 
 So, I followed the steps described here
 *http://gnuradio.org/redmine/projects/gnuradio/wiki/InstallingGRFromSource*;,
 where I used the *build-gnuradio* script. (I have already used this
 script to install gnuradio on my desktop).
 
 - I created a new folder, named gnuradio in /opt.
 - I then run  *cd /opt/gnuradio *and*wget
 http://www.sbrac.org/files/build-gnuradio  chmod a+x ./build-gnuradio
  ./build-gnuradio *. After a while, all the process is done.
 - I followed all steps presented in
 *http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModulesConfig*,
 to create a new OOT module.
 
 But, In GRC, when I want to use my new OOT module, I get this error :
 
 *-- Traceback (most recent call last):
   File /home/sagem/Bureau/top_block.py, line 140, in module
 tb = top_block()
   File /home/sagem/Bureau/top_block.py, line 65, in __init__
 self.test_block_test_0 = test.block_test()
 AttributeError: 'module' object has no attribute 'block_test'
 
 *
 My block, named block_test, do nothing. It just copy all inputs items
 into output buffer.
 
 
 I read some discusses about this error, but I can't understand why I get it.
 I checked all my *CMakelist.txt*, and all is good.
 I run *make test*, and all test passed.
  
 If someone could help me to figure this out, It would be very helpfull.
 
 Marius
 
 *CACHELIN Marius*
 /Ingénieur Systèmes, Réseaux et Télécommunications/
 marius.cache...@gmail.com mailto:marius.cache...@gmail.com
 
 
 ___
 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


Re: [Discuss-gnuradio] file source with gr-ieee802.11 tx

2015-07-31 Thread Jason Matusiak
 It builds fine, but when I run my GRC script, the output to a file sink
 (for simplicity I am dumping to a file instead of UDP for now), doesn't
 change its length. I did reload blocks in GRC too.

I need to do more testing, but I think I have my bug.  I needed to
decrement the return variable to_copy.

I'll report in if I get something more complete working.

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


Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Valenta, Chris R.
Yes, blocks is included in the cmakelists.txt as set(GR_REQUIRED_COMPONENTS 
RUNTIME BLOCKS) as well as a link directory GNURADIO_BLOCKS_LIBRARY_DIRS. Its 
also in the /lib cmakelists.txt as a target_link_library 
GNURADIO_BLOCKS_LIBRARIES.

BLOCKS_API was not in the swig .i file. I added this, ran make clean, make, and 
installed and still get the same error.

From: trond...@trondeau.com [mailto:trond...@trondeau.com] On Behalf Of Tom 
Rondeau
Sent: Friday, July 31, 2015 11:02 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Fri, Jul 31, 2015 at 10:50 AM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
So the function (set_unbuffered) that’s coming up as not being found is in 
file_sink_base.h which is included in the file_sink.h so I’m pretty sure I’m ok 
here.

The swig file just includes file_sink.h….I tried adding file_sink_base.h to 
this as well, but it didn’t change anything.

For the time being, I’m replicating the file_sink block exactly (except the 
name) to try and get it to compile OOT. However, since file_sink depends on 
file_sink_base, which I’m not copying, I think there are problems linking to it.

Would it be better to also copy file_sink_base to my OOT module?


You should be able to use file_sink_base from libgnuradio-blocks.so, so no, 
keep that one in tree so you're not carrying around extra stuff. First, do you 
have BLOCKS as one of the GNU Radio required components in your CMakeLists.txt 
file?

Also, and I suspect this might be the real problem, do you #define BLOCKS_API 
in you .i file? There should be a #define for your module's name already; just 
add this line here along with that one.

Tom




From: trond...@trondeau.commailto:trond...@trondeau.com 
[mailto:trond...@trondeau.commailto:trond...@trondeau.com] On Behalf Of Tom 
Rondeau
Sent: Friday, July 31, 2015 10:27 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
I’m trying to make an out of tree module based on blocks::file_sink that has 
some additional functionality I need. Right now, I’ve built it OOT, but an 
having trouble getting it to work. The code (file_sink_impl.cc, 
file_sink_impl.h, and file_sink.h -- actual names are different so there are 
no conflicts) are all identical to the ones in tree. I used gr-modtool to 
create the OOT modules with this block and it makes and installs fine. However, 
when I try to use it, I get the following error:

AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’

What I think is happening here is that the OOT version of my code isn’t linking 
to the file_sink_base in gnuradio-blocks to inherit this function. Browsing 
previous mail lists, Marcus Muller noted in the thread ‘ [Discuss-gnuradio] Out 
of Tree linker error... libgnuradio-MYMOD.so:‘ that the problem might be in my 
cmake files. He referenced gr-specest as an example which uses in tree modules. 
I compared the cmakelists.txt in gr-specest to the OOT module directory and in 
the OOT/lib directory and added the BLOCKS references in the appropriate 
places. However, this still hasn’t solved the problems.
Are there any other steps necessary to make and install an OOT modules with in 
tree dependencies?

All of this is running on Ubuntu 14.04LTS with gnuradio 3.7.7.1
The first thing that comes to mind when we see this is that you haven't added 
all of the public functions of your block to the public header file 
(file_sink.h), but you say that's identical. Still probably worth checking on 
that file to make sure.

Have you looked at your swig directory's .i file? That needs to properly 
reference your block to export it into Python. It seems like this is ok since 
you're getting as far as to see the error on the method, not the block. Again, 
though, something to check.

So this is just you replicating the file sink blocks completely? You aren't 
trying to inherit from them or use them internally, are you? That might cause 
other issues.

Tom


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


Re: [Discuss-gnuradio] About physcially acceptable, applicable signal input range for GNU Radio.

2015-07-31 Thread Jeon
Dear all of you helping me, Marcus, Tom and Marcus

Thanks for all of your answers.

I've successfully receive frames and decode it.
There are some physical and practical issues and glitches that I haven't
thought about when writing source codes. But it's not what should be
handled in this thread.

I will let you know when I finish implementing GNU Radio OOT module and
analog circuit front end, if there are someone interested in. :)

One small question is, is there no way to guess a value of voltage, given
that ADC sampled value?
I think it's quite impossible to guess both values of DC component and AC
component.
It's because time sink figure in the original post,there's no DC component,
but I fed a DC biased signal into the LFRX.
At least for AC component, however, I think it is possible to guess...
If we know ADC resolution, impedance (of course 50 ohms) and so...

It's just curiosity. I'm not going to use such things right now.
So if it is hard to tell in short time, YES or NO is sufficient. or you can
just ignore this question.

Thanks again.

Regards,
Jeon.

2015-07-30 23:40 GMT+09:00 mle...@ripnet.com:

 Jeon:

 Gnu Radio, per se, knows nothing of voltage.  It just sees digital samples
 as delivered by the hardware.  What those samples mean in terms of voltage
 amplitude as delivered to the antenna port is completely opaque to Gnu
 Radio.

 The LFRX will easily tolerate an input signal with a voltage swing up to
 +/- 1V.  You would have to see what amplitude, in terms of floating-point,
 is produced in your flow-graph.




 On 2015-07-30 01:37, Jeon wrote:

 I am building a communication system which uses light. For the system,
 I've buiult a custom analog circuit and connected it to LFRX with
 SMA-BNC-Alligator clip.

 A simple dry run gives the following:



 As you can see, data is transmitted with on off keying.
 (Please ignore some ripples and fluctuation, it's due to 60 Hz fluorscent
 light interference. I'll fix it later.)

 I wonder that such input range (+- 50 mV) is quite acceptable for GNU
 Radio to manipulate.

 Since it's my first time to physically implement a communication system, I
 only have mathematical and theoretical knowledge, but have little
 experience and sense about dBm, rx sensitivity and so.

 But as I can see the waveform not so bad, I think I can manipulate it by
 equalizing or something...

 PS: In addition, that 60 Hz interference, would it be better if I filter
 out that at the analog circuit with high pass filter? Or is it just ok to
 use high pass filter block in GNU Radio. I think the former is better to
 reduce the computational cost of GNU Radio. And it is more proper to filter
 out before it passes through the ADC...

 Regards,
 Jeon.

 ___
 Discuss-gnuradio mailing 
 listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/mailman/listinfo/discuss-gnuradio


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


[Discuss-gnuradio] Issues with OOT

2015-07-31 Thread Marius Cachelin
Hi everyone,

I am writing here because I have some issues using an OOT module. Actually,
I have gnuradio installed on my desktop.

I want to install gnuradio on other laptop so that I can use 2 USRP.


So, I followed the steps described here
*http://gnuradio.org/redmine/projects/gnuradio/wiki/InstallingGRFromSource
http://gnuradio.org/redmine/projects/gnuradio/wiki/InstallingGRFromSource*,
where I used the *build-gnuradio* script. (I have already used this script
to install gnuradio on my desktop).

- I created a new folder, named gnuradio in /opt.
- I then run  *cd /opt/gnuradio *and* wget
http://www.sbrac.org/files/build-gnuradio
http://www.sbrac.org/files/build-gnuradio  chmod a+x ./build-gnuradio
 ./build-gnuradio *. After a while, all the process is done.
- I followed all steps presented in
*http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModulesConfig
http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModulesConfig*,
to create a new OOT module.

But, In GRC, when I want to use my new OOT module, I get this error :








*-- Traceback (most recent call last):  File
/home/sagem/Bureau/top_block.py, line 140, in moduletb =
top_block()  File /home/sagem/Bureau/top_block.py, line 65, in
__init__self.test_block_test_0 = test.block_test()AttributeError:
'module' object has no attribute 'block_test'*
My block, named block_test, do nothing. It just copy all inputs items into
output buffer.


I read some discusses about this error, but I can't understand why I get it.
I checked all my *CMakelist.txt*, and all is good.
I run *make test*, and all test passed.

If someone could help me to figure this out, It would be very helpfull.

Marius

*CACHELIN Marius*
*Ingénieur Systèmes, Réseaux et Télécommunications*
marius.cache...@gmail.com
___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


Re: [Discuss-gnuradio] SOCIS project update 9

2015-07-31 Thread Martin Braun
Johannes,

you forgot to mention you will presenting your stuff at GRCon in
Washington DC in a few weeks :)

Cheers,
Martin

On 31.07.2015 02:50, Johannes Demel wrote:
 Hey community!
 
 Here we go again. Another project update.
 I'm working with VOLK and SIMD for two weeks now. I could fix some
 hiccups with last weeks pack and unpack kernels. They run just fine
 during test now.
 Also, I added a 'volk_8u_x3_encodepolar_8u_x2' kernel. It operates on
 the the assumption that there is one active bit in a byte and it is
 located in the LSB. A quick performance test with a 2^32 samples head
 block after the encoder shows that generic crunches ~160MSps. So far I
 had an encoder which operated on packed bytes and did ~300MSps. An
 unpack block was added to the flowgraph with the 'extended_encoder' in
 use. The vector optimized version does ~570MSps. So it is ~3.5x as fast
 as the generic version. Some more optimization might yield even better
 results.
 At first glance it is weird that the output signature of the encoder is
 '8u_x2'. The kernel internally needs a temporary buffer which has the
 same size as the output buffer. Instead of malloc'ing and free'ing it on
 every call, it can be created once and be used all the time.
 During the week I was struggling with VOLK tests. Finally I solved those
 issues. But I'd like to refer to the mail I sent out the other day.
 SIMD code tends to have quite a few lines of code. In order to make it
 easier to read and understand, it would be great if it was possible to
 implement multiple functions within one '#ifdef LV_HAVE_ARCH ... #endif'
 paragraph. But so far the compiler refuses to compile if I did this. It
 is possible to add functions in the general section but that's only
 appropriate for a generic kernel or common functions.
 All the intrinsics I used so far are available on SSSE3. Although, I
 created aligned and unaligned versions of those kernels only store[u]
 and load[u] might make a difference here. My benchmarks don't show any
 significant difference. All benchmarks are done on a Sandy Bridge i7.
 
 I suspect the encoder was easier to optimize than the decoder will be.
 So for the upcoming week and beyond I will focus on creating kernels for
 polar decoding.
 
 More info and current project progress can be found in [1], [2] and [3].
 
 Cheers
 Johannes
 
 [1] https://github.com/jdemel/gnuradio
 [2] https://github.com/jdemel/socis-proposal
 [3] https://github.com/jdemel/volk
 
 ___
 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


Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Valenta, Chris R.
So the function (set_unbuffered) that’s coming up as not being found is in 
file_sink_base.h which is included in the file_sink.h so I’m pretty sure I’m ok 
here.

The swig file just includes file_sink.h….I tried adding file_sink_base.h to 
this as well, but it didn’t change anything.

For the time being, I’m replicating the file_sink block exactly (except the 
name) to try and get it to compile OOT. However, since file_sink depends on 
file_sink_base, which I’m not copying, I think there are problems linking to it.

Would it be better to also copy file_sink_base to my OOT module?



From: trond...@trondeau.com [mailto:trond...@trondeau.com] On Behalf Of Tom 
Rondeau
Sent: Friday, July 31, 2015 10:27 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
I’m trying to make an out of tree module based on blocks::file_sink that has 
some additional functionality I need. Right now, I’ve built it OOT, but an 
having trouble getting it to work. The code (file_sink_impl.cc, 
file_sink_impl.h, and file_sink.h -- actual names are different so there are 
no conflicts) are all identical to the ones in tree. I used gr-modtool to 
create the OOT modules with this block and it makes and installs fine. However, 
when I try to use it, I get the following error:

AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’

What I think is happening here is that the OOT version of my code isn’t linking 
to the file_sink_base in gnuradio-blocks to inherit this function. Browsing 
previous mail lists, Marcus Muller noted in the thread ‘ [Discuss-gnuradio] Out 
of Tree linker error... libgnuradio-MYMOD.so:‘ that the problem might be in my 
cmake files. He referenced gr-specest as an example which uses in tree modules. 
I compared the cmakelists.txt in gr-specest to the OOT module directory and in 
the OOT/lib directory and added the BLOCKS references in the appropriate 
places. However, this still hasn’t solved the problems.
Are there any other steps necessary to make and install an OOT modules with in 
tree dependencies?

All of this is running on Ubuntu 14.04LTS with gnuradio 3.7.7.1
The first thing that comes to mind when we see this is that you haven't added 
all of the public functions of your block to the public header file 
(file_sink.h), but you say that's identical. Still probably worth checking on 
that file to make sure.

Have you looked at your swig directory's .i file? That needs to properly 
reference your block to export it into Python. It seems like this is ok since 
you're getting as far as to see the error on the method, not the block. Again, 
though, something to check.

So this is just you replicating the file sink blocks completely? You aren't 
trying to inherit from them or use them internally, are you? That might cause 
other issues.

Tom

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


Re: [Discuss-gnuradio] Clock Recovery MM documentation

2015-07-31 Thread Marcus Müller
Hi Tom,

why do/I/ have to advertise the PFB approach? Arguing against Mueller 
Müller feels strange. Anyway:

Mueller  Müller in the classical, real valued approach [1, eq (49), p.
524] in its core is
eqn. (49) page 524

with $z_k$ being the timing estimate ,$x_k$ being the input samples, and
$a_k$ the decisions (in our case, -1/+1 [2], so $E\{a_k^2\}\equiv 1$).
Assume timing is correct, ie. $z_{k-1} = 0$, but we have fading so that
$|x_k| = \epsilon |x_{k-1}|,\quad 0\epsilon \ll 1$;
then regardless of $a_{k-1}$, the term $|x_k a_{k-1}| \ll|x_{k-1}a_k|$,
and hence
$z_k \approx -\frac12 {x_{k-1}a_k}$

Now, $a_k$ is exactly the decision we don't want to put much trust in,
because it's a symbol decision with especially bad $\frac{E_s}{N_0}$.
Effectively, you get the bit error probability increase as a factor to
your timing error probability density, as if things weren't bad enough!

PFB is cooler because

 1. PFB!
 2. the derivate is a linear operation, so amplitude changes in the
input signal at least have the same effect on the error correction
magnitude.

Cheers,
Marcus

[1] http://2n3904.net/library/MM_Clock_Recovery.pdf
[2]
https://github.com/gnuradio/gnuradio/blob/master/gr-digital/lib/clock_recovery_mm_ff_impl.cc#L83
On 31.07.2015 01:06, Tom Rondeau wrote:
 On Thu, Jul 30, 2015 at 3:03 PM, Iluta V iluta2...@gmail.com
 mailto:iluta2...@gmail.com wrote:

 Hi, Tom,

 Could you be more specific where exactly it is not the right
 algorithm? We'd appreciate that and would correct that in own
 work as well, if Security Research Assessment made a mistake here.

 I will be looking forward to your response,

 Iluta



 Iluta,

 I shouldn't be so hard on the MM block. In most situations, it's
 tended to work fine, but it's suboptimal. It's based on hardware
 techniques of clock recovery that approximate a derivative. The PFB
 algorithm actually calculates the derivative to the numerical
 approximation required by setting the number of filterbank arms. So
 the results are much better. You also get to apply your own filter to
 this block so you don't have to apply a separate matched filter.

 Also, and I can't find any papers on this, but fred harris tells me
 that the MM algorithm behaves particularly poorly in fading environments.

 Tom


  

 On Thu, Jul 30, 2015 at 9:55 PM, Tom Rondeau t...@trondeau.com
 mailto:t...@trondeau.com wrote:

 On Thu, Jul 30, 2015 at 2:38 PM, Iluta V iluta2...@gmail.com
 mailto:iluta2...@gmail.com wrote:

 Research paper CONVERTING RADIO SIGNALS TO DATA PACKETS
 (Examination of Using GNU Radio Companion for Security
 Research and Assessment) deals with Clock Recovery MM, I
 attached the paper, have a look at:

 6.Section 6.Counting the Bits
 7.Analyzing Demodulated Data

 Both deal with Clock Recovery MM usage and has flowgraphs.

 Best regards,

 Iluta



 That's great, and I'm glad they got it to work for their
 application. Looks like they provide a good explanation of its
 use, too. Still, it's not the right algorithm.


  

 Tom


  

 On Thu, Jul 30, 2015 at 9:23 PM, Tom Rondeau
 t...@trondeau.com mailto:t...@trondeau.com wrote:

 Another point to keep in mind is that the MM block
 isn't great in fading environments. It's really
 suboptimal in general. Look at the pfb_clock_recovery
 block, instead.

 Tom


 On Thu, Jul 30, 2015 at 2:18 PM, Daniel Camara
 danielcam...@gmail.com
 mailto:danielcam...@gmail.com wrote:

 Hi Klauss,

 You could also take a look at
 
 https://www.tablix.org/~avian/blog/archives/2015/03/notes_on_m_m_clock_recovery/
 
 https://www.tablix.org/%7Eavian/blog/archives/2015/03/notes_on_m_m_clock_recovery/,
 it helped me quite a bit!

  Best regards...

Daniel

 On Thu, Jul 30, 2015 at 7:17 PM, Martin Braun
 martin.br...@ettus.com
 mailto:martin.br...@ettus.com wrote:

 Klaus,

 the manual page for this block has a paper
 reference in it:
 
 http://gnuradio.org/doc/doxygen/classgr_1_1digital_1_1clock__recovery__mm__ff.html#details

 M

 On 30.07.2015 10:16, Klauss Wolfeinstein wrote:
  Hello,
 
  I would like to find a proper documentation
 on MM algorithm block (paper
  for example). Any ideas ?
 
   

Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Tom Rondeau
On Fri, Jul 31, 2015 at 1:52 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edu wrote:

 Ah, so I figured it out. Not only did I need to add #define BLOCKS_API to
 my swig .i file, but I also had to add %include
 “gnuradio/blocks/file_sink_base.h” as well.


Ah, of course! Good catch.

We should have this documented somewhere -- how to use GNU Radio classes
and blocks in OOT projects.

Tom






 *From:* Valenta, Chris R.
 *Sent:* Friday, July 31, 2015 11:30 AM
 *To:* 'Tom Rondeau'
 *Cc:* discuss-gnuradio@gnu.org
 *Subject:* RE: [Discuss-gnuradio] Building an OOT modules with an In Tree
 Dependency



 Yes, blocks is included in the cmakelists.txt as
 set(GR_REQUIRED_COMPONENTS RUNTIME BLOCKS) as well as a link directory
 GNURADIO_BLOCKS_LIBRARY_DIRS. Its also in the /lib cmakelists.txt as a
 target_link_library GNURADIO_BLOCKS_LIBRARIES.



 BLOCKS_API was not in the swig .i file. I added this, ran make clean,
 make, and installed and still get the same error.



 *From:* trond...@trondeau.com [mailto:trond...@trondeau.com
 trond...@trondeau.com] *On Behalf Of *Tom Rondeau
 *Sent:* Friday, July 31, 2015 11:02 AM

 *To:* Valenta, Chris R.
 *Cc:* discuss-gnuradio@gnu.org
 *Subject:* Re: [Discuss-gnuradio] Building an OOT modules with an In Tree
 Dependency



 On Fri, Jul 31, 2015 at 10:50 AM, Valenta, Chris R. 
 chris.vale...@gtri.gatech.edu wrote:

 So the function (set_unbuffered) that’s coming up as not being found is in
 file_sink_base.h which is included in the file_sink.h so I’m pretty sure
 I’m ok here.



 The swig file just includes file_sink.h….I tried adding file_sink_base.h
 to this as well, but it didn’t change anything.



 For the time being, I’m replicating the file_sink block exactly (except
 the name) to try and get it to compile OOT. However, since file_sink
 depends on file_sink_base, which I’m not copying, I think there are
 problems linking to it.



 Would it be better to also copy file_sink_base to my OOT module?





 You should be able to use file_sink_base from libgnuradio-blocks.so, so
 no, keep that one in tree so you're not carrying around extra stuff. First,
 do you have BLOCKS as one of the GNU Radio required components in your
 CMakeLists.txt file?



 Also, and I suspect this might be the real problem, do you #define
 BLOCKS_API in you .i file? There should be a #define for your module's
 name already; just add this line here along with that one.



 Tom









 *From:* trond...@trondeau.com [mailto:trond...@trondeau.com] *On Behalf
 Of *Tom Rondeau
 *Sent:* Friday, July 31, 2015 10:27 AM
 *To:* Valenta, Chris R.
 *Cc:* discuss-gnuradio@gnu.org
 *Subject:* Re: [Discuss-gnuradio] Building an OOT modules with an In Tree
 Dependency



 On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
 chris.vale...@gtri.gatech.edu wrote:

 I’m trying to make an out of tree module based on blocks::file_sink that
 has some additional functionality I need. Right now, I’ve built it OOT, but
 an having trouble getting it to work. The code (file_sink_impl.cc,
 file_sink_impl.h, and file_sink.h à actual names are different so there
 are no conflicts) are all identical to the ones in tree. I used gr-modtool
 to create the OOT modules with this block and it makes and installs fine.
 However, when I try to use it, I get the following error:



 AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’


 What I think is happening here is that the OOT version of my code isn’t
 linking to the file_sink_base in gnuradio-blocks to inherit this function.
 Browsing previous mail lists, Marcus Muller noted in the thread ‘
 [Discuss-gnuradio] Out of Tree linker error... libgnuradio-MYMOD.so:‘ that
 the problem might be in my cmake files. He referenced gr-specest as an
 example which uses in tree modules. I compared the cmakelists.txt in
 gr-specest to the OOT module directory and in the OOT/lib directory and
 added the BLOCKS references in the appropriate places. However, this still
 hasn’t solved the problems. Are there any other steps necessary to make
 and install an OOT modules with in tree dependencies?   All of this is
 running on Ubuntu 14.04LTS with gnuradio 3.7.7.1

 The first thing that comes to mind when we see this is that you haven't
 added all of the public functions of your block to the public header file
 (file_sink.h), but you say that's identical. Still probably worth checking
 on that file to make sure.



 Have you looked at your swig directory's .i file? That needs to properly
 reference your block to export it into Python. It seems like this is ok
 since you're getting as far as to see the error on the method, not the
 block. Again, though, something to check.



 So this is just you replicating the file sink blocks completely? You
 aren't trying to inherit from them or use them internally, are you? That
 might cause other issues.



 Tom





___
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org

Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Valenta, Chris R.
Ah, so I figured it out. Not only did I need to add #define BLOCKS_API to my 
swig .i file, but I also had to add %include “gnuradio/blocks/file_sink_base.h” 
as well.

From: Valenta, Chris R.
Sent: Friday, July 31, 2015 11:30 AM
To: 'Tom Rondeau'
Cc: discuss-gnuradio@gnu.org
Subject: RE: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

Yes, blocks is included in the cmakelists.txt as set(GR_REQUIRED_COMPONENTS 
RUNTIME BLOCKS) as well as a link directory GNURADIO_BLOCKS_LIBRARY_DIRS. Its 
also in the /lib cmakelists.txt as a target_link_library 
GNURADIO_BLOCKS_LIBRARIES.

BLOCKS_API was not in the swig .i file. I added this, ran make clean, make, and 
installed and still get the same error.

From: trond...@trondeau.commailto:trond...@trondeau.com 
[mailto:trond...@trondeau.com] On Behalf Of Tom Rondeau
Sent: Friday, July 31, 2015 11:02 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Fri, Jul 31, 2015 at 10:50 AM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
So the function (set_unbuffered) that’s coming up as not being found is in 
file_sink_base.h which is included in the file_sink.h so I’m pretty sure I’m ok 
here.

The swig file just includes file_sink.h….I tried adding file_sink_base.h to 
this as well, but it didn’t change anything.

For the time being, I’m replicating the file_sink block exactly (except the 
name) to try and get it to compile OOT. However, since file_sink depends on 
file_sink_base, which I’m not copying, I think there are problems linking to it.

Would it be better to also copy file_sink_base to my OOT module?


You should be able to use file_sink_base from libgnuradio-blocks.so, so no, 
keep that one in tree so you're not carrying around extra stuff. First, do you 
have BLOCKS as one of the GNU Radio required components in your CMakeLists.txt 
file?

Also, and I suspect this might be the real problem, do you #define BLOCKS_API 
in you .i file? There should be a #define for your module's name already; just 
add this line here along with that one.

Tom




From: trond...@trondeau.commailto:trond...@trondeau.com 
[mailto:trond...@trondeau.commailto:trond...@trondeau.com] On Behalf Of Tom 
Rondeau
Sent: Friday, July 31, 2015 10:27 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
I’m trying to make an out of tree module based on blocks::file_sink that has 
some additional functionality I need. Right now, I’ve built it OOT, but an 
having trouble getting it to work. The code (file_sink_impl.cc, 
file_sink_impl.h, and file_sink.h -- actual names are different so there are 
no conflicts) are all identical to the ones in tree. I used gr-modtool to 
create the OOT modules with this block and it makes and installs fine. However, 
when I try to use it, I get the following error:

AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’

What I think is happening here is that the OOT version of my code isn’t linking 
to the file_sink_base in gnuradio-blocks to inherit this function. Browsing 
previous mail lists, Marcus Muller noted in the thread ‘ [Discuss-gnuradio] Out 
of Tree linker error... libgnuradio-MYMOD.so:‘ that the problem might be in my 
cmake files. He referenced gr-specest as an example which uses in tree modules. 
I compared the cmakelists.txt in gr-specest to the OOT module directory and in 
the OOT/lib directory and added the BLOCKS references in the appropriate 
places. However, this still hasn’t solved the problems.
Are there any other steps necessary to make and install an OOT modules with in 
tree dependencies?

All of this is running on Ubuntu 14.04LTS with gnuradio 3.7.7.1
The first thing that comes to mind when we see this is that you haven't added 
all of the public functions of your block to the public header file 
(file_sink.h), but you say that's identical. Still probably worth checking on 
that file to make sure.

Have you looked at your swig directory's .i file? That needs to properly 
reference your block to export it into Python. It seems like this is ok since 
you're getting as far as to see the error on the method, not the block. Again, 
though, something to check.

So this is just you replicating the file sink blocks completely? You aren't 
trying to inherit from them or use them internally, are you? That might cause 
other issues.

Tom


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


Re: [Discuss-gnuradio] file source with gr-ieee802.11 tx

2015-07-31 Thread Bastian Bloessl
OK, great.

If you don’t care about WiFi I would recommend to test the OFDM transceiver in 
gr-digital that ships with GNU Radio.

Best,
Bastian


 On 31 Jul 2015, at 18:55, Jason Matusiak ja...@gardettoengineering.com 
 wrote:
 
 It builds fine, but when I run my GRC script, the output to a file sink
 (for simplicity I am dumping to a file instead of UDP for now), doesn't
 change its length. I did reload blocks in GRC too.
 
 I need to do more testing, but I think I have my bug.  I needed to
 decrement the return variable to_copy.
 
 I'll report in if I get something more complete working.
 


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


Re: [Discuss-gnuradio] Error during Install my_qpsk_demod in grc

2015-07-31 Thread Marcus Müller
Hi Surjeet,

I hate to become *that guy*, but could you please directly sign up to
the mailing list with your email address, and send emails rather than
going through ruby-forum?
 https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
Signing up really takes a few seconds, and we have had it more than once
that people asking interesting questions got good answers, but missed
them, because ruby-forum didn't show them in the same thread.

Best regards,
Marcus

On 31.07.2015 16:19, Tom Rondeau wrote:
 On Fri, Jul 31, 2015 at 5:33 AM, Surjeet Rawat li...@ruby-forum.com
 mailto:li...@ruby-forum.com wrote:

 please give some suggestion related to this error

 Attachments:
 
 http://www.ruby-forum.com/attachment/10928/Screenshot_from_2015-07-31_13_16_57.png


 --
 Posted via http://www.ruby-forum.com/.



 Can you explain how you got there?

 Also, please just paste the text instead of sending a png. It's likely
 to live longer in the archives this way.

 Tom
  


 ___
 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


Re: [Discuss-gnuradio] Clock Recovery MM documentation

2015-07-31 Thread Marcus Müller
Hi Klauss,
  is it new ?

Not really, no. It's been around since ca April 2012.
If there's no Polyphase Clock Sync:
What version of GNU Radio are you using?

Best regards,
Marcus

PS: I always recommend not using ruby-forum but directly signing up to
the mailing list:
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
so much more comfortable! And with modern mail clients and webmail
interfaces, much better searchable.

On 31.07.2015 21:28, Klauss Wolfeinstein wrote:
 Wow ! Thank you all for your reply. Very interesting !

 Tom, I didn't find the pfb_clock_recovery block in my GNU Radio 
 Companion, is it new ?

 Best regards.



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


Re: [Discuss-gnuradio] Clock Recovery MM documentation

2015-07-31 Thread Klauss Wolfeinstein
Wow ! Thank you all for your reply. Very interesting !

Tom, I didn't find the pfb_clock_recovery block in my GNU Radio 
Companion, is it new ?

Best regards.

-- 
Posted via http://www.ruby-forum.com/.

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


Re: [Discuss-gnuradio] Clock Recovery MM documentation

2015-07-31 Thread Klauss Wolfeinstein
Hi Marcus,

A it's the Polyphase Clock Sync, I didn't think about it ... :-D 
Thank you for the advice, I will use the mailing list next time.

Best regards.

Klauss.

-- 
Posted via http://www.ruby-forum.com/.

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


Re: [Discuss-gnuradio] Does any source block support Signalhound BB60C ?

2015-07-31 Thread Derek Kozel
Hi Patrick,

This was just raised on the Signal Hound Facebook page. They were
proposing to introduce support for the BB60C to HDSDR and I suggested
GNU Radio in the comments.
https://www.facebook.com/groups/148252868548830/

Regards,
Derek

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


Re: [Discuss-gnuradio] Building an OOT modules with an In Tree Dependency

2015-07-31 Thread Nowlan, Sean
If we don’t just document with comments in the proper places in the OOT 
structure, I was thinking we could have the user list GR required components in 
the gr_modtool interactive configuration. It wouldn’t solve all problems like 
the file_sink_base issue, but it would be a good start.

Sean

From: discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org 
[mailto:discuss-gnuradio-bounces+sean.nowlan=gtri.gatech@gnu.org] On Behalf 
Of Tom Rondeau
Sent: Friday, July 31, 2015 1:57 PM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Fri, Jul 31, 2015 at 1:52 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
Ah, so I figured it out. Not only did I need to add #define BLOCKS_API to my 
swig .i file, but I also had to add %include “gnuradio/blocks/file_sink_base.h” 
as well.

Ah, of course! Good catch.

We should have this documented somewhere -- how to use GNU Radio classes and 
blocks in OOT projects.

Tom




From: Valenta, Chris R.
Sent: Friday, July 31, 2015 11:30 AM
To: 'Tom Rondeau'
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: RE: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

Yes, blocks is included in the cmakelists.txt as set(GR_REQUIRED_COMPONENTS 
RUNTIME BLOCKS) as well as a link directory GNURADIO_BLOCKS_LIBRARY_DIRS. Its 
also in the /lib cmakelists.txt as a target_link_library 
GNURADIO_BLOCKS_LIBRARIES.

BLOCKS_API was not in the swig .i file. I added this, ran make clean, make, and 
installed and still get the same error.

From: trond...@trondeau.commailto:trond...@trondeau.com 
[mailto:trond...@trondeau.com] On Behalf Of Tom Rondeau
Sent: Friday, July 31, 2015 11:02 AM

To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Fri, Jul 31, 2015 at 10:50 AM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
So the function (set_unbuffered) that’s coming up as not being found is in 
file_sink_base.h which is included in the file_sink.h so I’m pretty sure I’m ok 
here.

The swig file just includes file_sink.h….I tried adding file_sink_base.h to 
this as well, but it didn’t change anything.

For the time being, I’m replicating the file_sink block exactly (except the 
name) to try and get it to compile OOT. However, since file_sink depends on 
file_sink_base, which I’m not copying, I think there are problems linking to it.

Would it be better to also copy file_sink_base to my OOT module?


You should be able to use file_sink_base from libgnuradio-blocks.so, so no, 
keep that one in tree so you're not carrying around extra stuff. First, do you 
have BLOCKS as one of the GNU Radio required components in your CMakeLists.txt 
file?

Also, and I suspect this might be the real problem, do you #define BLOCKS_API 
in you .i file? There should be a #define for your module's name already; just 
add this line here along with that one.

Tom




From: trond...@trondeau.commailto:trond...@trondeau.com 
[mailto:trond...@trondeau.commailto:trond...@trondeau.com] On Behalf Of Tom 
Rondeau
Sent: Friday, July 31, 2015 10:27 AM
To: Valenta, Chris R.
Cc: discuss-gnuradio@gnu.orgmailto:discuss-gnuradio@gnu.org
Subject: Re: [Discuss-gnuradio] Building an OOT modules with an In Tree 
Dependency

On Thu, Jul 30, 2015 at 5:26 PM, Valenta, Chris R. 
chris.vale...@gtri.gatech.edumailto:chris.vale...@gtri.gatech.edu wrote:
I’m trying to make an out of tree module based on blocks::file_sink that has 
some additional functionality I need. Right now, I’ve built it OOT, but an 
having trouble getting it to work. The code (file_sink_impl.cc, 
file_sink_impl.h, and file_sink.h -- actual names are different so there are 
no conflicts) are all identical to the ones in tree. I used gr-modtool to 
create the OOT modules with this block and it makes and installs fine. However, 
when I try to use it, I get the following error:

AttributeError: ‘file_sink_sptr’ object has no attribute ‘set_unbuffered’

What I think is happening here is that the OOT version of my code isn’t linking 
to the file_sink_base in gnuradio-blocks to inherit this function. Browsing 
previous mail lists, Marcus Muller noted in the thread ‘ [Discuss-gnuradio] Out 
of Tree linker error... libgnuradio-MYMOD.so:‘ that the problem might be in my 
cmake files. He referenced gr-specest as an example which uses in tree modules. 
I compared the cmakelists.txt in gr-specest to the OOT module directory and in 
the OOT/lib directory and added the BLOCKS references in the appropriate 
places. However, this still hasn’t solved the problems.
Are there any other steps necessary to make and install an OOT modules with in 
tree dependencies?

All of this is running on Ubuntu 14.04LTS with gnuradio 3.7.7.1
The first thing that comes to mind 

Re: [Discuss-gnuradio] isolate channels from wideband

2015-07-31 Thread Chris Kuethe
OK, I have a mostly working flowgraph and am now adding comment to all
the blocks explaining why I'm doing this or that. Will publish tonight
or tomorrow.

On Tue, Jul 21, 2015 at 11:56 AM, Chris Kuethe chris.kue...@gmail.com wrote:
 Maybe I'll do up an illustrated example on this using NOAA weather
 radio, or the pager band

 On Tue, Jul 21, 2015 at 11:42 AM,  mle...@ripnet.com wrote:
 I just use the built-in firdes stuff, rather than using an external
 designer.







 On 2015-07-21 14:38, Marcus Müller wrote:

 Hi Rich, hello Markus,

 On 21.07.2015 19:51, Richard Bell wrote:

 GNU Radio has channelizers built-in, but I've not used them yet, so I don't
 know how far they take you into this kind of task.

 the Polyphase channelizer is actually an implementation derived from that
 school of thought, and it works amazingly well.
 In fact, in preparation of a presentation at a certain ham conference, I
 tried using it to get 20 PMR/LPD channels out of a 1MS/s signal in real
 time, and then just shuffle them around, before feeding them back into the
 inverse synthesizer PFB.

 It's pretty easy:
 Design a single low pass filter, as if you just wanted to filter out the
 channel which is centered exactly at your RF center frequency, i.e. 0Hz,
 with the full sampling rate [2], using the gr_filter_design tool. Play
 around with the different window types[1], and bear in mind that the
 suppression outside your desired passband needs to be high enough so that
 the sum of the energy in all other channels don't hurt your channel too
 much, but don't overdo it (60dB suppression should be enough).
 Now you get a long filter. Copy and paste the filter coefficients from
 gr_filter_design to your PFB filter taps property.
 Set your channelizers number of channels according to your plans -- 40, if
 you want to get all the 40 25kHz channels in 2MHz. You get a block with 40
 outputs!
 Explaining things like channel mapping is best done by pointing you at the
 official documentation: [3]


 Greetings!
 Marcus

 [1] Hamming is not always the best choice, I'd try that, Blackman-harris,
 and Kaiser. I personally like harris in this case -- we want to get a full
 channel, two adjacent channels are usually not occupied, and as soon as we
 pass the stopband frequency, we're basically at -100dB.
 [2] assuming you want to use 2MS/s for your 2MHz wide band, 2MHz sampling
 rate, and assuming 25kHz wide channels, 12.5kHz cut off frequency, 25kHz
 start of stoppband. I get something like 440 taps.
 [3]
 https://gnuradio.org/doc/doxygen/classgr_1_1filter_1_1pfb__channelizer__ccf.html

 ___
 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




 --
 GDB has a 'break' feature; why doesn't it have 'fix' too?



-- 
GDB has a 'break' feature; why doesn't it have 'fix' too?

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


[Discuss-gnuradio] Error during Install my_qpsk_demod in grc

2015-07-31 Thread Surjeet Rawat
please give some suggestion related to this error

Attachments:
http://www.ruby-forum.com/attachment/10928/Screenshot_from_2015-07-31_13_16_57.png


-- 
Posted via http://www.ruby-forum.com/.

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


[Discuss-gnuradio] SOCIS project update 9

2015-07-31 Thread Johannes Demel
Hey community!

Here we go again. Another project update.
I'm working with VOLK and SIMD for two weeks now. I could fix some
hiccups with last weeks pack and unpack kernels. They run just fine
during test now.
Also, I added a 'volk_8u_x3_encodepolar_8u_x2' kernel. It operates on
the the assumption that there is one active bit in a byte and it is
located in the LSB. A quick performance test with a 2^32 samples head
block after the encoder shows that generic crunches ~160MSps. So far I
had an encoder which operated on packed bytes and did ~300MSps. An
unpack block was added to the flowgraph with the 'extended_encoder' in
use. The vector optimized version does ~570MSps. So it is ~3.5x as fast
as the generic version. Some more optimization might yield even better
results.
At first glance it is weird that the output signature of the encoder is
'8u_x2'. The kernel internally needs a temporary buffer which has the
same size as the output buffer. Instead of malloc'ing and free'ing it on
every call, it can be created once and be used all the time.
During the week I was struggling with VOLK tests. Finally I solved those
issues. But I'd like to refer to the mail I sent out the other day.
SIMD code tends to have quite a few lines of code. In order to make it
easier to read and understand, it would be great if it was possible to
implement multiple functions within one '#ifdef LV_HAVE_ARCH ... #endif'
paragraph. But so far the compiler refuses to compile if I did this. It
is possible to add functions in the general section but that's only
appropriate for a generic kernel or common functions.
All the intrinsics I used so far are available on SSSE3. Although, I
created aligned and unaligned versions of those kernels only store[u]
and load[u] might make a difference here. My benchmarks don't show any
significant difference. All benchmarks are done on a Sandy Bridge i7.

I suspect the encoder was easier to optimize than the decoder will be.
So for the upcoming week and beyond I will focus on creating kernels for
polar decoding.

More info and current project progress can be found in [1], [2] and [3].

Cheers
Johannes

[1] https://github.com/jdemel/gnuradio
[2] https://github.com/jdemel/socis-proposal
[3] https://github.com/jdemel/volk

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