Hacker News new | past | comments | ask | show | jobs | submit login
GNU Radio 3.8 (gnuradio.org)
268 points by eplanit on Aug 12, 2019 | hide | past | favorite | 67 comments

I've designed and took my creation, the RadioInstigator, to Defcon.


Runs 3.7 GnuRadio along with a whole slew of tools and antennas to boot. I even put the guy who runs the Wall of Sheep... on the Wall of Sheep. He was running a Logitech clone dongle. Pwned.

My device is GPL3 and on https://gitlab.com/crankylinuxuser/siginttablet . It costs around $150 to build.

Stupid GNU Radio tricks.


Ow, my spectrum.

You can do this safely, just connect two SDRs together with an attenuator :)

I have a LimeSDR. This is where a plugin that allows it to interoperable with GnuRadio can be found: https://wiki.myriadrf.org/Gr-limesdr_Plugin_for_GNURadio

Highly recommended.

I just bought a LimeSDR Mini a few days ago and I've realized it's hard to find software that supports it. Which OS/viewing software have you found that works best with it?

I use it under Ubuntu (19.4) and pipe it into Mathematica.

Did you remove the filters on your lime?


GNU Radio is one of those examples of free software being hyper-niche yet super successful. It's something I want to start playing with in the near future. Anyone got any advice on where to start?

Here's a very good tutorial series. It's targeted at hackRF, but has plenty of general info.


I'm working through his lessons. They're very good.

I don't have a HackRF but I managed to get the "Hello World" flow, i.e., listen to FM broadcast radio going nicely with a cheap RTL-SDR by following lesson 1, but changing the sample rate.

The version of GNU Radio in the Ubuntu apt-get repos for 18.04 is fairly recent but the GQRX project has a PPA which includes GNU Radio which will hopefully be updated more frequently.

With default Ubuntu I had problems with the WX slider not moving. I didn't realize that WX widgets are old and the advice is to use QT. WX is removed in this latest version.

FWIW, I've since switched to Kubuntu on the same hardware and all widgets work well including WX but I have followed advice and now use QT.

The sound sink seems to work better if you bypass PulseAudio. Give the sink a device name, probably hw.

I'm eagerly waiting for one of these that I preordered. https://airspy.com/airspy-hf-discovery/ I don't have it yet so I can't swear by it but every report from those who have one seems to be very good if you want a general purpose receiver. It covers 0.5 kHz (yes 500 Hz) to 31 MHz and 60 to 260 MHz so not as wide as some but ... I'm mostly interested in HF so plenty wide enough for me.

