General issue: Pybombs recipe 3.7 vs. 3.8 ??

2019-12-11 Thread Tom McDermott
I am starting the process to port an OOT over the 3.8 / Python3.
There is an existing pybombs recipe for the 3.7 version, this recipe
references my master branch on GitHub.

Question: how should my git repository be structured so that the 3.7
version or the 3.8 version is pulled correctly when someone installs
the OOT?

If the existing master branch is switched to branch 3.7 then the existing
recipe will become broken.  If a new branch 3.8 is created, how does
the pybombs pull/build know to checkout that instead of master?

I went through something similar to this problem yesterday when installing
gnuradio using pybombs - the recipe apparently pulled the wrong branch
from UHD. Fortunately Vasil helped me do a manual workaround for this.

-- Tom, N5EG


Re: gr-iqbal, gr-fosphor, gr-osmosdr updated to Gnuradio 3.8

2019-12-11 Thread CEL
Wow, Sylvain, this is awesome!

Especially: thank you for handling the "obscure" special 3.7+qt5 case.

Cheers,
Marcus

On Sun, 2019-12-08 at 21:31 +0100, Sylvain Munaut wrote:
> Hi,
> 
> I have just pushed updates to various osmocom repositories, updating
> them to run on gnuradio 3.8.
> 
> Here's the status per project :
> 
> * gr-iqbal :
>- Old gnuradio 3.7 version been forked into a 'gr3.7' branch and
> will remain there. It won't be maintained and will most likely never
> receive any further updates.
>- 'master' now contains the gnuradio 3.8 compatible code and the
> latest version has also been tagged.
> 
> * gr-fopshor :
>- The gnuradio 3.7 version actually got updated a bit with some new
> functionality, then moved over to also a 'gr3.7'. Again, I won't
> backport future features to it so I don't really expect any further
> updates.
>- Because I know some distribution still maintain a gnuradio 3.7
> package but removed Qt4 (and so ported gnuradio to Qt5), I also
> created a 'gr3.7-qt5' branch that's designed to work with gnuradio 3.7
> but using Qt5 instead of Qt4.
>- Finally, 'master' contains the gnuradio 3.8 compatible code. ATM
> there is no functional (as in 'fosphor features') differences with the
> two others, it's just Qt5 support and Makefile changes.
>- A couple of the interesting new features that have been added :
>  . Fixes the long standing bug of NVidia CL/GL sharing not working
> (thanks Aaron Giles for figuring out root cause)
>  . Memory leak fix (thanks Emil Berg for reporting)
>  . Improved CL device compatibility check before trying to use
> them (thanks to Ethan Trewhitt)
>  . Allow explicit selection of the CL device via FOSPHOR_CL_DEV
> env var if you have several CL platform/devices.
> 
> * gr-osmosdr :
> - 'master' is still 3.7 version, same code as before but has been
> tagged and a 'gr3.7' branch has been created in anticipation that
> master will become 3.8
> - An experimental 'gr3.8' branch has been added that contains an
> upgrade to Gnuradio 3.8 (based off the work from Mickey Vänskä and
> Maitland Bottoms).
>   . I tested it with UHD / Blade RF / Hack RF which are all the
> devices I have available.
>   . It also adds support for the Airspy HF courtesy of Alexandru Csete
>   . Still feel free to use it as base for packaging and report any
> additional patch you have to apply for the build.
>   . Once I have enough success report, this will land in master.
>   . Currently the utilities in apps _have_not_ been ported to 3.8
> (especially GUI changed to Qt5) ... if anyone wants to do that and
> send me a diff, that would be _very_ welcome and I'll include that in
> this branch.
> 
> 
> Cheers,
> 
>  Sylvain Munaut
> 
> PS: bcc'd package maintainer I thought of.
> 


smime.p7s
Description: S/MIME cryptographic signature


Best way (architecture) to perform frequency hopping in GRC

2019-12-11 Thread Lukas Haase
Hi,

I am wondering what is the best way to perform frequency hopping in gnuradio on 
an *architectural* level.

