前にRTL-SDRを使ってFTDX3000のIF入力でcwskkimer運用をしていたのですが,その時にいろいろ購入したRTL-SDRが余っていたのでdirewolfでAPRSの受信専用で構築してみました。
前にかいたUSBsoundcardを使った送受信対応のdirewolfを使ったaprsのことを書きましたが、今回はそのsound cardではなくRTL-SDRを使って使って構築しようということです。

今は
$ sudo apt-get install rtl-sdr
で簡単に入ります。少し前まではmekeとかいろいろ面倒だったのですが、これですぐに使えます。

下記の内容をdirewolf用にsdr.confとして保存
#
# Sample configuration for SDR read-only IGate.
#
# We might not have an audio output device so set to null.
# We will override the input half on the command line.
ADEVICE null null
CHANNEL 0
# Put your callsign in place of xxx below.
MYCALL xxx
# Pick appropriate servers for your geographical region.
#
# noam.aprs2.net - for North America
# soam.aprs2.net - for South America
# euro.aprs2.net - for Europe and Africa
# asia.aprs2.net - for Asia
# aunz.aprs2.net - for Oceania
#
# Change the following line if you are not in North America.
IGSERVER noam.aprs2.net
# You also need to specify your login name and passcode.
# This is the same passcode you would use with any other IGate
# application. Contact the author if you can't figure out
# how to generate the passcode.
IGLOGIN xxx 123456
# That's all you need for a receive only IGate which relays
# messages from the local radio channel to the global servers.

IGSERVERは私の場合はxastirで指定してますので設定していません。受信のみの場合は設定しておいてください。なおpasscodeはコールサインを入れると下記からすぐに取得できます。
https://apps.magicbug.co.uk/passcode/

direwolfの起動は1200bpsの場合は

$ rtl_fm -f 144.66M - | direwolf -c sdr.conf -r 24000 -D 1 -

9600bosの場合は
$ rtl_fm –p 62 -f 144.64M -o 4 -s 48000 | direwolf -c sdr.conf -r 48000 -B 9600 –

ですぐに起動できます。いずれもRTLで音声をストリーミング再生して、それをパイプでdirewolfに渡しているだけです。正常に起動したターミナル上でモニターしたaprsのパケットが受信できるはずです。

direwolfはconfigを別にすることで複数起動可能ですので、TXできる別のdirewolfを構成すると、xastirでinterfaceを指定することで144.64は送受信可能 144.66は受信専用 serverportでIGATEする。こんな運用が可能です。

しかし残念ながらRTL-SDRはあまり感度がよくないです。手持ちのTCO安定型と普通のものを使ってみたのですが、やはり無線機(ハンディ機)の直接入力には結構負けているようです。今V3の新しいのをEBAYで注文したのでまた比較してみます。