
Capture and Decode FM Radio - alfonsodev
https://witestlab.poly.edu/blog/capture-and-decode-fm-radio/
======
dancek
Very nice article. Implementing something commonly known yourself with
instructions tends to be enlightening. The instructions save you maybe 80% of
your time, but you still have the chance to learn how everything works if you
focus. It also gives you confidence.

Some of the best resources I've seen in that regard are nand2tetris and make-
a-lisp.

The SDR community seems to mainly consist of people interested in using
existing software and focusing on the received signals. There's still a lot to
be discovered if more people start writing software to _decode_ the signals.

~~~
jdietrich
_> There's still a lot to be discovered if more people start writing software
to decode the signals._

You might be interested in the GNU Radio project, a modular suite of tools for
building software receivers.

[https://wiki.gnuradio.org/index.php/What_is_GNU_Radio%3F](https://wiki.gnuradio.org/index.php/What_is_GNU_Radio%3F)

You may also be interested in WSJT (ultra-efficient data modes) and FreeDV
(ultra-low-bandwidth voice). A number of people in the amateur radio community
are working on modern modulation and codec systems.

[https://www.physics.princeton.edu/pulsar/K1JT/](https://www.physics.princeton.edu/pulsar/K1JT/)

[https://freedv.org/](https://freedv.org/)

~~~
dancek
Yes, I've been planning to learn GNU Radio. Thanks for pointing me to other
interesting projects, too. I feel like I'll need to gain a better
understanding of radio technology, though.

------
CamperBob2
Very cool introductory article that will leave you knowing more about SDR
signal processing than you might have expected when you first clicked on the
link.

As usual in this business, setting up the development environment will be 90%
of the hassle. But it looks like it'd be well worthwhile for those just
getting started in the field, especially if you're already comfortable with
Python and Linux.

GENI also sounds extremely interesting. Being a Windows-dweller for the most
part, I'd never heard of that before.

------
Abishek_Muthian
Just a few hours back I was checking whether I could capture audio via 3.5mm
from iPad nano, to stream FM radio channels to my smartphone.

I was thinking like 3.5 mm from ipod to RCA & then RCA to Raspberry pi Mic.
Then processing the mic input for streaming.

I think I'll loose the dual channel & also not sure whether I would be able to
control the channels without creating a breakout switch in the line to ipod's
3.5 mm.

Can anyone suggest a better way to do this? There's no Internet Radio in India
& smartphones doesn't have FM radios now a days.

~~~
dancek
You can get a software defined radio for around $25 (see rtl-sdr.com),
allowing you to capture many kinds of radio signals (including FM radio,
amateur radio etc). But I'm sure there are also dedicated FM radio usb dongles
for much cheaper.

~~~
Abishek_Muthian
Thanks. I guess, that would be the sane way to do it. The OP article talks
about Mono channel, does dual channel stereo work just as seamless with RTL-
SDR?

~~~
dancek
Probably. The stereo separation is encoded in the signal, and I think
mainstream SDR software has it working out of the box (but I don't listen to
WBFM). Not decoding in stereo was probably just a simplification for the
article.

Then again, an SDR is overkill if all you'll ever want is FM radio. A
dedicated FM receiver will use less power, take less space and hopefully have
better usability.

~~~
Abishek_Muthian
You're correct. Due to fudged up electronics prices here, DVB-T is cheaper.

------
voltagex_
I've never been able to get clear FM reception through an RTL SDR. I ended up
buying an Arduino powered radio that I should be able to modify to use as a
base for an FM to DLNA project.

~~~
Abishek_Muthian
Do you mean a radio receiver for Arduino? can you provide link for the same, I
would like to check whether it works for RPi.

~~~
voltagex_
No, I was on a phone so probably a bit too terse.

What I bought was [https://www.tindie.com/products/microwavemont/dsp-radio-
vers...](https://www.tindie.com/products/microwavemont/dsp-radio-version-4/)
\- I'll be hooking this up to a Pi with some kind of audio capture and
hopefully modifying the firmware so the frequency can be set via UART.

What I'd really like to know is how hard it would be to hook up the same kind
of chip/circuit to another chip that does USB Class Audio so there's no extra
capture step to get audio to a Pi.

~~~
Abishek_Muthian
thanks, though it will be fun to try that; RTL-SDR method suggest by others
seems reasonable & cost-effective.

------
acidburnNSA
Great article. I love SDR, and this kind of tutorial really brings it into the
home accessibly.

For more, there's another really nice SDR basics course online you can find at
Great Scott Gadgets
([https://greatscottgadgets.com/sdr/](https://greatscottgadgets.com/sdr/))
associated with the HackRF One open-source SDR hardware. It goes into it a bit
with GNU Radio, which is a really incredible project.

------
blackflame7000
I've always wanted to learn more about SDR especially when you think about
just how many signals are present in the air. Thanks for the good
introduction!