I have a frequency vector [ f1 , f2 , f3 ].
GRC should tune the TX to f1, f2, f3, f1, f2, ... and the RX to 2*f1, 2*f2, 
2*f3, 2*f1, 2*f2, ...
Denote the time interval for each frequency as Tf and a complete sweep as 
Tsweep=3*Tf with Tf = Tsettle + Tvalid.
During each Tvalid, the TX sends modulated data and waits for a modulated 
response.
After processing (filtering, clock recovery, decimation etc) the response 
consists of N (e.g. N=100) bits.
After each Tsweep, the three responses acquired for each frequency (i.e. 3x100 
bits) should be passed to the next block at a rate 1/Tsweep.

What is the best way to implement this in GRC reusing as many standard blocks 
from GRC as possible?

- Is it a good idea to use "Message Strobe" to generate a message to change 
frequency for the USRP Source/Sink blocks at a rate 1/Tf?
- Is it a better idea to change a python variable "center_freq"?
- What is the best way to update such a python variable?
- Is it a good idea to create Signal Source Saw Tooth and use "Probe Signal"?
- Is it a good idea to use the "lo_locked" sensor or just make "Tsettle" big 
enough? How to use "lo_locked" from within Gnuradio?
- What is the best way to combine the results for each frequency into one item 
that is passed at a rate 1/Tsweep?
- Is it a good idea to use "Stream to Vector"?
- How do I ensure that for each frequency, exactly the same number of output 
samples are generated?


Thanks,
Luke

PS: This sounds like something fairly trivial but 99% GRC examples are using a 
straight-forward data stream flow. I worked through the tutorials but they 
really only touch on this point briefly. Now I need to dynamically change the 
behavior of the signal flow over time while ensuring that everything stays 
time-aligned properly and to combine data from very different points in time 
into a single data point.





OOT blocks in 3.8 not working

2019-12-11 Thread Robert Meyer
Hello,

 

I am trying move a project I have from gnuradio 3.7 to 3.8 and I am having
some difficulties.

 

I have went through the gr_modtool tutorial in 3.8, and was able to get the
square_fft block to build and run inside of gr-howto, but making the same
block in my module (gr-nuclear) doesn't work.  

 

Some of the errors I suspected were from dependencies, and I think that I
have added them in correctly.  Those dependencies are UHD and libomnithread:

 

 

To include UHD I:

*   Added the following to the CMakeLists.txt based on gr-foo: (in the
gr-nuclear's directory, not in /lib/)

 

I added this to the Compiler Specific setup section:

 

find_package(UHD)

if(NOT UHD_FOUND)

message(STATUS "UHD library not found, no support for timed
TX")

set(UHD_INCLUDE_DIRS "")

set(UHD_LIBRARY_DIRS "")

set(UHD_LIBRARIES "")

else()

message(STATUS "UHD library found.") 

set(UHD_INCLUDE_DIRS "")

set(UHD_LIBRARY_DIRS "")

set(UHD_LIBRARIES "")

endif()

 

and I added this in the project setup section:

 

list(INSERT CMAKE_MODULE_PATH 0 "/path/to/uhd/module")

 

 

*   Added the following to the CMakeList.txt in the /lib/ directory

 

Added <${UHD_INCLUDE_DIRS}> to include_directories()

Added <$UHD_LIBRARY_DIRS}> to link_directories()

 

 

 

 

 

To include libomnithread4 I;

*   I had to purge all of libomnithread, and install the latest omniorb
package.  After that I added the following to the target_link_libraries()
list in the CMakeLists.txt file in /lib/

 

/usr/lib/x86_64-linux-gnu/libomnithread.so.4

 

*   I was getting an error that omnithread.h was not in the include
folder while building, so I moved omnithread.h to the include/nuclear/
directory, and after that I was able to build the project without errors.  

 

 

 

 

But once I try to launch my project I get "AttributeError: module 'nuclear'
has no attribute 'radio_init', which is one of the blocks of my OOT module.

 

I'm not sure if this is related, but while launching I also get the warning:

 

"Warning: restarting the docstring loader (crashed while loading
'uhd_amsg_source')"

 

When I go into the build/swig directory and run python3.6, I tried to import
my module the same way that __init__.py uses it and I get this error

 

How I imported:

from .nuclear_swig import *

 

Error I get:

ModuleNotFoundError: No module named '__main__.nuclear_swig'; '__main__' is
not a package

 

 

I have tried removing the '.' Which was recommended when I looked into this
problem online, but that did not solve it

 

 

