ClockworkPi uConsole: SDRの第一歩 〜ドングルRTL-SDRを接続してFMラジオを聴いた〜

ClockworkPi uConsole: SDRの第一歩 〜ドングルRTL-SDRを接続してFMラジオを聴いた〜
Page content

SDRというものに触れてみたい

SDR、すなわちSoftware Defined Radio (ソフトウェア無線) という世界があることを私が初めて知ったのは、2017年4月の総関西サイバーセキュリティLT大会(第2回)に参加して、@v_avengerさんによるLT「ハッカーの嗜み RTL2832UチップとSDR」を聞いたときです。

SDRはとても面白そうで衝撃を受けたことを覚えていますが、あれは6年も前のことなのか (苦笑)。SDRへの興味関心は種火のごとく生きていて2022年6月にまずは書籍『RFワールド No.44 GRCで広がるSDRの世界』を入手し、そして先日のuConsole購入をきっかけに、SDRできるUSBドングル「RTL-SDR Blog V3」も入手。いよいよ、手元でSDRを試せる準備が整いました。

そこで今回は、uConsoleにドングルRTL-SDRを接続し、FMラジオの電波を受信して音の復調を確認するまでをやってみました。

購入したもの

商品名・書籍名購入時の価格購入店
RTL-SDR Blog V3 R860 (R820T2) RTL2832U 1PPM TCXO SMA Software Defined Radio with Dipole Antenna Kit6,217円AliExpress
RFワールド No.44 GRCで広がるSDRの世界(中古) 1,450円Amazon.co.jp

RTL-SDRは様々なところから入手できそうですが、私がAliExpressで購入した理由は、RTL-SDR公式ページからしっかりリンクされているためです。

なお、上記AliExpressの商品と同等と思われる商品がAmazon.co.jpにも存在していますが、公式な品物かどうかは不明です。

RTL-SDR Blog V3 R860 RTL2832U 1PPM TCXO HF バイアスティー SMAソフトウェア定義無線 ダイポールアンテナキット付き ブラック

RTL-SDR Blog V3 R860 RTL2832U 1PPM TCXO HF バイアスティー SMAソフトウェア定義無線 ダイポールアンテナキット付き ブラック

RTL-SDR Blog

RFワールド No.44 GRCで広がるSDRの世界

RFワールド No.44 GRCで広がるSDRの世界

トランジスタ技術編集部 (著)

RTL-SDR with Dipole Antenna Kitの開封の儀 (写真)

FMラジオを聴くまで

Step-1. RTL-SDRを接続

uConsoleにRTL-SDRを接続した状態でのlsusbの出力は次の通りで、USBデバイスとしての認識は問題なさそうです。

$ lsusb
Bus 001 Device 004: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
Bus 001 Device 003: ID 1eaf:0024 Leaflabs uConsole
Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

余談として。実物を手にして初めて気づいたのですが、uConsoleのUSB-AポートにドングルRTL-SDRを直挿しすると、隣のUSB-Cのポートと干渉します。両方のポートを同時利用したい場合は、たとえばUSB type-Aの延長ケーブルなどが必要になります。

Step-2. GNU RadioとGqrxをインストール

GNU Radio

Raspberry Pi OSがベースであるuConsole標準OSのリポジトリに、定番のGNU Radioは含まれていますので、aptコマンドでインストールしてみました。rtl_testによるRTL-SDRの認識も問題なし。

$ sudo apt install gnuradio # このときにrtl-sdrもインストールされたようだ

$ rtl_test -t
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Detached kernel driver
Found Rafael Micro R820T tuner
Supported gain values (29): 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6 
[R82XX] PLL not locked!
Sampling at 2048000 S/s.
No E4000 tuner found, aborting.
Reattached kernel driver

なお、aptでGNU Radioがさくっとインストールできる点は良いのですが、記事執筆時点でのバージョンは「3.8.2.0」と古めのようです。今後もしこの古さが問題になるときには、別のインストール方法を検討することになるかもです。

Gqrx

私のような初心者には、GNU Radioは初見で利用できるとっつきやすいソフトウェアとは言えません (深夜帯の脳みそにはなんのこっちゃかわからずギブアップです)。GNU Radioは次回のお楽しみにすることにして、とりあえずSDRが機能している証としての電波の「ウォーターフォール」っぽい表示が見たいので、Gqrxをインストールします。インストール方法は公式ページに記載の通りです。

  • Gqrx SDR for the Raspberry Pi – Gqrx SDR

    To install Gqrx from the Raspberry Pi software repository, open the Applications menu, select Preferences → Add / Remove Software, and search for Gqrx. After installation, Gqrx will be available in the Internet section of the Applications menu.

Step-3. GqrxでFM放送にチューニングを合わせる

Gqrxをデスクトップ画面のアプリケーションメニュー > Internet から起動し、次の操作を行いますと、FM放送の音が聴けました。

  1. 右側にあるModeを「WFM (Stereo)」に変更
  2. メニューバー左端の▶ボタン「Start DSP Processing」を押す
  3. 周波数を適当なFM放送電波に合わせる

所感

FMラジオは自分が10代のころから聴いて慣れ親しんでいるわけでその受信に新鮮味は無いはずなのですが、電波がリアルタイムに画面で見えるようになった小型コンピュータからその音が聞こえるところに、なんとも言えぬ新しさと不思議さを感じました。無線機化したuConsoleを持ち歩いて、様々な周波数の受信に励んでみたい気持ちです。また、GNU Radioを駆使するとテレビのワンセグ受信もできるようなので、次回以降にチャレンジしたいと思います。

周波数手帳ワイド2023-2024(三才ムック)

周波数手帳ワイド2023-2024(三才ムック)

ラジオライフ編集部 (編集)

RFワールド No.44 GRCで広がるSDRの世界

RFワールド No.44 GRCで広がるSDRの世界

トランジスタ技術編集部 (著)