Coder Social home page Coder Social logo

wvurail / gr-radio_astro Goto Github PK

View Code? Open in Web Editor NEW
38.0 9.0 14.0 38.43 MB

This package provides GNUradio OOT modules and grc flowgraphs that fascilates Radio Astronomy Observations with software defined radio devices.

CMake 7.61% C 0.92% C++ 13.15% Python 78.13% Shell 0.19%
radio-astronomy gnuradio gr-radio-astro airspy sdr grc

gr-radio_astro's Introduction

gr-radio_astro

This package provides GNUradio OOT modules and grc flowgraphs that facilates Radio Astronomy Observations with software defined radio devices.

There are two flavors of this projects:

  1. NSF Integrate and Detect softwares that allow for HI measurements and also event detections from cosmic ray detections, developed by Dr. Glen Langston. See here and the lightwork memo series for more details.
  2. DSPIRA software developed for and by High School Teachers part of the NSF funded RET program called Digital Signal Processing in Radio Astronomy (DSPIRA) at WVU university from the summers of 2017 to 2021. For more details visit the webpage and the companion website called dspira-lessons that has lessons, guides and more material help one to use radio astronomy in a high school classroom. This material is designed by the High School teachers part of this program.

Installing from Source

  1. Install GNUradio
    1. Install gnuradio external python dependencies and SDR drivers by typing the following and hit enter:
       sudo apt install gnuradio gr-osmosdr airspy python3-h5py python3-ephem git cmake liborc-0.4-dev -y
    
  2. To clone the repository:
git clone https://github.com/WVURAIL/gr-radio_astro.git
  1. Switch to the gr-radio_astro directory: cd gr-radio_astro
  2. Make a build directory: mkdir build, and then move to it: cd build
  3. Then run the following in the build directory:
    cmake ..
    sudo make
    sudo make install
    

Additional Steps for setting the proper Python environment:

  1. Edit your .bashrc file and add this to the bottom to set Python path: export PYTHONPATH=/usr/local/lib/python3/dist-packages:/usr/local/lib/python3.10/dist-packages:$PYTHONPATH
  2. Additionally you can create appropriate symbolic links
    1. Check which python is the installed version of GNURadio by opening gnuradio-companion in a terminal window and click on Help --> About and noting the python version on the dialog box that opens.
    2. Go to the following by typing: cd /usr/local/lib/python3.10/dist-packages or cd /usr/local/lib/python3.9/dist-packages for the appropriate python version.
    3. Type ln -s /usr/local/lib/python3/dist-packages/radio_astro

Running from a bootable USB Flash Drive with preinstalled software:

Instructions to set up a persistant USB flash with preinstalled software drive are here


TODO: Update for 3.10 below the instructions are for 3.8

Installing on a Raspberry Pi.

Supported Raspberry Pi Devices

All devices must have RAM greater than 4GB

  1. Raspberry Pi 4 Model B
  2. Raspberry Pi 400

Installing Ubuntu image with radio astronomy preinstalled on a Raspberry Pi

This image requires a minimum of 16GB of space on the SD card.

  1. Download the image here
  2. Unzip the .zip file.
  3. Use Raspberry Pi Imager to install this image.
    1. Insert SD card into your card reader on your computer
    2. Open Raspberry Pi imager.
    3. Click Choose OS, and choose Use Custom.
    4. Select the correct image file downloaded in step 1 and 2 from your system.
    5. Click Choose storage and select your inserted SD card.
    6. Click write.
    7. More info here and a video
  4. Insert SD card to Raspberry Pi and power it up.
  5. The default user name is pi, with password raspberry. Change the password after first boot.

gr-radio_astro's People

Contributors

ejk43 avatar fventuri avatar glangsto avatar glenlangston avatar jmakous avatar johnmakous avatar kbandura avatar pranavsanghavi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gr-radio_astro's Issues

Module not found

I've installed radio_astro branch gr38 on a Raspberry Pi 4 with the PiSDR OS image. The GNU Radio version is 3.8.2 and the Python version is 3.7.3. When I attempt to run spectrometer_w_cal.grc from within gruradio-companion, I receive the following output:

Executing: /usr/bin/python3 -u /home/pi/Documents/gr-radio_astro/DSPIRA_Spectrometer.py

Traceback (most recent call last):
  File "/home/pi/Documents/gr-radio_astro/DSPIRA_Spectrometer.py", line 43, in <module>
    import radio_astro
ModuleNotFoundError: No module named 'radio_astro'

>>> Done (return code 1)

I'm sure there is a simple solution, but I haven't been able to find it. The blocks are showing up in gnuradio-companion, but they don't appear available via the import command from the generated Python script. The radio_astro modules seem to have been installed to /usr/local/include. I've tried adding this to PYTHONPATH, but to no avail. I also have /usr/local/lib/python3/dist-packages and /usr/local/lib/python3.7/dist-packages in the PYTHONPATH as instructed by the READme file. There is a radio_astro folder under /usr/local/lib/python3/dist-packages but not under /usr/local/lib/python3.7/dist-packages.

