Dire Wolf is a software "soundcard" AX.25 packet modem/TNC and APRS encoder/decoder. It can be used stand-alone to observe APRS traffic, as a tracker, digipeater, APRStt gateway, or Internet Gateway (IGate). For more information, look at the bottom 1/4 of this page and in https://github.com/wb2osz/direwolf/blob/dev/doc/README.md
Go to file
Ben Tovar 51b780f325 Adds IGNOREEMPTY=[0|1] to {P,C}BEACON cmd.
When using COMMENTCMD (PBEACON), or INFOCMD (CBEACON), direwolf reports
an error when the command does not produce any stdout, even when the
command exits with status 0.

This commit allows something like:

PBEACON IGNOREEMPTY=1 EVERY=00:30 COMMENTCMD='command_to_print_updates'

Say 'command_to_print_updates' only prints to stdout when its output
would be different from the last time it ran. With the above, direwolf
would run the command as before, but does not print an error when no new
updates are available. An error is still reported if the exit status is
not 0.
2016-09-13 18:14:31 -04:00
doc Addition to SDR iGate Doc #41 2016-07-03 20:20:54 -04:00
geotranz Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
man1 Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
misc Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
regex Version 1.1 2015-07-26 21:05:48 -04:00
telemetry-toolkit Add script to generate telemetry sequence numbers. 2015-12-30 21:49:13 -05:00
.gitattributes Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
.gitignore Misc fixes for upstream #20. 2016-01-31 11:42:58 -05:00
CHANGES.md 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
LICENSE-dire-wolf.txt Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
LICENSE-other.txt Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
Makefile Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
Makefile.linux 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
Makefile.macosx 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
Makefile.win 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
README.md 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
aclients.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
aprs_tt.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
aprs_tt.h APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
atest.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
audio.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
audio.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
audio_portaudio.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
audio_stats.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
audio_stats.h Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
audio_win.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ax25_pad.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ax25_pad.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ax25_pad2.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ax25_pad2.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
beacon.c Adds IGNOREEMPTY=[0|1] to {P,C}BEACON cmd. 2016-09-13 18:14:31 -04:00
beacon.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
config.c Adds IGNOREEMPTY=[0|1] to {P,C}BEACON cmd. 2016-09-13 18:14:31 -04:00
config.h Adds IGNOREEMPTY=[0|1] to {P,C}BEACON cmd. 2016-09-13 18:14:31 -04:00
decode_aprs.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
decode_aprs.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
dedupe.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dedupe.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
demod.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
demod.h Version 1.2 2015-07-26 21:17:23 -04:00
demod_9600.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
demod_9600.h Version 1.2 2015-07-26 21:17:23 -04:00
demod_afsk.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
demod_afsk.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
demod_psk.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
demod_psk.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
digipeater.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
digipeater.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
direwolf.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
direwolf.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
direwolf.spec Version 1.2 2015-07-26 21:17:23 -04:00
direwolf.txt Version 1.2 2015-07-26 21:17:23 -04:00
dlq.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dlq.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
dsp.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dsp.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
dtime_now.c Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
dtime_now.h Version 1.2 2015-07-26 21:17:23 -04:00
dtmf.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dtmf.h Version 1.2 2015-07-26 21:17:23 -04:00
dw-icon.ico Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
dw-icon.png Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
dw-icon.rc Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
dw-start.sh Example of how to start up SDR IGate automatically. 2015-11-09 21:31:38 -05:00
dwespeak.bat Version 1.2 2015-07-26 21:17:23 -04:00
dwespeak.sh Version 1.2 2015-07-26 21:17:23 -04:00
dwgps.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dwgps.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
dwgpsd.c Issue 52. Failed to compile with gcc 6.1. 2016-08-23 19:13:59 -04:00
dwgpsd.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
dwgpsnmea.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
dwgpsnmea.h Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
encode_aprs.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
encode_aprs.h Fix bug: "INTERNAL ERROR: dlq_append NULL packet pointer." when using PASSALL. 2015-12-06 10:09:27 -05:00
fcs_calc.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
fcs_calc.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
fsk_demod_agc.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
fsk_demod_state.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
fsk_filters.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
fsk_gen_filter.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
gen_packets.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
gen_tone.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
gen_tone.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
generic.conf APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
grm_sym.h Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
hdlc_rec.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
hdlc_rec.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
hdlc_rec2.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
hdlc_rec2.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
hdlc_send.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
hdlc_send.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
igate.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
igate.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
kiss.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
kiss.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
kiss_frame.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
kiss_frame.h Version 1.2 2015-07-26 21:17:23 -04:00
kissnet.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
kissnet.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
latlong.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
latlong.h Version 1.2 2015-07-26 21:17:23 -04:00
ll2utm.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
log.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
log.h Version 1.2 2015-07-26 21:17:23 -04:00
log2gpx.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
mgn_icon.h Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
mheard.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
mheard.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
morse.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
morse.h Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
multi_modem.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
multi_modem.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
pfilter.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
pfilter.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ptt.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
ptt.h Implement TXINH 2015-11-17 11:19:12 -07:00
rdq.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
rdq.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
recv.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
recv.h Version 1.2 2015-07-26 21:17:23 -04:00
redecode.h Version 1.2 2015-07-26 21:17:23 -04:00
rpack.h Version 1.1 2015-07-26 21:05:48 -04:00
rrbb.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
rrbb.h APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
sdr.conf Example of how to start up SDR IGate automatically. 2015-11-09 21:31:38 -05:00
search_sdks.sh Mac OSX build procedure is now better about locating the SDK. 2016-01-24 10:11:17 -05:00
serial_port.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
serial_port.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
server.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
server.h Add 2400 & 4800 PSK modems. New functions to handle frames besides UI. 2016-05-01 18:46:47 -04:00
symbols-new.txt 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
symbols.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
symbols.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
symbolsX.txt Update the symbols & tocalls file. 2016-02-27 15:37:45 -05:00
telemetry.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
telemetry.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
textcolor.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
textcolor.h Version 1.2 2015-07-26 21:17:23 -04:00
tocalls.txt 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
tq.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
tq.h Version 1.2 2015-07-26 21:17:23 -04:00
tt_text.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
tt_text.h APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
tt_user.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
tt_user.h APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
ttcalc.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
tune.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
utm2ll.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
version.h Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
walk96.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
waypoint.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
waypoint.h Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
xid.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
xmit.c 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
xmit.h Version 1.2 2015-07-26 21:17:23 -04:00

README.md

Dire Wolf

Decoded Information from Radio Emissions for Windows Or Linux Fans

In the early days of Amateur Packet Radio, it was necessary to use a “Terminal Node Controller” (TNC) with specialized hardware. Those days are gone. You can now get better results at lower cost by connecting your radio to the “soundcard” interface of a computer and using software to decode the signals.

Dire Wolf is a software "soundcard" modem/TNC and APRS encoder/decoder. It can be used stand-alone to observe APRS traffic, as a digipeater, APRStt gateway, or Internet Gateway (IGate). It can also be used as a virtual TNC for other applications such as APRSIS32, UI-View32, Xastir, APRS-TW, YAAC, UISS, Linux AX25, SARTrack, RMS Express, BPQ32, and many others.

Features

  • Lower cost, higher performance alternative to hardware TNC. Decodes more than 1000 error-free frames from WA8LMF TNC Test CD.

  • Ideal for building a Raspberry Pi digipeater & IGate.

  • Data rates: 300 AFSK, 1200 AFSK, 2400 QPSK, 4800 8PSK, and 9600/19200/38400 K9NG/G3RUH.

  • Interface with applications by - AGW network protocol - KISS serial port - KISS network protocol

  • Decoding of received information for troubleshooting.

  • Conversion from APRS to waypoint sentences in popular formats: $GPWPL, $PGRMW, $PMGNWPL, $PKWDWPL.

  • Logging and conversion to GPX file format.

  • Beaconing for yourself or other nearby entities.

  • Very flexible Digipeating with routing and filtering between up to 6 ports.

  • APRStt gateway - converts touch tone sequences to APRS objects and voice responses.

  • APRS Internet Gateway (IGate) with IPv6 support and special SATGate mode.

  • APRS Telemetry Toolkit.

  • Compatible with software defined radios (SDR) such as gqrx, rtl_fm, and SDR#.

  • Includes separate raw packet decoder, decode_aprs.

  • Open source so you can see how it works and make your own modifications.

  • Runs in 3 different environments: - Microsoft Windows XP or later - Linux, regular PC or single board computer such as Raspberry Pi, BeagleBone Black, or cubieboard 2 - Mac OS X

Installation

Windows

Go to the releases page. Download a zip file with "win" in its name, unzip it, and run direwolf.exe from a command window.

For more details see the User Guide in the doc directory.

Linux - Download with web browser

Go to the releases page. Chose desired release and download the source as zip or compressed tar file. Unpack the files, with "unzip" or "tar xfz," and then:

cd direwolf-*
make
sudo make install
make install-conf

For more details see the User Guide in the doc directory. Special considerations for the Raspberry Pi are found in Raspberry-Pi-APRS.pdf

Linux - Using git clone

cd ~
git clone https://www.github.com/wb2osz/direwolf
cd direwolf
make
sudo make install
make install-conf

This should give you the most recent stable release. If you want the latest (unstable) development version, use "git checkout dev" instead before the first "make" command.

For more details see the User Guide in the doc directory. Special considerations for the Raspberry Pi are found in Raspberry-Pi-APRS.pdf

Join the conversation

Here are some good places to share information: