Building A Swiss Army Lab With Software Defined Instrumentation

It’s a fair bet that anyone regularly reading Hackaday has a voltmeter within arm’s reach, and there’s a good chance an oscilloscope isn’t far behind. But beyond that, things get a little murky. We’re sure some of you have access to a proper lab full of high-end test gear, even if only during business hours, but most of us have to make do with the essentials due to cost and space constraints.

The ideal solution is a magical little box that could be whatever piece of instrumentation you needed at the time: some days it’s an oscilloscope, while others it’s a spectrum analyzer, or perhaps even a generic data logger. To simplify things the device wouldn’t have a physical display or controls of its own, instead, you could plug it into your computer and control it through software. This would not only make the unit smaller and cheaper, but allow for custom user interfaces to be created that precisely match what the user is trying to accomplish.

Wishful thinking? Not quite. As guest host Ben Nizette explained during the Software Defined Instrumentation Hack Chat, the dream of replacing a rack of test equipment with a cheap pocket-sized unit is much closer to reality than you may realize. While software defined instruments might not be suitable for all applications, the argument could be made that any capability the average student or hobbyist is likely to need or desire could be met by hardware that’s already on the market.

Ben is the Product Manager at Liquid Instruments, the company that produces the Moku line of multi-instruments. Specifically, he’s responsible for the Moku:Go, an entry-level device that’s specifically geared for the education and maker markets. The slim device doesn’t cost much more than a basic digital oscilloscope, but thanks to the magic of software defined instrumentation (SDi), it can stand in for eleven instruments — all more than performant enough for their target users.

So what’s the catch? As you might expect, that’s the first thing folks in the Chat wanted to know. According to Ben, the biggest drawback is that all of your instrumentation has to share the same analog front-end. To remain affordable, that means everything the unit can do is bound by the same fundamental “Speed Limit” — which on the Moku:Go is 30 MHz. Even on the company’s higher-end professional models, the maximum bandwidth is measured in hundreds of megahertz.

Additionally, SDI has traditionally been limited to the speed of the computer it was attached to. But the Moku hardware manages to sidestep this particular gotcha by running the software side of things on an internal FPGA. The downside is that some of the device’s functions, such as the data logger, can’t actually live stream the data to the connected computer. Users will have to wait until the measurements are complete before they  pull the results off, though Ben says there’s enough internal memory to store months worth of high-resolution data.

Of course, as soon as this community hears there’s an FPGA on board, they want to know if they can get their hands on it. To that end, Ben says the Moku:Go will be supported by their “Cloud Compile” service in June. Already available for the Moku:Pro, the browser-based application allows you to upload your HDL to the Liquid Instruments servers so it can be built and optimized. This gives power users complete access to the Moku hardware so they can build and deploy their own custom features and tools that precisely match their needs without a separate development kit. Understanding that obsolescence is always a problem with a cloud solution, Ben says they’re also working with Xilinx to allow users to do builds on their own computers while still implementing the proprietary “secret sauce” that makes it a Moku.

It’s hard not to get excited about the promise of software defined instrumentation, especially with companies like Liquid Instruments and Red Pitaya bringing the cost of the hardware down to the point where students and hackers can afford it. We’d like to thank Ben Nizette for taking the time to talk with the community about what he’s been working on, especially given the considerable time difference between the Hackaday Command Center and Liquid’s Australian headquarters. Anyone who’s willing to jump online and chat about FPGAs and phasemeters before the sun comes up is AOK in our book.


The Hack Chat is a weekly online chat session hosted by leading experts from all corners of the hardware hacking universe. It’s a great way for hackers connect in a fun and informal way, but if you can’t make it live, these overview posts as well as the transcripts posted to Hackaday.io make sure you don’t miss out.

The Raspberry Pi Pico As An SDR Receiver

With the profusion of cheap RTL-SDR devices and the ever-reducing prices of more capable SDRs there might seem to be little place left for the low-bandwidth devices we’d have been happy with a decade or more ago, but there’s still plenty to be learned from something so simple. It’s something [Luigi Cruz] shows us with a simple SDR using the analogue-to-digital capabilities of the Raspberry Pi Pico, and since it works with GNU Radio we think it’s rather a neat project. CNX Software have the full story, and and quickly reveal that with its 500k samples per second bandwidth it’s not a machine that will set the SDR world on fire even when pushing Nyquist’s Law to the limit.

So with the exception of time signals and a few Long Wave broadcast stations if you live somewhere that still has them, you’ll need a fliter and receive converter to pull in anything of much use radio-wise with this SDR. But a baseband SDR with a couple of hundred kHz useful bandwidth and easy hackability through GNU Radio for the trifling cost of a Raspberry Pi Pico has to be worth a second look. You can see it in action in the video below the break, and if you’re at a loss for what to do with it take a look at Michael Ossmann and Kate Temkin’s 2019 Superconference talk.

Continue reading “The Raspberry Pi Pico As An SDR Receiver”

Friday Hack Chat: GNU Radio

Software defined radio picked up a lot of popularity when it was discovered that cheap USB TV tuners were functional bits of hardware that could become SDRs. It’s the software that makes this possible, and when it comes to SDR software, there’s no better tool than GNU Radio. For this week’s Hack Chat we’re going to sit down with some of the people behind this awesome software tool and pick their brains.

Our guests for this week’s Hack Chat will be Derek Kozel and Nate Temple, officers of the GNU Radio project. They’re also organizers of this year’s GNU Radio Conference. Also joining in on the Hack Chat will be Martin Braun, community manager, PyBOMBS maintainer, and GNU Radio Foundation officer.

GNU Radio is perhaps the most important bit of any software defined radio toolchain. This is the software that provides signal processing blocks to implement software defined radios. GNU radio is how you take a TV tuner USB dongle and pull images from satellites. You can use it for simulation, and GNU Radio is widely used by hobbyists, academics, and by people in industry.

For this week’s Hack Chat, we’re going to be talking all about GNU Radio. What can you do with it? Was the interface really inspired by MaxMSP? All that and more in this week’s Hack Chat.

  • Various bits of hardware that make GNU Radio work
  • The core process of writing modules
  • Upcoming features of GNU Radio

You are, of course, encouraged to add your own questions to the discussion. You can do that by leaving a comment on the GNU Radio Hack Chat Event Page and we’ll put that in the queue for the Hack Chat discussion.join-hack-chat

Our Hack Chats are live community events on the Hackaday.io Hack Chat group messaging. This week is just like any other, and we’ll be gathering ’round our video terminals at noon, Pacific, on Friday, August 31st. Need a countdown timer? We should look into hosting these countdown timers on hackaday.io, actually.

Click that speech bubble to the right, and you’ll be taken directly to the Hack Chat group on Hackaday.io.

You don’t have to wait until Friday; join whenever you want and you can see what the community is talking about.

GPS And SDR Combine Forces

Software-defined radio (or SDR) is a relatively new (to average tinkerers, at least) way of sending and receiving radio signals. The interest in SDR exploded recently with the realization that cheap USB TV tuner cards could be used to start exploring the frequency spectrum at an extremely reduced cost. One of the reasons that this is so advantageous is because of all of the options that a general-purpose computer opens up that go beyond transmitting and receiving, as [Chris] shows with his project that ties SDR together with GPS.

The goal of the project was to automatically tune a radio to the local police department’s frequency, regardless of location. To do this, a GPS receiver on a computer reports information about the current location. A JavaScript program feeds the location data to the SDR, which automatically tunes to the local emergency services frequencies. Of course, this relies on good data for what those frequencies are, but this is public information in most cases (at least in the US).

There are a lot of opportunities here for anyone with SDR. Maybe an emergency alert system that can tune to weather broadcasts if there’s a weather alert, or any of a number of other captivating projects. As for this project, [Chris] plans to use Google’s voice recognition software to transcribe the broadcasts as well. The world of SDR is at your fingertips to do anything you can imagine! And, if you’re looking to get started in it, be sure to check out the original post covering those USB TV tuner dongles.

Etch-A-SDR

What do you get if you cross a software defined radio (SDR) and an iconic children’s drawing toy that we are sure is a trademarked name? If you are [devnulling], you wind up with the Etch-A-SDR. The box uses an Odroid C1, a Teensy, and the ubiquitous RTL-SDR.

The knobs work well as control knobs (as you can see in the video below). When you are bored listening to the radio, you can reset the box and go into Etch-a… um, drawing mode. The knobs work like you’d expect and you can even erase the screen with a vigorous shake.

Continue reading “Etch-A-SDR”

Cracking GSM With RTL-SDR For Thirty Dollars

Theoretically, GSM has been broken since 2003, but the limitations of hardware at the time meant cell phone calls and texts were secure from the prying ears of digital eavesdroppers and all but the most secret government agencies. Since then, the costs of hardware have gone down, two terabytes of rainbow tables have been published, and all the techniques and knowledge required to listen in on cell phone calls have been available. The only thing missing was the hardware. Now, with a super low-cost USB TV tuner come software defined radio, [domi] has put together a tutorial for cracking GSM with thirty dollars in hardware.

Previous endeavours to listen in and decrypt GSM signals used fairly expensive software defined radios – USRP systems that cost a few thousand dollars a piece. Since the advent of RTL-SDR, the price of software defined radios has come down to about $30 on eBay, giving anyone with a Paypal account the ability to listen in on GSM calls and sniff text messages.

The process of cracking GSM first involves getting the TMSI – Temporary Mobile Subscriber Identifier – a unique ID for each phone in a certain cell. This is done by sending a silent SMS that will send back and acknowledgement an SMS has been received on the victim’s phone, but won’t give the victim any indication of   receiving a message.

From there, the attacker listens to the GSM signals in the cell, receiving bursts attached to a TMSI, and cracking the encrypted stream using 1.6 TB of rainbow tables.

[domi] put up a four-part tutorial series (part 1 above; part 2, part 3, and part 4) that goes over the theory and the actual procedure of cracking text messages and voice calls with a simple USB TV tuner. There are a few limitations; the attacker must be in the same cell as the victim, and it looks like real-time voice decoding isn’t yet possible. Cracking GSM for $30, though, that’s good enough for us.

HackRF, Or Playing From 30 MHz To 6 GHz

Up on Kickstarter, [Michael Ossmann] is launching the HackRF, an inordinately cheap, exceedingly capable software defined radio tool that’s small enough to lose in your laptop bag.

The HackRF was the subject of a lot of interest last time it was on Hackaday – the ability to receive up to 6GHz allows the HackRF to do a lot of very interesting things, including listening in on Bluetooth, WiFi, and 4G networks. Also, the ability to transmit on these frequencies means a lot of very interesting, and quite possibly slightly evil applications are open to anyone with a HackRF. Like the RTL-SDR dongles, the HackRF works with GNU Radio out of the box, meaning all those cool SDR hacks we’ve seen so far will work with this new, more powerful board.

Compared to the USB TV tuner cards that were so popular a year ago, the HackRF has 10 times the bandwidth, is able to receive up to 6GHz, and is also able to transmit. It’s only half-duplex, so to receive and transmit simultaneously you’ll need two HackRFs, or maybe wait for a hardware revision that will hopefully come sooner rather than later.

Below you can check out [Michael]’s presentation at Toorcon where the HackRF was unleashed to the world.

Continue reading “HackRF, Or Playing From 30 MHz To 6 GHz”