LoginSignup
14
20

More than 5 years have passed since last update.

Raspberry PiでFMラジオを聴く

Last updated at Posted at 2017-04-19

  

市販されているUSBワンセグチューナーをラズパイにつないで、FM電波を受信してみます。

SDR (Software Defined Radio)

SDR(Software Defined Radio)、ソフトウエアラジオとかで検索するといろいろ情報出てきます。
通常ラジカセとかについているラジオは電子回路とかアナログな仕組みを使って、受信電波を復調して出力してますが、これをデジタルで行うのがSDRです。
USBワンセグチューナーは、VHF~UHF帯(30MHz~3GHz)の電波をとれるらしくかなり広域です。
  
・航空無線 (VOR)
・FM放送
・地上波テレビジョン放送
・アマチュア無線

ここら辺の電波がとれるらしい。

環境

・Raspberry Pi 3
・Raspbian
・FM専用アンテナ
RTL-SDR専用カスタムチューナー

めちゃくちゃ発熱する。
温度で受信周波数がずれちゃうらしく、この商品はその対策が施されたカスタム製品。
それでもレビューに「ハンダが溶けた!」とか書いてあるし、24時間運用したいのでヒートシンクベタ付け。
そんなとこつけても意味ないよ!って部分がある気がするけど、とにかくあったかい部分にベタ付けする。
  
ssd.png
親指が深爪気味である。

さぁ、やってみよう!

1. SDRアプリケーション rtl-sdr を使えるようにする。

必要なパッケージのインストール

$ sudo apt-get install autoconf libtool libusb-1.0-0-dev
$ git clone git://git.osmocom.org/rtl-sdr.git

ビルドする

$ cd rtl-sdr
$ autoreconf -i
$ ./configure
$ make

インストール

$ sudo make install
$ sudo make install-udev-rules
$ sudo ldconfig

再起動

$ sudo reboot

これで使えると思いきやエラー出る

$ rtl_test

Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM

Kernel driver is active, or device is claimed by second instance of librtlsdr.
In the first case, please either detach or blacklist the kernel module
(dvb_usb_rtl28xxu), or enable automatic detaching at compile time.

usb_claim_interface error -6
Failed to open rtlsdr device #0.

デバイスがうんたらかんたらと。。。

他のUSBデバイスがいるとrtlsdrがエラーになっちゃう件

↑で解決しました。ありがとうございます。

2. 聴いてみる

# 80.0MHz TOKYO FM を聴いてみる
rtl_fm -f 80M -M fm -s 200000 -r 44100 | aplay -D plughw:0,0 -t raw -r 44100 -f S16_LE

「 これでどこでもFMラジオが聴ける!!! 」

14
20
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
20