Open rxseger opened 8 years ago
Following the quickstart:
pip install git+https://github.com/gnuradio/pybombs.git pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git
What to use for the "prefix"? The example uses a nonsensical "/path/to/prefix" path. Maybe /usr/local/share/gnuradio/grc/blocks, which I have configured in:
~/.gnuradio/config.config.conf: [grc] local_blocks_path=/usr/local/share/gnuradio/grc/blocks
or in ~/.pybombs? But that already exists and has config.yml and recipes files:
~ $ ls ~/.pybombs/ config.yml recipes
cannot create prefix over it:
~ $ pybombs prefix init ~ -a local -R gnuradio-default PyBombs.prefix - ERROR - Ignoring. A prefix already exists in `/Users/admin'
even though it doesn't have "./setup_env.sh":
~ $ pybombs prefix env PyBombs.prefix - ERROR - No prefix specified. Aborting. ~ $ pybombs prefix info PyBombs.prefix - ERROR - No prefix specified. Aborting.
not clear what a reasonable prefix is. If I use a different directory, then initialization succeeds, and it says it is installing gr-osmosdr but there are no gr-osmosdr files in the prefix directory.
I'll use ~/rf/gr as my prefix:
pip install git+https://github.com/gnuradio/pybombs.git
pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git
pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git
pybombs prefix init ~/rf/gr -a local -R gnuradio-default
initializes the prefix:
PyBombs.prefix - INFO - Creating directory `/Users/admin/rf/gr' PyBombs.ConfigManager - INFO - Creating new config file /Users/admin/rf/gr/.pybombs/config.yml PyBombs.prefix - INFO - Installing default packages for prefix... PyBombs.prefix - INFO -
then try to install - no output:
~ $ pybombs -p local install gnuradio gr-osmosdr ~ $
Try another package - nothing either:
~ $ pybombs install gr-ieee-80211 ~ $ ls ~/rf/gr
The prefix directory is nearly empty:
~ $ find ~/rf/gr
/Users/admin/rf/gr
/Users/admin/rf/gr/.pybombs
/Users/admin/rf/gr/.pybombs/config.yml
/Users/admin/rf/gr/.pybombs/recipes
/Users/admin/rf/gr/setup_env.sh
/Users/admin/rf/gr/src
Not sure what is going on here. If I . ./setup_env.sh
then ./gnuradio-companion
, no blocks from the packages I "installed" are visible (tried gr-osmosdr, gr-ieee-80211).
Will have to stick to Homebrew for now until I can figure out PyBOMBS.
Found this: https://github.com/gnuradio/pybombs/issues/224 Add 'brew' package manager — implying Homebrew is not currently supported with PyBOMBS?
But https://github.com/gnuradio/pybombs/issues/222 Mac OS X support says there is MacPorts support. Another good word for MacPorts in https://github.com/gnuradio/pybombs/pull/50 "Also, if you really need gnuradio these days on OS X, just install macports: They have a really good and active (paid?) package maintainer for gnuradio, so it should works right out of the box."
Sure enough, MacPorts does have a package for gr-osmosdr, and a total of 16 portfiles gr-: https://www.macports.org/ports.php?by=name&substr=gr-
gr-air-modes 20160517 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-ais 20150414 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-baz 20160505 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-dvbs 20140618 Implements DVB-S transmitter according to ETSI 300 421 V1.1.2 Framing in GNU Radio.
gr-dvbs2 20140903 Implements DVB-S2 transmitter according to ETSI EN 302 307 V1.3.1 Second Generation Frameing in GNU Radio.
gr-dvbt 20160502 Implements DVB-T encoder/decoder according to ETSI 300 744 in GNU Radio.
gr-fcdproplus 20160310 Implements a funcube dongle pro+ source in GNU Radio.
gr-foo 20160423 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-fosphor 20160125 gr-fosphor provides a GNU Radio block for RTSA-like spectrum visualization using GPU acceleration.
gr-ieee802-11 20160412 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-ieee802-15-4 20151217 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-iqbalance 20140825 gr-iqbalance provides I/Q balancing blocks for GNU Radio
gr-mac 20140913 Provides augmented functionality (blocks, GRC definitions, apps, etc) for GNU Radio.
gr-osmosdr 20160228 gr-osmosdr provides support for OsmoSDR hardware within GNU Radio
gr-pyqt 20160427 Provides augmented functionality for GNU Radio: pyqt based plotters intended for plotting bursted events.
gr-rds 20160403 Provides the Radio Data System (RDS) block for GNU Radio.
Time to switch from Homebrew to MacPorts?
GNU Radio has its own bundle system, Python Build Overlay Managed Bundle System: https://github.com/gnuradio/pybombs - should try it out and investigate how it compares versus these Homebrew formulae.
Does it make them obsolete? There are recipes in gr-recipes to install gr-osmosdr, gr-baz, and a large number of other modules:
rf $ grep description {gr-recipes,gr-etcetera}/*.lwr gr-recipes/gr-adsb.lwr:description: GNU Radio ADSB decoder and framer gr-recipes/gr-air-modes.lwr:description: Gnuradio Mode-S/ADS-B decoder gr-recipes/gr-ais.lwr:description: Automatic Information System decoder for shipborne position reporting gr-recipes/gr-ax25.lwr:description: Some hamradio ax.25 routines for gnuradio gr-recipes/gr-baz.lwr:description: Collection of new blocks for GNU Radio http://wiki.spench.net/wiki/gr-baz gr-recipes/gr-bluetooth.lwr:description: Bluetooth receiver implementation for GNU Radio gr-recipes/gr-burst.lwr:description: Burst PSK Modem Building Blocks for GNU Radio gr-recipes/gr-cdma.lwr:description: CDMA physical layer for Gnuradio gr-recipes/gr-compat.lwr:description: Compatibility layer for various gnuradio APIs and libraries gr-recipes/gr-display.lwr:description: QT based PNG and text display sink for gnuradio gr-recipes/gr-drm.lwr:description: DRM transmitter using GNU Radio gr-recipes/gr-ettus.lwr:description: Out-of-tree Module for Experimental Ettus Research Features gr-recipes/gr-eventstream.lwr:description: translation between streams of data and scheduled-finite length events gr-recipes/gr-fcdproplus.lwr:description: gnuradio funcube dongle pro+ source gr-recipes/gr-foo.lwr:description: Some additional blocks like packetpad that are required by, e.g., gr-ieee80211 gr-recipes/gr-fosphor.lwr:description: RTSA-like spectrum visualization using OpenCL and OpenGL gr-recipes/gr-fsk-burst.lwr:description: GNU Radio message based burst FSK Transmitter and Receiver gr-recipes/gr-ieee-80211.lwr:description: IEEE 802.11 a/g/p Transceiver gr-recipes/gr-iio.lwr:description: GNU Radio IIO Blocks gr-recipes/gr-iqbal.lwr:description: gnuradio I/Q balancing gr-recipes/gr-ldpc.lwr:description: encoder and decoder for LDPC codes gr-recipes/gr-lilacsat.lwr:description: Harbin Institute of Technology LilacSat-2 satellite telemetry gr-recipes/gr-mac.lwr:description: Easy-to-use MAC-layer implementations for GNU Radio gr-recipes/gr-mapper.lwr:description: Symbol to Bit Mapping and Demapping Blocks for GNU Radio gr-recipes/gr-message_tools.lwr:description: Simple message debugging tools gr-recipes/gr-nacl.lwr:description: GNU Radio module for data encryption using NaCl gr-recipes/gr-nmea.lwr:description: NMEA0183 GPS to message source gr-recipes/gr-op25.lwr:description: implementation of the APCO Project 25 digital radio standard gr-recipes/gr-osmosdr.lwr:description: interface api independent of the underlying radio hardware gr-recipes/gr-packetradio.lwr:description: APRS for GNU Radio gr-recipes/gr-paint.lwr:description: OFDM Spectrum Painter for GNU Radio gr-recipes/gr-psk-burst.lwr:description: GNU Radio message based burst PSK Transmitter and Receiver gr-recipes/gr-pyqt.lwr:description: pyqt based plotters intended for plotting bursted events in gnu radio gr-recipes/gr-radar.lwr:description: GNU Radio Radar Toolbox gr-recipes/gr-rds.lwr:description: FM RDS/TMC Transceiver gr-recipes/gr-specest.lwr:description: spectral estimation routines for GNU Radio gr-recipes/gr-tagutils.lwr:description: blocks useful for working with Stream Tags gr-recipes/gr-theano.lwr:description: Rapid GPU Accelerated Blocks for GNU Radio gr-recipes/gr-tutorial.lwr:description: tutorial OOT module for GNU Radio gr-recipes/gr-zmqblocks.lwr:description: connect to flowgraphs over a network to perform remote procedure calls gr-recipes/libperseus-sdr.lwr:description: Perseus SDR access library gr-recipes/pysstv.lwr:description: SSTV generator in pure Python gr-recipes/python-matplotlib.lwr:description: Python based plotting system in a style similar to Matlab. gr-recipes/python-tk.lwr:description: A module for writing portable GUI applications with Python using Tk. gr-etcetera/acarsdec.lwr:description: open source ACARS decoder with rtl_sdr frontend gr-etcetera/dump1090.lwr:description: simple Mode S decoder for RTLSDR devices gr-etcetera/gr-acars2.lwr:description: GNU Radio processing block for ACARS transmissions gr-etcetera/gr-analysis.lwr:description: analysis tools for high sample rate recordings gr-etcetera/gr-benchmark.lwr:description: performance measurement tool for GNU Radio gr-etcetera/gr-dect2.lwr:description: DECT analyzer for GNU Radio gr-etcetera/gr-dsd.lwr:description: GNU Radio block for Digital Speech Decoder gr-etcetera/gr-dvbs2.lwr:description: DVB-S2 and DVB-S2X transmitter for GNU Radio gr-etcetera/gr-dvbt.lwr:description: DVB-T implementation in gnuradio gr-etcetera/gr-dvbt2.lwr:description: DVB-T2 transmitter for GNU Radio gr-etcetera/gr-elster.lwr:description: Decode packets transmitted by Elster R2S smart meters gr-etcetera/gr-flarm.lwr:description: FLARM receiver for GNU Radio gr-etcetera/gr-framers.lwr:description: Framer and Deframer Blocks for GNU Radio gr-etcetera/gr-gpredict-doppler.lwr:description: GNU Radio Gpredict Doppler shift correction block gr-etcetera/gr-gsm.lwr:description: Gnuradio blocks and tools for receiving GSM transmissions gr-etcetera/gr-ham.lwr:description: GNU Radio blocks useful for amateur radio gr-etcetera/gr-hpsdr.lwr:description: interface module for HPSDR Hermes / Metis gr-etcetera/gr-ieee-802154.lwr:description: IEEE 802.15.4 ZigBee Transceiver gr-etcetera/gr-isdbt.lwr:description: DTV ISDB-T in GNURadio gr-etcetera/gr-keyfob.lwr:description: Transceiver for Hella wireless car key fobs gr-etcetera/gr-lte.lwr:description: GNU Radio LTE receiver gr-etcetera/gr-mapper.lwr:description: Symbol to Bit Mapping and Demapping Blocks for GNU Radio gr-etcetera/gr-mediatools.lwr:description: ffmpeg and gnu radio integration gr-etcetera/gr-mer.lwr:description: QAM Modulation error measurements. gr-etcetera/gr-microtelecom.lwr:description: Perseus SDR source module gr-etcetera/gr-mixalot.lwr:description: Gnuradio pager encoder gr-etcetera/gr-mtb.lwr:description: GNU Radio measurement toolbox gr-etcetera/gr-multimon.lwr:description: multimon gnuradio wrapper gr-etcetera/gr-pcap.lwr:description: PCAP recording and playback gr-etcetera/gr-pocsag.lwr:description: multichannel POCSAG receiver for gnuradio gr-etcetera/gr-psk31.lwr:description: tutorial on using psk31 with GNU Radio gr-etcetera/gr-ra_blocks.lwr:description: Helper blocks for simple_ra gr-etcetera/gr-rccar2.lwr:description: Gnuradio implementation for cheap remote control cars gr-etcetera/gr-reveng.lwr:description: Utilities to help with reverse engineering RF protocols gr-etcetera/gr-rstt.lwr:description: Vaisala Radiosonde Telemetry Receiver gr-etcetera/gr-rtty.lwr:description: RTTY decoder for Gnuradio gr-etcetera/gr-smartnet.lwr:description: Motorola Smartnet II trunking logging scanner for Gnuradio gr-etcetera/gr-smithchart.lwr:description: pyQT based smith chart for GNU Radio gr-etcetera/gr-streamsink.lwr:description: GNURadio sink to stream audio to SHOUTcast/Icecast gr-etcetera/gr-uhdgps.lwr:description: Blocks to assist in GPS Data logging with UHD and a GPSDO gr-etcetera/inspectrum.lwr:description: recorded data browser gr-etcetera/rtl_433.lwr:description: 433MHz generic data receiver using RTL2832 DVB dongle gr-etcetera/simple_radio_astronomy.lwr:description: integrated radio astronomy receiver for GNU Radio