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
Angus Ainslie 0cc5c20b75 Add multiple client support to kiss TCP ports. This only works on
Linux ( and probably other POSIX platforms ) as I don't think
Windows has select.
2017-04-29 22:19:18 +00:00
doc Fix download links to be master rather than dev branch. 2017-04-26 20:17:24 -04:00
geotranz Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
man1 Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
misc Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
regex Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 Documentation updates. 2017-04-26 18:11:24 -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 Add cp -n option to avoid clobbering existing, probably customized, configuration files. 2017-04-26 18:39:18 -04:00
Makefile.macosx New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
Makefile.win Merge remote-tracking branch 'origin/dev' 2017-04-26 20:03:55 -04:00
README.md Documentation updates. 2017-04-26 18:11:24 -04:00
aclients.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
aprs_tt.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
aprs_tt.h APRStt enhancements including new 5 digit suffix format. 2015-12-24 15:25:13 -05:00
atest.c AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
audio.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
audio.h Allow more flexible naming of GPIO pins. e.g. CubieBoard. 2017-04-01 09:26:31 -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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
ax25_link.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
ax25_link.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
ax25_pad.c Proper trimming at CR/LF for RF>IS IGate. 2017-04-01 10:36:36 -04:00
ax25_pad.h Proper trimming at CR/LF for RF>IS IGate. 2017-04-01 10:36:36 -04:00
ax25_pad2.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
beacon.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
cdigipeater.c New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
cdigipeater.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
config.c Allow more flexible naming of GPIO pins. e.g. CubieBoard. 2017-04-01 09:26:31 -04:00
config.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
decode_aprs.c Issue 84. IGate was truncating packets that contained nul character 2017-03-05 15:15:33 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
demod.h Version 1.2 2015-07-26 21:17:23 -04:00
demod_9600.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
demod_9600.h Version 1.2 2015-07-26 21:17:23 -04:00
demod_afsk.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
demod_afsk.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
demod_psk.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 Don't digipeat packets when the source is my call. 2017-03-05 14:51:08 -05:00
digipeater.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
direwolf.c Change version from 1.4 beta test to 1.4. 2017-04-26 18:20:36 -04:00
direwolf.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05: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 AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
dlq.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
dtmf.h PTT was being turned off too soon when sending Morse code. 2016-12-16 20:12:38 -05: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 Minor tweaks to dw-start.sh and documentation. 2017-04-22 11:24:14 -04: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
dwgpsd.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
dwgpsnmea.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 PTT was being turned off too soon when sending Morse code. 2016-12-16 20:12:38 -05: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 AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
hdlc_rec.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
hdlc_rec2.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
hdlc_rec2.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
hdlc_send.c AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
hdlc_send.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
igate.c Proper trimming at CR/LF for RF>IS IGate. 2017-04-01 10:36:36 -04:00
igate.h New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
kiss.c New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05: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 Add multiple client support to kiss TCP ports. This only works on 2017-04-29 22:19:18 +00: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 AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
log.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05: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 New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
mheard.h New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
morse.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
morse.h Development snapshot 1.3 dev F. 2015-09-07 19:56:20 -04:00
multi_modem.c AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
multi_modem.h Clean up fix-bits feature. New experimental demodulator. 2015-11-29 10:44:30 -05:00
pfilter.c New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
pfilter.h New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05:00
ptt.c Allow more flexible naming of GPIO pins. e.g. CubieBoard. 2017-04-01 09:26:31 -04:00
ptt.h Implement TXINH 2015-11-17 11:19:12 -07:00
rdq.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
rdq.h Version 1.0 - Initial commit 2015-07-26 20:35:07 -04:00
recv.c AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
serial_port.h 1.4 development snapshot C. 2016-07-03 18:09:34 -04:00
server.c Minor documentation updates. 2017-03-05 15:04:10 -05:00
server.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
symbols-new.txt Latest versions of symbols-new.txt and tocalls.txt. 2017-04-26 18:23:27 -04:00
symbols.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
telemetry.h Rewrite GPS handling. Lots of other clean up. 2015-11-07 20:57:02 -05:00
textcolor.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
textcolor.h Version 1.2 2015-07-26 21:17:23 -04:00
tocalls.txt Latest versions of symbols-new.txt and tocalls.txt. 2017-04-26 18:23:27 -04:00
tq.c AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05:00
tq.h AX.25 v2.2 connected mode. 2016-11-20 14:58:51 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05: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 Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
waypoint.h Generate NMEA waypoint sentences ($PKWDWPL, etc.) for position and object reports. 2016-03-20 19:23:09 -04:00
xid.c Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
xid.h Fix compile warnings found when adding -Wall and others. 2016-12-23 11:28:39 -05:00
xmit.c New client side packet filter to select "messages" only to stations that have been heard nearby recently. This is now the default if no IS to RF filter is specified. 2017-01-01 11:49:55 -05: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 an expensive “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, Outpost PM and many others.

Features & Benefits

  • 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 bps K9NG/G3RUH.

  • Interface with applications by - AGW network protocol - KISS serial port - KISS TCP 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.

  • AX.25 v2.2 connected mode. (New in version 1.4.)

  • 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/laptop or single board computer such as Raspberry Pi, BeagleBone Black, cubieboard 2, or C.H.I.P. - Mac OS X

Documentation

Stable Version

Latest Development Version

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.

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 (possibly unstable) development version, use "git checkout dev" 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

Linux - Using apt-get (Debian flavor operating systems)

Results will vary depending on your hardware platform and operating system version because it depends on various volunteers who perform the packaging.

sudo apt-get update
apt-cache showpkg direwolf
sudo apt-get install direwolf

Linux - Using yum (Red Hat flavor operating systems)

Results will vary depending on your hardware platform and operating system version because it depends on various volunteers who perform the packaging.

sudo yum check-update
sudo yum list direwolf
sudo yum install direwolf

Linux - Download source in tar or zip file

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

Join the conversation

Here are some good places to ask questions and share your experience:

The github "issues" section is for reporting software defects and enhancement requests. It is NOT a place to ask questions or have general discussions. Please use one of the locations above.