Who else is getting started with GNU Radio?

Discussion in 'Software Defined Radio (SDR)' started by N0NB, Jan 24, 2019.

ad: L-HROutlet
ad: l-rl
ad: L-MFJ
ad: K5AB-Elect-1
ad: Subscribe
ad: Left-3
ad: Left-2
ad: MessiPaoloni-1
  1. WB8LBZ

    WB8LBZ XML Subscriber QRZ Page

    I'm going to try what you did because I just opened a terminal window and did the git clone. I didn't use the site you did so I'll give this a try.
    Bootstrap is not something I am familiar with. Is there a place I can read up on this?
    Thanks in advance.

    73, Larry WB8LBZ
    El Paso, TX
     
  2. W6RZ

    W6RZ Premium Subscriber QRZ Page

    Here's how it works. When you first plug in the B210, it enumerates as a USB 2.0 device with Product = WestBridge and Manufacturer = Cypress. Then when you start any program that has UHD support (in this case, Gqrx), UHD detects that the B210 is in the boot state and proceeds to download the USB controller firmware and then the FPGA image. When the USB controller gets downloaded, the B210 disconnects from USB 2.0 and reconnects on USB 3.0 with the new Product = USRP B200 and Manufacturer = Ettus Research LLC.

    [​IMG]

    [​IMG]
     
  3. WB8LBZ

    WB8LBZ XML Subscriber QRZ Page

    Things went well until after the line Python interpreter: /usr/bin/python
    then I got:

    -- Override with: -DPYTHON_EXECUTABLE=<path-to-python>
    -- Using UHD Images Directory: OFF
    -- Build type not specified: defaulting to release.
    -- Performing Test HAVE_VISIBILITY_HIDDEN
    -- Performing Test HAVE_VISIBILITY_HIDDEN - Success
    -- Performing Test HAVE_VISIBILITY_INLINES_HIDDEN
    -- Performing Test HAVE_VISIBILITY_INLINES_HIDDEN - Success
    --
    -- Configuring Boost C++ Libraries...
    -- Looking for pthread.h
    -- Looking for pthread.h - found
    -- Looking for pthread_create
    -- Looking for pthread_create - not found
    -- Looking for pthread_create in pthreads
    -- Looking for pthread_create in pthreads - not found
    -- Looking for pthread_create in pthread
    -- Looking for pthread_create in pthread - found
    -- Found Threads: TRUE
    -- Could NOT find Boost
    -- Boost include directories: /usr/include
    -- Boost library directories: /usr/lib/arm-linux-gnueabihf
    -- Boost libraries:
    -- Looking for log2
    -- Looking for log2 - found
    --
    -- Python checking for Python version 2.6 or greater
    -- Python checking for Python version 2.6 or greater - found
    --
    -- Python checking for Mako templates 0.4.2 or greater
    -- Python checking for Mako templates 0.4.2 or greater - "import mako" failed
    --
    -- Python checking for requests 2.0 or greater
    -- Python checking for requests 2.0 or greater - found
    --
    -- Configuring LibUHD support...
    -- Dependency Boost_FOUND = 0
    -- Dependency HAVE_PYTHON_PLAT_MIN_VERSION = TRUE
    -- Dependency HAVE_PYTHON_MODULE_MAKO = FALSE
    CMake Error at cmake/Modules/UHDComponent.cmake:51 (MESSAGE):
    Dependencies for required component LibUHD not met.
    Call Stack (most recent call first):
    CMakeLists.txt:343 (LIBUHD_REGISTER_COMPONENT)


    -- Configuring incomplete, errors occurred!
    See also "/usr/uhd/host/build/CMakeFiles/CMakeOutput.log".
    See also "/usr/uhd/host/build/CMakeFiles/CMakeError.log".
    odroid@odroid:/usr/uhd/host/build$

    It looks like I didn't get Boost or Python Mako.

    73, Larry WB8LBZ
    El Paso, TX
     
  4. W6RZ

    W6RZ Premium Subscriber QRZ Page

    Here's the minimum dependencies for UHD. If you already have one or more, apt-get will just skip over it.

    sudo apt-get install git libboost-all-dev libusb-1.0-0-dev python-mako doxygen python-docutils cmake build-essential libncurses5 libncurses5-dev
     
    DK7OB and WB8LBZ like this.
  5. WB8LBZ

    WB8LBZ XML Subscriber QRZ Page

    I think it is working now. I'll hook it up to an outside antenna in the morning and see what I can hear/see.
    Thanks again.

    73, Larry WB8LBZ
    El Paso, TX
     
    N0NB likes this.
  6. N0NB

    N0NB Subscriber QRZ Page

    Thanks for that link, Chris.

    The Softrock that I have is setup for the 8.215 MHz IF output of the Elecraft K3. As such it is always tuned to that frequency and doesn't move. The signal spectrum does change as the radio is tuned.

    What I see with your flow graph and with Gqrx and other SDR programs I've tried such as CubicSDR all show the center IF frequency as an apparent point where the spectrum display disappears much like a page fold in a book. As the radio is tuned signals appear to disappear into the center fold or appear out of it. I don't get a linear spectrum as signals below and above the "fold" are mirror images. Is this normal?
     
  7. DK7OB

    DK7OB Ham Member QRZ Page

    Thanks for that!

    I have a gnu radio source installation on my notebook, but I am going to set up a new PC today and now I don't need to find out what packages are needed to allow gnuradio to be built from source.
     
  8. W6RZ

    W6RZ Premium Subscriber QRZ Page

    That's just for UHD. For GNU Radio, you need more. This is for Ubuntu 16.04. For newer versions of Ubuntu, you'll need to modify it a little. Delete libqwtplot3d-qt4-dev. Change libzmq1 to libzmq5 and libzmq-dev to libzmq3-dev.

    sudo apt-get install libfontconfig1-dev libxrender-dev libpulse-dev swig g++ automake autoconf libtool python-dev libfftw3-dev libcppunit-dev libusb-dev fort77 libsdl1.2-dev python-wxgtk3.0 git-core libqt4-dev python-numpy ccache python-opengl libgsl-dev python-cheetah python-lxml qt4-default qt4-dev-tools libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4 python-scipy wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 python-requests libzmq1 libzmq-dev python-zmq liblog4cpp5-dev

    Also, the master branch of GNU Radio is currently unstable. You need to check out the 3.7 branch.

    git checkout maint-3.7
    git submodule update --init
     
    DK7OB likes this.
  9. W6RZ

    W6RZ Premium Subscriber QRZ Page

    Here's my complete recipe for a new machine with Ubuntu 16.04. I like to install in /opt instead of /usr/local. That way, you can easily delete installations. However, when you build OOT's, you always have to use cmake -DCMAKE_INSTALL_PREFIX=/opt/gnuradio-3.7.13.4 ../

    Code:
    sudo apt-get install git libboost-all-dev libusb-1.0-0-dev python-mako doxygen python-docutils cmake build-essential libncurses5 libncurses5-dev
    
    git clone https://github.com/EttusResearch/uhd.git
    cd uhd/
    git checkout release_003_009_007
    cd host/
    mkdir build
    cd build
    cmake -DCMAKE_INSTALL_PREFIX=/opt/gnuradio-3.7.13.4 ../
    make -j4
    sudo make install
    
    cd ../../..
    
    sudo apt-get install libfontconfig1-dev libxrender-dev libpulse-dev swig g++ automake autoconf libtool python-dev libfftw3-dev libcppunit-dev libusb-dev fort77 libsdl1.2-dev python-wxgtk3.0 git-core libqt4-dev python-numpy ccache python-opengl libgsl-dev python-cheetah python-lxml qt4-default qt4-dev-tools libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4 python-scipy wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 python-requests libzmq1 libzmq-dev python-zmq liblog4cpp5-dev
    
    git clone --recursive https://github.com/gnuradio/gnuradio.git
    cd gnuradio/
    git checkout maint-3.7
    git submodule update --init
    mkdir build
    cd build
    cmake -DCMAKE_INSTALL_PREFIX=/opt/gnuradio-3.7.13.4 ../
    make -j4
    sudo make install
    
    cd /etc/profile.d
    sudo nano gnuradio.sh
    /* insert following text with editor */
    
    #!/bin/bash
    # add gnuradio to path
    export PATH=$PATH:/opt/gnuradio-3.7.13.4/bin
    # add gnuradio python libraries to python search path
    if [ $PYTHONPATH ]; then
           export PYTHONPATH=$PYTHONPATH:/opt/gnuradio-3.7.13.4/lib/python2.7/dist-packages
    else
           export PYTHONPATH=/opt/gnuradio-3.7.13.4/lib/python2.7/dist-packages
    fi
    
    cd /etc/ld.so.conf.d
    sudo nano gnuradio.conf
    /* insert following text with editor */
    
    /opt/gnuradio-3.7.13.4/lib
    
    cd /etc/udev/rules.d
    sudo cp /opt/gnuradio-3.7.13.4/lib/uhd/utils/uhd-usrp.rules .
    
    cd /opt/gnuradio-3.7.13.4/lib/uhd/utils
    sudo ./uhd_images_downloader.py
    
    sudo ldconfig
    reboot
    
     
    DK7OB likes this.
  10. DK7OB

    DK7OB Ham Member QRZ Page

    Thanks a lot! I am using Ubuntu 18.04 and the gnuradio 3.7 branch.

    Installing gnuradio to /opt is a good idea.
     

Share This Page

ad: M2Ant-1