Any help would be greatly appreciated.

3 vector median

CMakeLists refers to vmedian2, but this is not included in the repository. Cmake fails on the missing file.

-- Configuring done
CMake Error at lib/CMakeLists.txt:42 (add_library):
Cannot find source file:

vmedian2_impl.cc

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .m .M .mm .h .hh .h++ .hm
.hpp .hxx .in .txx

CMake Error at lib/CMakeLists.txt:42 (add_library):
No SOURCES given to target: gnuradio-radio_astro

CMake Generate step failed. Build files cannot be regenerated correctly.

No makefile found

Hi! I am very new to radio astronomy and am trying to download this repo, but cannot get past the command make. I receive the message:

make: *** No targets specified and no makefile found. Stop.

I downloaded Linux onto my Mac via VirtualBox, if that's any help. I have successfully made it through:

sudo apt-get install git

sudo apt-get install libyaml-dev

sudo apt-get install libssl-dev

sudo apt-get install python-dev

sudo apt-get install python-pip

sudo apt-get install python-apt

sudo pip install pyopengl pyopengl_accelerate

sudo apt-get install gnuradio gr-osmosdr

sudo apt-get install limesuite airspy

sudo apt-get install gqrx-sdr

git clone https://github.com/WVURAIL/gr-radio_astro.git

cd gr-radio_astro

mkdir build

cd build; cmake ..

What am I doing wrong and how do I fix it? Also, does this repo support the RTL-SDR Blog dongle? Thanks!

Minor Issue with latest Raspberry Pi image on Google Drive NsfSdr-21Jul13.img.xz

Following my recent MacBook build of GNU Radio and GR-Radio_Astro I also wanted to get one of my Rasperbby Pi's built for Radio Astronomy. So I installed the 'NsfSdr-21Jul13.img.xz' image from the Google Drive at - https://drive.google.com/drive/folders/1t2soWvGIgze7wg-7QGlVgB0m3Q-BR3C-

This appears to be the latest image on a new Raspi 4 Model B 4GB.

It mostly works 'out of the box' and is a great way of distributing the software. However there is a problem when running gnuradio-companion from the provided 'GNURadio Companion' desktop link or from the 'start menu item 'Programming->GNU Radio Companion'. Both these options launch GR-Companion fine but when you run a .grc file (eg) /home/pi/Research/gr-radio_astro-37/examples/vectordemo_c2.grc you get a Python import error -

Traceback (most recent call last):
File "/home/pi/Research/gr-radio_astro-37/examples/vectordemo_c2.py", line 39, in
import radio_astro
ModuleNotFoundError: No module named 'radio_astro'

However if I start a Terminal session explicitly (from the Task bar or from 'Accessories->Terminal') and run GR-Companion, then the same .grc file will run quite happily in GR-Companion.

I note this is similar to the closed Issue 31 but I'm not sure if the cause is the same since the explicitly launched terminal session appears to work correctly.

The explicit start of the Terminal session is an effective workaround but thought it worth drawing your attention to this. ?

john

Installation difficulty

I'm having difficulty installing the gr-radio_astro package. I have Windows 10, and already successfully installed and used the Gnuradio suite, including GNUCompanion, python, etc. I have 2 questions (bear with me, since I am sort of new to this.)

  1. Does the "build" folder go into the general folder, GNURadio-3.7 ? If so, do I put the downloaded contents* of the gr-radio package into this build folder after I create it? (*by downloaded contents, I mean the folders named "apps," "cmake," "data," etc.)
  2. I followed the instructions in the install guide, but get stuck at the following commands: sudo make, sudo make install, and sudo ldconfig. When I type these in the powershell, I get error messages saying these are not recognized commands. I tried using the commands at different folder levels, but still no luck. I attempted the troubleshooting instructions, but cannot find the .bashrc file that is described.
    Hopefully, it's not a big problem that I'm using Windows. It seems like all that is needed is a way to point GNUradio to the correct subfolders. Any help would be greatly appreciated!

note file path

I am having issues with the event write block, it can never find the .not file however I write the note file field, even with a blank field it bombs out looking for a file, from what I can see is it's always adding the prefix ./ to any path I configure.

Am I missing something in my setup for example a path in the conf file, everything else works fine, python paths look good, If i can find where the ./ is coming from I think it will be solved.

Issue is manifested in all detect examples and manually rewritten flows.

Ubuntu 18.04, gr3.7

gnuradio 3.8.2 not compatible

Hello,
I tried to build the repo, but I obtained this error:

  The following configuration files were considered but not accepted:
    /opt/local/share/cmake/gnuradio/GnuradioConfig.cmake, version: 3.8.2.0

