エントリー

SDRサーバ(RTL-SDR)を試す

いつのまにかラジオ関係で楽しんでいるが,本来の目的はNOAA画像受信である(NOAAのカテゴリを作ることにした)

現在NOAA受信用のQFHアンテナはTV(衛星+地デジ)アンテナのケーブルと共用して室内に送っているためノイズが多く受信状態が良好でない場合がある

本来どのくらいの感度があるのか確認するため直接QFHアンテナで受信確認することにした(もっと早くやるべきだったのだけど休日の明るい時にNOAAが近づく事が無かったので遅くなった)

受信試験

衛星の位置が良かったこともあってか感度も良く良好に受信できた

SA_01300114.jpg

(選択にて元の画像が表示される)

受信音もクリアだったのでTVとケーブルを共用しているせい(後日,TVアンテナを外して受信してみたところ室内でもノイズが減ったので間違いない)か経路でノイズを拾っている疑いがある

対策としては,

①QFHアンテナは野外に受信サーバを設置して直接接続

②ノイズ元を取り除く(TVのせいならLPFで対応できるかも

③専用のケーブルで室内に引き込む

があり,そもそも①を前提に考えていたので②③は後回しにしていた(①の実施にあたりラズパイZERO2を調達する予定なのだが4か月も技適待ちなのである)

SDRサーバ

丁度良いので運用は先になるがSDRサーバを試す

サーバはarmbianでセットアップされているNano Pi NEO2があるのでRTL-SDRを試す

IMG_20220201_210215.jpg

RTL-SDRは以下で説明されているが簡単には動かない

https://osmocom.org/projects/rtl-sdr/wiki/Rtl-sdr

いろいろ嵌ったが次の手順で行えば動作する(実行時のメッセージは省略)

開発環境設定

$ sudo apt install cmake
$ sudo apt install libglib2.0-dev

DL&コンパイル

$ mkdir SDR
$ cd SDR
$ git clone git://git.osmocom.org/rtl-sdr.git
(変更あり:https://osmocom.org/projects/rtl-sdr/wiki/Rtl-sdr
$ git clone https://gitea.osmocom.org/sdr/rtl-sdr.git
$ cd rtl-sdr/
$ mkdir build
$ cd build
$ cmake ../ -DINSTALL_UDEV_RULES=ON
$ make
$ sudo make install

(注)コマンドは「/usr/local/bin」にセットアップされる

動作環境設定

$ sudo ldconfig
$ sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
$ sudo su
# echo 'blacklist dvb_usb_rtl28xxu' > /etc/modprobe.d/blacklist-rtl.conf

(注)「rtl-sdr.rules」は既にコピーされているかもしれない

再起動

$ shutdown -r now

嵌った時

cmakeでエラーになるとか,makeでlibusb.h が無いとかリンクでライブラリが無いとか嵌ることがあるが「libglib2.0-dev」のインストールで解決するようだ

もしエラーが消えないなら追加で以下を試してみると良い(追記:クリーンインストール時,以下が必要であった)

$ sudo apt install libusb-dev
$ sudo apt install libusb-1.0-0-dev

テスト

$ rtl_test

サーバ起動

$ rtl_tcp -a 192.168.xxx.xxx

(追記:以下で良い)
$ rtl_tcp -a 0.0.0.0

(オプション)

Usage: [-a listen address]
[-p listen port (default: 1234)]
[-f frequency to tune to [Hz]]
[-g gain (default: 0 for auto)]
[-s samplerate in Hz (default: 2048000 Hz)]
[-b number of buffers (default: 15, set by library)]
[-n max number of linked list buffers to keep (default: 500)]
[-d device index (default: 0)]
[-P ppm_error (default: 0)]
[-T enable bias-T on GPIO PIN 0 (works for rtl-sdr.com v3 dongles)]

(チューナーが2個の場合)

IMG_20220201_210250.jpg
Found 2 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
1: Realtek, RTL2838UHIDIR, SN: 00000001

(1を選択して起動)

$ rtl_tcp -a 192.168.xxx.xxx -p 1234 -d 1
SDR#

①で「RTL-SDR TCP」を選択して②を実行

WS_001.png

IPアドレスとポート番号(デフォルトが1234)を入力

WS_002.png

SDR#はAGCを選択しても保持されないようなので毎回起動時にチェックする(サーバ起動時に選択もできるようだ)

HDSDR

ExtIO_RTL_TCP.dll」を入手してセットアップ(HDSDRのフォルダーに置く)する

起動して①のSDR-DeviceでIPアドレスとポート番号を入力しようとしても入力できないので②のoptioonsの「select input」→「Realtek RTL2832」を実行すると入力できるようになる

WS_011.png

(起動時は入力できない)

WS_012.png

(「Realtek RTL2832」を実行した後は,先に入力されているIPが選択された状態になる)

WS_013.png

ここで「192.168.xxx.xxx:1234」と入力しようとすると入力途中でハングアップする

ハングアップしたら強制終了しても再起動でハングアップするのでHDSDRのフォルダーにある「delete_settings.cmd」を起動前に実行する

IPアドレスとポート番号の入力はカット&ペーストで行う(入力途中に接続にいってハングアップしていると思われる)

停止して入力すれば問題ないようだ

ページ移動

コメント

  • コメントはまだありません。

コメント登録

  • コメントを入力してください。
登録フォーム
名前
メールアドレス
URL
コメント
閲覧制限
投稿キー(スパム対策に、投稿キー を半角で入力してください。)

ユーティリティ

検索

エントリー検索フォーム
キーワード

新着コメント

過去ログ

Feed