Before include the two modules, trying to import .nuclear_swig was
segfaulting, so it seems like I have made at least some progress.

 

 

Does anyone have some ideas of what I could be missing/doing wrong? 

 

Thank you

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.



Re: gr-ieee802-11 with USRP N210 and B200mini problems

2019-12-11 Thread Kyeong Su Shin
Hello Hamzeh,

Sorry, but I think we need more details about your configurations (maybe 
flowgraphs, pictures of the hardware, captured data, etc) in order to answer 
your questions properly.

But here are a few generic answers to the question:

1.
It depends. There is no single answer.

2.
You can either implement a software-level automatic gain control (harder), or 
do this experimentally. Try to choose the gain level that maximises the SNR of 
the received signal. Plotting out the periodogram of the signals is helpful 
(USRP Source -> QT Frequency Sink).

Some USRP boards and daughterboards have hardware AGCs on them. This includes 
USRP B series units, if I recall correctly. You can try enabling that. This not 
not necessarily optimal, however.

3.
Yes, different SDR transceivers have different RF frontends and therefore 
different gain stages. It is less application-dependent, but some applications 
work well on non-linear conditions while others dont, so applications matter, 
too. You should figure this out experimentally (easier) or by actually going 
thorugh hardware schematics and software source codes (harder).

4.
I don't know, there are insufficient information to tackle your problem. Maybe 
your flowgraph has issues. Maybe the spectrum is too crowded. Maybe you used 
wrong antennas (RP-SMA) or antenna ports. There are too many possibilities. One 
thing that you should try is plotting the received data, before actually 
putting them into the processing chain. You can try hooking up a QT Frequency 
Sink to the USRP source on GNU Radio and see if the periodogram makes sense 
(looks OFDM-ish).

Regards,
Kyeong Su Shin

보낸 사람: hamzeh elsayed  대신 Discuss-gnuradio 

보낸 날짜: 2019년 12월 10일 화요일 오후 6:33
받는 사람: discuss-gnuradio@gnu.org 
제목: gr-ieee802-11 with USRP N210 and B200mini problems

Dear all,


I installed the gr-ieee802-11 project and run the wifi_loopback.grc file and 
the output is correct. Then I edited the file to transmit and receive from 
socket using “socket PDU” block, also the output is correct. After that, I 
tried to transmit and receive from USRP SDRs, the following are the tested I 
done:



1-  I transmit and receive from the same SDR “B200mini” with the same 
configuration found in the wifi_transceiver.grc file.

a.   If the rx_gain and tx_gain are approximately 0.27 (normalized) and 
encoding BPSK 1/2 , then the sent data are received for (95%) and the 
constellation sink is approximately good.

b.   If the rx_gain and tx_gain are less than or greater than 0.27 and 
encoding BPSK 1/2 , then any data id not received and the constellation sink is 
very bad.

c.   If the encoding is anyone except BPSK ½ for example 16 QAM ½ etc.. any 
data is not received for any value of gain.



2-  I transmit and receive from the same SDR “N210” with the same 
configuration found in the wifi_transceiver.grc file. Any data is not received 
for any gain and encoding configurations.



3-  I transmit from USRP N210 and received from B200mini also any data is 
not received for any gain and encoding configurations.



4-  I transmit from USRP B200mini and received N210 from B200mini also any 
data is not received for any gain and encoding configurations.

Tests were done by using the following:

OS: Ubuntu 16.04 LTS

Gnuradio: 3.7.11

First SDR: USRP N210 with CBX daughter board

Second SDR: B200mini

Frequency: 2.415Ghz

Bandwidth: default (0)

Therefore,

1-  what are the best settings I have to select in order to transmit and 
receive data correctly for all cases?

2-  how to select the best gain for any SDR?

3-  Is there any relation between the SDR type and gain and the application?

4-  In general, where is the problem or the mistake I am doing?


in advance, thanks for your time and help.


Best Regards,

Hamzeh Elsayed




Installing version 3.8 via ppa

2019-12-11 Thread hangeron
Hello everybody, I have a question. I've installed GR on Ubuntu 18.04 via ppa:gnuradio/gnuradio-master. To my surprise  I've got 3.9 version instead 3.8. Is it possible to install 3.8 vvia PPA?Thanks,Michal