What can I do in order to make it run? Also, is it compatible with MacOS?
Thank you!

NsfIntegrate30.grc is the same as NsfIntegrate60

Im not sure if its just the title and all the variables are changed appropriately but the ID and setup files for NsfIntegrate30.grc refer to NsfIntegrate60 and integrate60.not files.

I suspect why I can't run these files because it also looks for the Airspy when I am actually using RTL-SDR

GR_Swig_make unknown command

I guess gr-radio_astro isn't made for Ubuntu 22.04? Is there a work around to the gr_swig_make unknown command?

CMake Error at swig/CMakeLists.txt:37 (include):
include could not find requested file:

GrSwig

CMake Error at swig/CMakeLists.txt:51 (GR_SWIG_MAKE):
Unknown CMake command "GR_SWIG_MAKE".

gr-radio-astro blocks not working which are connected to gr-osmosdr and others.

I have tried both version 3.8 and the latest 3.10 of GNURadio. Both of them have this issue where parts of the spectrometer flow is not working which are related to gr-osmosdr and some others.
I have tried downloading the same, however that also didn't give any fruitful results, as the flow doesn't seem to recognize the location of the same.

Problem building / installing gr-radio_astro on Mac

Problem building / installing gr-radio_astro on Mac

I managed to instal GNURadio 3.8 and SDR support on a MacBook Pro (OSX 10.15.7) and GR-Companion runs ok with a couple of test .GRC files.

I’ve also installed the nsfSDR image for Raspberry Pi on a new Raspi 4B and that all seems to be working ok. However, mindful of the statements that ‘analysis’ is better done on a separate computer, I wanted to install the gr-radio_astro components on the Macbook Pro.

I followed the instructions for Installing gr-radio_astro for GNUradio 3.8 on Github (https://github.com/WVURAIL/gr-radio_astro/wiki/Installing-gr-radio_astro ) - though, on the basis that GNURadio was already installed and working, I omitted the step -
sudo apt install gnuradio gr-osmosdr airspy python3-h5py python3-ephem

I unzipped the v2020.08-gr38 file and created the build folder. Unfortunately the ‘cmake ..’ step threw the below warnings and errors.

Do you have any suggestions how I might resolve this?

John Neal

(base) Johns-MacBook-Pro-2:gr-radio_astro-2020.08-gr38 johnneal$ cd build
(base) Johns-MacBook-Pro-2:build johnneal$ cmake ..
-- The CXX compiler identification is AppleClang 11.0.0.11000033
-- The C compiler identification is AppleClang 11.0.0.11000033
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Build type not specified: defaulting to release.
-- Found LOG4CPP: /opt/local/lib/liblog4cpp.dylib
CMake Warning (dev) at /opt/local/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:438 (message):
The package name passed to find_package_handle_standard_args (PkgConfig)
does not match the name of the calling package (GMP). This can lead to
problems in calling code that expects find_package result variables
(e.g., _FOUND) to follow a certain pattern.
Call Stack (most recent call first):
/opt/local/share/cmake-3.21/Modules/FindPkgConfig.cmake:70 (find_package_handle_standard_args)
/opt/local/share/cmake/gnuradio/FindGMP.cmake:2 (include)
/opt/local/share/cmake/gnuradio/FindMPLIB.cmake:1 (find_package)
/opt/local/share/cmake-3.21/Modules/CMakeFindDependencyMacro.cmake:47 (find_package)
/opt/local/share/cmake/gnuradio/GnuradioConfig.cmake:26 (find_dependency)
CMakeLists.txt:88 (find_package)
This warning is for project developers. Use -Wno-dev to suppress it.

-- Found PkgConfig: /opt/local/bin/pkg-config (found version "0.29.2")
-- Checking for module 'gmp'
-- Found gmp, version 6.2.1
-- Found GMP: /opt/local/lib/libgmpxx.dylib
-- Using GMP.
-- Found MPLIB: /opt/local/lib/libgmpxx.dylib
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
CMake Error at /opt/local/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find Boost (missing: Boost_INCLUDE_DIR date_time program_options
filesystem system regex thread unit_test_framework) (Required is at least
version "1.71.0")
Call Stack (most recent call first):
/opt/local/share/cmake-3.21/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
/opt/local/share/cmake-3.21/Modules/FindBoost.cmake:2360 (find_package_handle_standard_args)
/opt/local/share/cmake-3.21/Modules/CMakeFindDependencyMacro.cmake:47 (find_package)
/opt/local/share/cmake/gnuradio/GnuradioConfig.cmake:45 (find_dependency)
CMakeLists.txt:88 (find_package)

-- Configuring incomplete, errors occurred!
See also "/Users/johnneal/gr-radio_astro/gr-radio_astro-2020.08-gr38/build/CMakeFiles/CMakeOutput.log".
(

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.