====== Creating an APRS iGate with an RTL-SDR and Dire Wolf ======
**This is not finished yet, don't use!**
It's possible to create an APRS iGate using a relatively cheap RTL-SDR "dongle". As is common with SDRs they don't perform quite as well as a real radio, but they're a versatile tool that's worth having in the shack.
You'll need one with a Temperature Controlled Oscillator (TCXO) as the cheaper ones without drift too much for reliably decoding APRS. If you don't already have one I recommend the [[https://www.amazon.co.uk/Nooelec-NESDR-SMArt-SDR-R820T2-Based/dp/B01HA642SW|Nooelec NESDR SMArt]]. I also recommend //avoiding// the SMArtee version with it's inbuilt bias-tee unless you need one for a specific application.
Note that Dire Wolf also include their own detailed documentation [[https://github.com/wb2osz/direwolf/blob/master/doc/Raspberry-Pi-SDR-IGate.pdf|here]] but below is a quick summary to get you started.
===== Installation =====
Install the required packages:
sudo apt-get install direwolf rtl-sdr
Create a directory for the logs:
sudo mkdir /var/log/direwolf
===== Configuration =====
When using Dire Wolf with an rtl-sdr it's necessary to edit the systemd service to ensure rtl_fm runs and redirect Direwolfs output into journald.
Open /lib/systemd/system/direwolf.service in your favourite text editor and replace it with the following:
[Unit]
Description=DireWolf is a software "soundcard" modem/TNC and APRS decoder
Documentation=man:direwolf
AssertPathExists=/etc/direwolf.conf
Wants=network-online.target
After=sound.target syslog.target network-online.target
[Service]
SupplementaryGroups=dialout audio
ExecStart=/bin/sh -c '/usr/bin/rtl_fm -f 144.8M - | /usr/bin/direwolf -c direwolf.conf -t 0 -r 24000 -D 1 -'
StandardOutput=journal
StandardError=journal
SyslogIdentifier=direwolf
[Install]
WantedBy=multi-user.target
Reload systemd, enable and start Dire Wolf
systemctl daemon-reload
systemctl enable direwolf
systemctl start direwolf
===== Usage =====
Starting manually:
rtl_fm -f 144.8M - | direwolf -c direwolf.conf -r 24000 -D 1 -
View Dire Wolfs stdout:
journalctl -f -u direwolf
{{tag>[rtl-sdr]}}