gqrx

Uncategorized
この記事は約7分で読めます。

gqrxは、HackRF Oneなどで電波から変換されたデジタル信号を解析する、SDR(ソフトウェアラジオ)を構成するオープンソースソフトウェアです。

元々は ‘hachrf_info’ というツールを調べていまして、そのツールが ‘HackRF One’ というデバイスの状態を調べるものだと判明いたしました。
で、その ‘HackRF One’ を購入しまして、そのついでに無駄にアマチュア無線技士3級の免許をとりまして、さあ ‘HackRF One’ を使い倒すぞ! 
と、今に至っている次第です。

今回の目標は、 ‘HackRF One’ + ‘gqrx’ の組み合わせでFMラジオを聞くことです。

何だかkaliの勉強とは違う方向に行ってしまっちゃってスミマセン。

HackRF Oneの確認

まず ‘hackrf_info’ ツールで、 ‘HackRF One’ の存在確認を行います。

正常に認識されています。

hackrf_info

予めラズパイ本体と ‘HackRF One’ をUSB接続しておきます。
HackRF One1HackRF One2]
USB給電でランプが点灯します。

インストール

上記にてインストールが始まりますが、私の環境では下記のようなErrorが途中で出ました。

gqrx-sdr install

‘XTRX’ という古いデバイスのドライバをビルドしようとして出たエラーのようです。

‘gqrx’ 本体そのものは無事インストールされています。

which gqrx

apt時にエラーが続く場合

設定途中の ‘xtrx-dkms’ を削除します。

念の為、以下を順に行います。

インストール後は、kaliメニュー ー 01-Recconnaissance ー Radio Frequencyの下に、 ‘gqrx’ ツールが登録されます。

念の為追加インストール

install libhackrf-dev

上記では ‘hackrf’ は既に(デフォルトで)入っています。

ちなみに ‘hackrf’ 関連のコマンド群は以下の9つです。

‘libhackrf-dev’ は、HackRF Oneをプログラム上で制御するための開発用ライブラリとヘッダファイルです。
HackRFを使うだけなら必須ではありませんが、ソフトウェアをコンパイルする場合には必要になることが多いです。
そしてSDRソフトウェアの中にはインストール時に ‘apt’ に対応しておらず、buildする必要のあるソフトウェアがあります。

gqrx起動

以下のコマンドで起動します。

まずは ‘I/Q Input’ の設定画面が出ます。

Device欄には上記 ‘hackrf_info’ で調べたserial number欄の数字と同じものを選びます。

Configure I/O device

初期推奨設定

項目設定
Input Rate10 Msps
Decimation4
Bandwidth5 MHz
LNB LO0MHz

‘✔︎OK1’ を押して次へ進みます。

この画面は後からでも設定できます。(左上 ‘File’ メニューの ‘I/Q Devices’ から)

I/O Device

操作と設定

初期画面はこんな感じ。

console

左上の▶︎ボタンをクリックすると電波の走査が始まります。

console play

マウスのカーソルを合わせると、その場に説明が出る and/or 左下に説明が出ることが多いです。

左下エリア(ウォーターフォール)

  • 青は電波の無い周波数の部分、それ以外の色がついている周波数は何らかの電波を拾っています。(下表)
  • 青い部分の時に「ザー」という砂嵐音が聞こえれば音の再生は出来ています。
線の種類意味
縦線常時送信:FM放送局など
断続的な線業務無線(航空無線など)
太い帯域デジタル通信

左上エリア(FFTスペクトラム)

操作

  • 上部の大きな数字は周波数(直接数値を入力出来るし、カーソルを合わせるとマウスホイールで増減します)
  • その右の緑の横線は信号の強さ(長いほど強い)
  • その下の赤の縦線が現在の周波数の位置(クリックで移動できます)
  • 横に走るギザギザの波が電波の強さ(強い電波の周波数部分は高い波)です。このあたりにカーソルを持ってきてマウスホイールを動かすと周波数の微調整が効きます。
  • その下の周波数帯が数値表示されているあたりではカーソルが🖐️のマークに変わり、マウスホイールで周波数レンジの調整が出来ます。

信号の見分け方

信号備考波形
本物の信号周波数が安定している
アンテナを付けると強くなる
復調すると音声やデータが得られる
FM放送では帯域幅200kHzの山
ノイズ画面全体に広がる
復調してもザー音
位置が一定でない
ギザギザの波
スプリアス(偽信号)アンテナを外しても消えない
周波数を変えても付いてくる
等間隔に出る
復調しても意味がない
高い山

*スプリアス:デバイスの内部で発生する(漏出する)不要な信号

右上エリア

3つのTabがあります(Input, Reciever, FFT)

Input controlsタブ

Input controls

初期推奨設定

項目設定
LNB LO0MHz
LNA16.0dB(信号弱い場合は24dB)
AMP0.0dB
VGA16.0dB(信号弱い場合は24dB)
DC remove✔︎
IQ balance✔︎
Freq correction0.0ppm

Receiver Optionsタブ

Reciever Options

Filter width:Wideを推奨

mode:電波の型式:FM放送受信の場合は、WFM(mono)推奨

FFT Settingsタブ

FFT Settings
Screenshot

右下エリア

Audio

Audio

Gain :信号の強さ

Mute:音声をミュート

UDP:UDP経由のraw audioをストリーミング

Rec:記録開始(後で他のアプリなどで解析可能です)

記録されたファイルはGUIで見るとこんな表示になります。

Play:記録したファイルのプレイバック

:Audio設定

まとめ

今回はとりあえず地元のFM放送を受信することに成功しました。(予め地元のFM局周波数を調べておき、その近くをサーチします)

場所がマンションの屋内であり、アンテナも小さく、受信条件が悪いため、本物のFMラジオの音質とまでは行きませんが。

最初から電波が全く聞こえない場合は、予め本物のFMラジオで感度の良い場所を調べておいた方が良いでしょう。

ちなみに付属アンテナ(ANT500)の長さは17cmですが、85cmまで伸ばすことが出来ます。
300MHz/アンテナ長の2(4)倍(m)が適合する周波数となります。(概ね75MHz〜1GHz)

<PR>

コメント

タイトルとURLをコピーしました