I wish there were more :(

I don't know the specifics of GNU Radio, but if you want to transmit, start by getting your amateur radio license. In the US, you should be able to get your Technician license with a half day of study and a quick test. Here's one good place to get started:


IME getting a license is not really that valuable unless you care about phone or CW.

Also, if you do get a license, register it to a PO box.

It's valuable if you care about transmitting. Sure you can transmit under part 15 or other unlicensed transmission rules, but you have to maintain extremely low power that is typically not very useful for communication.

On PO Boxes, I don't think it does much to thwart a person looking for your address. It's one single barrier, but anyone can find anyone's legal mailing address via whitepages/public record using only a name and location.

You need a license to transmit in the digital portions of the amateur bands as well.

True, but there are a ton of cool things you can do just in ISM. And depending on where you are, your local repeater may not be the most welcoming place, especially if you're not the typical middle age white male.

Depends what you're looking to do. ISM bands are limited to 1W transmit power, and the lowest frequency band with more than a few kHz available in the US is the 902-928 band. High frequency and low power combined tend to mean relatively short range. That being said, I work with 900MHz radio for a living (among other bands), and you can get impressive results in the 1-20 mile range with the right technology and infrastructure.

A $10 ham license opens up a significant amount of bandwidth, and power up to 1500W.

It's also recommended to use Pentoo Linux, much of the open source SDR software out there is tricky to get set up.

I'd grab an RTL-SDR, a thumb drive with Pentoo, and then you can play around in the live environment very easily.

Another is KiCad.

Out of curiosity, has anyone implemented a dial-up modem with GNU Radio? Or if not, what would need to be implemented, V.92?

Not using GNU Radio but perhaps you might be interested in http://www.whence.com/minimodem/. It only supports really old standards, up to 1200bps. But later modems should, in theory, be backward compatible so if you don't care about speed this could possibly work.

http://www.whence.com/minimodem/ does bell 103 https://www.youtube.com/watch?v=1Pmxkt9mYgM

This dude https://www-users.cs.york.ac.uk/~fisher/modem/ wrote V.32 soft modem stack for SGI Indy back in 1996

I remember reading back in the day in hacker zines about magic police modem tapping boxes, but no idea how would that work in the age of echo cancellation.

You'd need to get the secret info on the frequency hopping scheme as well as the shared encryption key. I've heard of units being ripped out of police cars for this reason.

I meant dialup modem tapping. 2600 or phrack had something about feds being able to wire into telephone line and record/live decode modem connection. You could easily write something like this in GNU Radio for <=2400 links (or use minimodem), but anything higher transmits full duplex on same frequencies - both modems mutually jam each other.

I found this from 2010, that uses GNU radio piped into a soft modem: http://oz9aec.net/radios/gnu-radio/connecting-gnu-radio-to-t...

Which would be the easiest way, unsure if you could do it purly in GNU Radio as not that up upon it, though software modems been around for a while, and more optimised code for the task. Historically the earliest software modems date back to the 90's.

Would it be possible to use this as the infrastructure for a clandestine, low-bandwidth, text-based mesh network? An internet for nerds kind of thing.

Yes, but also no.

Firstly, it's not a new idea. Folks use JS8call (formerly FT8call). It's quite sophisticated and can work even below the noise floor. Folks have even gotten it to work in pretty ridiculous conditions. It has comically low bandwidth but works at comically low power.

That said, the only place I think this would be "clandestine" is in urban environments where there is a lot of reflection. Modern electronics and antennas get the benefit of very high fidelity simulation, so finding a signal with professional gear (especially if it's cutting edge and understands modern maps) is pretty wild. I saw a demo of a very expensive system that used Google Earth as its UX a few years ago, and it could do some amazing things.

Even in cluttered environments with low power transmitters, it still isn't very secretive. Amateur radio does this thing called "fox hunting" where they use a variety of handheld elements to quickly track down low power signals. Some of these contests get pretty technical, with the target transmitter being highly directional on some axis and deliberately casting false reflections, and lately they're entirely solar/lifepo4 so they're power constrainted.

But folks with a bit of training and practice can find them really quick.

If you want to be clandestine, then actually what you want to do is overlay your network over existing networks so that your traffic is difficult to isolate from a computationally infeasible flood.

With clandestine I just meant unobvious, not perfectly hidden.

In that case just 𐑤𐑻𐑯 ·𐑖𐑱𐑝𐑾𐑯, 𐑥𐑱𐑚𐑰? Works on the regular internet.

Yes, for a definition of "low-bandwidth" that you'll probably find disappointing. The WSJT digital modes are capable of long-range communication at well below the noise floor, but we're talking about single-digit bits per second in typical use.


What about short, rare bursts of high bandwidth transmissions from a mobile platform?

Depending on how creative one was about the locations and operation times of the transmitter, I'd expect it'd be pretty difficult to find.

Those transmissions won't go more than the next slight rise in the ground or valley. High data rate requires line of sight which requires height above terrain which requires either money or rare luck.

"High data rate requires line of sight which requires height above terrain which requires either money or rare luck."

What about a transmitter temporarily sent aloft on a balloon, model rocket, or drone, then making its brief high-bandwidth transmission and then parachuting or landing, being retrieved by its operator who then disappears until the next transmission from another location?

It might even be disposable, and potentially either deliberately sink itself in to an ocean or other difficult to access place, and/or self-destruct to make recovery and forensics more difficult.

> High data rate requires line of sight

This isnt true. High data rate requires large channel size, which is certainly more commonly found in >1GHz portions of radio spectrum that require line of sight. But, a 10MHz channel is just as fast at 400MHz as it is a 4GHz. HDTV doesnt require line of sight to gets tens of megabits on VHF/UHF channels.

In what legal jurisdiction can you use a 10 MHz bandwidth channel under <30 MHz (where you actually get ionospheric bounce (sometimes))?

And even worse than the answer to that (nowhere) is that in the USA the data rate limit is actually in terms of symbol rate, not bandwidth used, to a mere 300 baud for the bands that have regular non-line of sight propagation.

> In what legal jurisdiction can you use a 10 MHz bandwidth channel under <30 MHz (where you actually get ionospheric bounce (sometimes))?

I never implied you could? Its certainly possible in VHF/UHF, though (for licencees).

> And even worse than the answer to that (nowhere) is that in the USA the data rate limit is actually in terms of symbol rate, not bandwidth used

Sure, but those limits only apply for HF and longer-wavelength frequencies. You're welcome to do 256QAM in the microwave range, for example.

> Its certainly possible in VHF/UHF, though (for licencees).

>You're welcome to do 256QAM in the microwave range, for example.

Which gets back to line of sight propagation (tropo is not common) and everything I said in my first post.

I've tried the home to car omnidirectional link thing on 902-928 MHz. All that matters is line of sight. I tried a 25w bidirectional amp (ham general license) and that didn't help. I tried bringing the ubiquiti transceivers w/broadband hamnet firmware all the way down to QPSK modulation and the narrowest channel I could. I even tried using narrowband 56k telemetry dongles. I customed designed and built my own microstrip based filters for the front ends.

The only thing that really helps, and it's not enough, is height above terrain. When I go park my car on the hills outside of town megabits are possible. But the slightest hill or valley losing LOS kills it.

Shh... don't tell anyone!


That is a lot of changes. Finally got rid of wxgui.

What was wrong with wxgui? I never understood that. For years everyone was saying don’t use it, but wxgui widgets always seemed much more polished and usable. For example, the wxgui waterfall diagram was far beyond anything I could find in qtgui.

I haven’t used GNU radio in maybe a year, so I don’t know what this release brings.

I agree with you; a wxgui will call the native graphic API of the platform directly while Qt is reimplementing everything, and most of the time it's not GPU accelerated.

I am currious to hear about how CPU intensive are the 2 versions, wxgui vs Qt.

I have no personal issue with it, it's just that the developers have been saying not to use it for a while, at some point I begin to wonder why even include it any longer.

Anyone got any recommendations for hardware and a few first projects to learn about SDR, especially kid-friendly stuff?

The Install Gentoo wiki from /g/ has a good beginner's guide. Unfortunately, it looks like the wiki is down right now, but here's an archive of the SDR page.


Great documentation, but strange that they include a screenshot from a Windows application...

Just get a $30 RTLSDR kit from Amazon. Plenty of easy/fun projects, only caveat is its read(listen) only. Track planes, listen to TV/Radio/watch your garage door clicker/listen to satellites/the space station/a million other things.

If you like it and want to take things further, buy a limesdr mini or bladerf or something. By then you'll feel constrained by the rtlsdr and know better what you want.

Adalm Pluto if you also want to send.

LimeSDR mini.

What would i use GNU Radio for?

You use it to program/run a Software Defined Radio (SDR). SDR makes radios cheap, versatile and programmable.

As a non-licensed radio operator you can get a cheap USB connected receiver and use GNU radio to receive, demodulate and decode all sorts of signals.

It's fun to learn about how to decode certain signals. You start with a simple AM demodulator to listen to music stations and before you know it you're tracking airplanes and hacking keyfobs.

You can do arbitrary processing of radio signals, from basic FM radio decoding to interpreting images of the earth from space sent by satellites. You can also figure out the protocol for toy RF cars / boats and control them from whatever software you like.

It's a really powerful and cool way to explore the EM spectrum around you right now.

picking up airplane position-indicator feeds with a DTV USB-stick and mapping the into a display in an rPi?

You could use it for that but there is software made specifically for this, like dump1090 for Linux (here for other options: https://www.rtl-sdr.com/adsb-aircraft-radar-with-rtl-sdr/)... What I found funny when I tried it is that many small airplanes don't broadcast that signal... are they FBI's planes?

Another interesting use can be reading your electric meter (and the ones of your neighbors), using GNU Radio or https://github.com/bemasher/rtlamr .

Another one, is reading TPMS from your car wheels (or cars that are passing by): https://www.rtl-sdr.com/receiving-decoding-tire-pressure-mon... , https://github.com/jboone/tpms

Half of the fun is implementing the radios yourself, it's a great learning exercise.

For me it is a quarter of the fun.... much more fun to see all the data that is available to anyone over the air....

For licensed ham radio operators, can GNU Radio work with platforms like the FlexRadio transceivers? Can it send PSK-31 or JT65? I see a lot of projects/documentation related to using it for all sorts of wireless communication, but can't find a ton of stuff as it relates to ham radio.

I have found gnu radio rather hard to use...

I just want a GUI tool which lets me take data streams, mix them, add them, run a function over them, preview them as a scope, power spectrum or IQ chart, play them through a speaker, decode them as mpeg, GPS signals, or anything else.

It seems GNU radio offers all that, but is so fiendishly hard to use it's easier just to write code in C to process my data as I want and plot it with matplotlib.

Same here. I needed a CLI based RTTY decoder but could not get it done in GNU radio. It turned out to be easier to code this in C++ [1], though I had to learn a lot on the way. GNU radio has step learning curve...

[1] https://github.com/ogre/habdec

Not quite what you are describing, but Universal Radio Hacker is a useful tool for reverse engineering protocols.


Excellent. What a great tool for SDR.

And for hacking car key fobs.

Been out of the SDR community a while. What's the best SDR transceiver that can transmit?

I used bladeRF last.

Gnu radio is great thanks to all the developers for the latest realease enjoy fun tinkering with radio!

Kudos to the GR team. Now I have some stuff to move to 3.8.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact