PlutoSDRはアナログデバイセズ製のSDR入門機。愛用のUSBオシロADALM2000とボディ形状がほぼ同じで兄弟デバイスみたいな物。
帯域幅も最大20MHzとADALM2000のA/D変換とほぼ同等のスペックだが、SDRなので325MHz〜3.8GHzの送受信に対応する。ただ対応するRF周波数の範囲はHackRF Oneの1MHz〜6GHzよりは狭い。
今回は、このPlutoSDRをGNURadio用にセットアップしたので、記事にまとめる。
ドライバとGNURadio用ブロックのインストール
Windows用のインストーラが用意されているわけでもなくお世辞にも簡単セットアップとは言えない。ソースからのビルドが基本でインストール方法は下記公式サイトにまとめられている。
CMakeベースなのでビルド手順そのものは簡単だが、Windows上だとビルドすること自体が面倒臭いのでUbuntu環境で設定することにした。どうしてもWindows上で動かしたい場合は、ADALM2000のようにWSL上で動作させるのが良さそう。
バイナリパッケージのインストール
まずは依存ライブラリのインストールをしておく。
sudo apt install libxml2 libxml2-dev bison flex cmake git libaio-dev libboost-all-dev libavahi-common-dev libavahi-client-dev swig
ドライバのインストール
libiioのソース取得/ビルド/インストール。
git clone https://github.com/analogdevicesinc/libiio.git
cd libiio
cmake .
make
sudo make install
libad9361-iioのソース取得/ビルド/インストール。
git clone https://github.com/analogdevicesinc/libad9361-iio.git
cd libad9361-iio
cmake .
make
sudo make install
GNURadio用入出力ブロック
システムにインストールされているGNURadioのバージョンによってソースコードが変わるので注意。GNURadioのバージョンは”gnuradio-config-info -v”コマンドで調べることが出来る。
- GNURadio3.7の場合
git clone https://github.com/analogdevicesinc/gr-iio.git
- GNURadio3.8の場合
git clone -b upgrade-3.8 https://github.com/analogdevicesinc/gr-iio.git
ソースを取得したら以下のコマンドでビルド&インストールを実行。
cd gr-iio
cmake .
make
sudo make install
sudo ldconfig
2.4GHz帯を受信して動作確認
お約束のFMラジオを動かしてみようと思ったのだが、PlutoSDRの受信可能周波数は325MHz〜なので範囲外。そこで、SMA接続のロッドアンテナを取り付けて2.4GHz帯をスペアナ表示してみた。断続的にスペクトルが立ち上がってWiFiかBluetoothか何らかの通信が行われている様子が確認出来る。
まとめ
PlutoSDRのUbuntuへのセットアップについてまとめた。ドライバやGNURadio用ブロックはソースからのビルドが必要ではあるが、特に躓くこと無くインストール出来た。
良い活用法が思いついてないのだが、ワンセグ受信には成功したので、直近ではワンセグ録画機として使っている。
コメント