diff --git a/groundstation/WAV/README.md b/groundstation/WAV/README.md
new file mode 100644
index 00000000..fb509f43
--- /dev/null
+++ b/groundstation/WAV/README.md
@@ -0,0 +1,11 @@
+Audio files for Serenity CubeSat
+
+These are the 4k8 demodulated outupt.
+
+You can play them with any audio player.
+
+If you loopback the audio to an input, you can decode them using DireWolf or SoundModem.
+
+beacon_test2.wav is a test file provided by Joel Latrell
+
+packet.wav is a test file I generated.
diff --git a/groundstation/WAV/beacon_test_2.wav b/groundstation/WAV/beacon_test_2.wav
new file mode 100644
index 00000000..adda907d
Binary files /dev/null and b/groundstation/WAV/beacon_test_2.wav differ
diff --git a/groundstation/cubicsdr-session/cubicsdr-aprs-au-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-aprs-au-direwolf.xml
new file mode 100644
index 00000000..f786bece
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-aprs-au-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 145200000
+ 2048000
+ 0
+
+
+
+ 12500
+ 145175000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/cubicsdr-session/cubicsdr-aprs-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-aprs-direwolf.xml
new file mode 100644
index 00000000..29e2500a
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-aprs-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 144390000
+ 2048000
+ 0
+
+
+
+ 12500
+ 144390000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/cubicsdr-session/cubicsdr-aprs-eu-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-aprs-eu-direwolf.xml
new file mode 100644
index 00000000..34fd356b
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-aprs-eu-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 144900000
+ 2048000
+ 0
+
+
+
+ 12500
+ 144800000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/cubicsdr-session/cubicsdr-cubesatsim-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-cubesatsim-direwolf.xml
new file mode 100644
index 00000000..756ed6a7
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-cubesatsim-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 435000000
+ 2048000
+ 0
+
+
+
+ 12500
+ 434900000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/cubicsdr-session/cubicsdr-iss-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-iss-direwolf.xml
new file mode 100644
index 00000000..ccd087ca
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-iss-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 145490000
+ 2048000
+ 0
+
+
+
+ 12500
+ 145825000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/cubicsdr-session/cubicsdr-serenity-direwolf.xml b/groundstation/cubicsdr-session/cubicsdr-serenity-direwolf.xml
new file mode 100644
index 00000000..6fc9d717
--- /dev/null
+++ b/groundstation/cubicsdr-session/cubicsdr-serenity-direwolf.xml
@@ -0,0 +1,23 @@
+
+
+
+ %30%2e%32%2e%35
+ 436825000
+ 2048000
+ 0
+
+
+
+ 23500
+ 437100000
+ NBFM
+
+ -100
+ 1
+ hw:Loopback,0
+ 1
+ 0
+ 1
+
+
+
diff --git a/groundstation/direwolf/direwolf-4800.conf b/groundstation/direwolf/direwolf-4800.conf
new file mode 100644
index 00000000..86fcbfd0
--- /dev/null
+++ b/groundstation/direwolf/direwolf-4800.conf
@@ -0,0 +1,10 @@
+ADEVICE plughw:CARD=Loopback,DEV=1 plughw:CARD=Headphones,DEV=0
+
+ARATE 48000
+
+CHANNEL 0
+
+#MODEM 1200
+MODEM 4800
+
+DWAIT 5
diff --git a/groundstation/direwolf/direwolf-windows-1200.conf b/groundstation/direwolf/direwolf-windows-1200.conf
new file mode 100644
index 00000000..f49fd001
--- /dev/null
+++ b/groundstation/direwolf/direwolf-windows-1200.conf
@@ -0,0 +1,498 @@
+#############################################################
+# #
+# Configuration file for Dire Wolf #
+# #
+# Windows version #
+# #
+#############################################################
+#
+# Extensive documentation can be found here:
+# Stable release - https://github.com/wb2osz/direwolf/tree/master/doc
+# Latest development - https://github.com/wb2osz/direwolf/tree/dev/doc
+#
+# The complete documentation set can also be found in the doc folder.
+#
+# This sample file does not have examples for all of the possibilities.
+# Consult the User Guide for more details on configuration options.%C%#
+#
+# These are the most likely settings you might change:
+#
+# (1) MYCALL - call sign and SSID for your station.
+#
+# Look for lines starting with MYCALL and
+# change NOCALL to your own.
+#
+# (2) PBEACON - enable position beaconing.
+#
+# Look for lines starting with PBEACON and
+# modify for your call, location, etc.
+#
+# (3) DIGIPEATER - configure digipeating rules.
+#
+# Look for lines starting with DIGIPEATER.
+# Most people will probably use the given example.
+# Just remove the "#" from the start of the line
+# to enable it.
+#
+# (4) IGSERVER, IGLOGIN - IGate server and login
+#
+# Configure an IGate client to relay messages between
+# radio and internet servers.
+#
+#
+# The default location is "direwolf.conf" in the current working directory.
+# An alternate configuration file location can be specified with the "-c" command line option.
+#
+# As you probably guessed by now, # indicates a comment line.
+#
+# Remove the # at the beginning of a line if you want to use a sample
+# configuration that is currently commented out.
+#
+# Commands are a keyword followed by parameters.
+#
+# Command key words are case insensitive. i.e. upper and lower case are equivalent.
+#
+# Command parameters are generally case sensitive. i.e. upper and lower case are different.
+#
+
+
+#############################################################
+# #
+# FIRST AUDIO DEVICE PROPERTIES #
+# (Channel 0 + 1 if in stereo) #
+# #
+#############################################################
+
+#
+# Many people will simply use the default sound device.
+# Some might want to use an alternative device by choosing it here.
+#
+# When the Windows version starts up, it displays something like
+# this with the available sound devices and capabilities:
+#
+# Available audio input devices for receive (*=selected):
+# * 0: Microphone (C-Media USB Headpho (channel 2)
+# 1: Microphone (Bluetooth SCO Audio
+# 2: Microphone (Bluetooth AV Audio)
+# * 3: Microphone (Realtek High Defini (channels 0 & 1)
+# Available audio output devices for transmit (*=selected):
+# * 0: Speakers (C-Media USB Headphone (channel 2)
+# 1: Speakers (Bluetooth SCO Audio)
+# 2: Realtek Digital Output(Optical)
+# 3: Speakers (Bluetooth AV Audio)
+# * 4: Speakers (Realtek High Definiti (channels 0 & 1)
+# 5: Realtek Digital Output (Realtek
+#
+# Example: To use the microphone and speaker connections on the
+# system board, either of these forms can be used:
+
+#ADEVICE High
+ADEVICE 1 0
+
+# Example: To use the USB Audio, use a command like this with
+# the input and output device numbers. (Remove the # comment character.)
+#ADEVICE USB
+
+# You can also use "-" or "stdin" to pipe stdout from
+# some other application such as a software defined radio.
+# "stdin" is not an audio device. Don't use this unless you
+# understand what this means. Read the User Guide.
+# You can also specify "UDP:" and an optional port for input.
+# Something different must be specified for output.
+
+# ADEVICE stdin 0
+# ADEVICE UDP:7355 0
+
+# The position in the list can change when devices (e.g. USB) are added and removed.
+# You can also specify devices by using part of the name.
+# Here is an example of specifying the USB Audio device.
+# This is case-sensitive. Upper and lower case are not treated the same.
+
+#ADEVICE USB
+
+
+
+#
+# Number of audio channels for this souncard: 1 (mono) or 2 (stereo).
+# 1 is the default so there is no need to specify it.
+#
+
+#ACHANNELS 2
+
+
+#############################################################
+# #
+# SECOND AUDIO DEVICE PROPERTIES #
+# (Channel 2 + 3 if in stereo) #
+# #
+#############################################################
+
+#ADEVICE1 ...
+
+
+#############################################################
+# #
+# THIRD AUDIO DEVICE PROPERTIES #
+# (Channel 4 + 5 if in stereo) #
+# #
+#############################################################
+
+#ADEVICE2 ...
+
+
+#############################################################
+# #
+# CHANNEL 0 PROPERTIES #
+# #
+#############################################################
+
+CHANNEL 0
+
+#
+# The following MYCALL, MODEM, PTT, etc. configuration items
+# apply to the most recent CHANNEL.
+#
+
+#
+# Station identifier for this channel.
+# Multiple channels can have the same or different names.
+#
+# It can be up to 6 letters and digits with an optional ssid.
+# The APRS specification requires that it be upper case.
+#
+# Example (don't use this unless you are me): MYCALL WB2OSZ-5
+#
+
+MYCALL KU2Y
+
+#
+# Pick a suitable modem speed based on your situation.
+# 1200 Most common for VHF/UHF. Default if not specified.
+# 2400 QPSK compatible with MFJ-2400, and probably PK232-2400 & KPC-2400.
+# 300 Low speed for HF SSB. Default tones 1600 & 1800.
+# EAS Emergency Alert System (EAS) Specific Area Message Encoding (SAME).
+# 9600 G3RUH style - Can't use Microphone and Speaker connections.
+# AIS International system for tracking ships on VHF.
+# Also uses 9600 bps so Speaker connection won't work.
+#
+# In most cases you can just specify the speed. Examples:
+#
+
+MODEM 1200
+#MODEM 9600
+
+#
+# Many options are available for great flexibility.
+# See User Guide for details.
+#
+
+#
+# Uncomment line below to enable the DTMF decoder for this channel.
+#
+
+#DTMF
+
+#
+# If not using a VOX circuit, the transmitter Push to Talk (PTT)
+# control is usually wired to a serial port with a suitable interface circuit.
+# DON'T connect it directly!
+#
+# For the PTT command, specify the device and either RTS or DTR.
+# RTS or DTR may be preceded by "-" to invert the signal.
+# Both can be used for interfaces that want them driven with opposite polarity.
+#
+
+#PTT COM1 RTS
+#PTT COM1 RTS -DTR
+
+# The Data Carrier Detect (DCD) signal can be sent to the same places
+# as the PTT signal. This could be used to light up an LED like a normal TNC.
+
+#DCD COM1 -DTR
+
+
+#############################################################
+# #
+# CHANNEL 1 PROPERTIES #
+# #
+#############################################################
+
+#CHANNEL 1
+
+#
+# Specify MYCALL, MODEM, PTT, etc. configuration items for
+# CHANNEL 1. Repeat for any other channels.
+
+
+#############################################################
+# #
+# TEXT TO SPEECH COMMAND FILE #
+# #
+#############################################################
+
+#SPEECH dwespeak.bat
+
+
+#############################################################
+# #
+# VIRTUAL TNC SERVER PROPERTIES #
+# #
+#############################################################
+
+#
+# Dire Wolf acts as a virtual TNC and can communicate with
+# client applications by different protocols:
+#
+# - the "AGW TCPIP Socket Interface" - default port 8000
+# - KISS protocol over TCP socket - default port 8001
+# - KISS TNC via serial port
+#
+
+AGWPORT 8000
+KISSPORT 8001
+
+#
+# Some applications are designed to operate with only a physical
+# TNC attached to a serial port. For these, we provide a virtual serial
+# port that appears to be connected to a TNC.
+#
+# Take a look at the User Guide for instructions to set up
+# two virtual serial ports named COM3 and COM4 connected by
+# a null modem.
+#
+# Using the configuration described, Dire Wolf will connect to
+# COM3 and the client application will use COM4.
+#
+# Uncomment following line to use this feature.
+
+#NULLMODEM COM3
+
+
+#
+# It is sometimes possible to recover frames with a bad FCS.
+# This applies to all channels.
+#
+# 0 [NONE] - Don't try to repair.
+# 1 [SINGLE] - Attempt to fix single bit error. (default)
+# ... see User Guide for more values and in-depth discussion.
+#
+
+#FIX_BITS 0
+
+#
+#############################################################
+# #
+# FIXED POSIION BEACONING PROPERTIES #
+# #
+#############################################################
+
+
+#
+# Beaconing is configured with these two commands:
+#
+# PBEACON - for a position report (usually yourself)
+# OBEACON - for an object report (usually some other entity)
+#
+# Each has a series of keywords and values for options.
+# See User Guide for details.
+#
+# Example:
+#
+# This results in a broadcast once every 10 minutes.
+# Every half hour, it can travel via two digipeater hops.
+# The others are kept local.
+#
+
+#PBEACON delay=1 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA" via=WIDE1-1,WIDE2-1
+#PBEACON delay=11 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA"
+#PBEACON delay=21 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA"
+
+
+# With UTM coordinates instead of latitude and longitude.
+
+#PBEACON delay=1 every=10 overlay=S symbol="digi" zone=19T easting=307477 northing=4720178
+
+
+#
+# When the destination field is set to "SPEECH" the information part is
+# converted to speech rather than transmitted as a data frame.
+#
+
+#CBEACON dest="SPEECH" info="Club meeting tonight at 7 pm."
+
+# Similar for Morse code. If SSID is specified, it is multiplied
+# by 2 to get speed in words per minute (WPM).
+
+#CBEACON dest="MORSE-6" info="de MYCALL"
+
+
+#
+# Modify for your particular situation before removing
+# the # comment character from the beginning of appropriate lines above.
+#
+
+
+#############################################################
+# #
+# APRS DIGIPEATER PROPERTIES #
+# #
+#############################################################
+
+#
+# For most common situations, use something like this by removing
+# the "#" from the beginning of the line below.
+#
+
+#DIGIPEAT 0 0 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE
+
+# See User Guide for more explanation of what this means and how
+# it can be customized for your particular needs.
+
+# Filtering can be used to limit was is digipeated.
+# For example, only weather weather reports, received on channel 0,
+# will be retransmitted on channel 1.
+#
+
+#FILTER 0 1 t/wn
+
+# Traditional connected mode packet radio uses a different
+# type of digipeating. See User Guide for details.
+
+#############################################################
+# #
+# INTERNET GATEWAY #
+# #
+#############################################################
+
+# First you need to specify the name of a Tier 2 server.
+# The current preferred way is to use one of these regional rotate addresses:
+
+# 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
+
+#IGSERVER noam.aprs2.net
+
+# You also need to specify your login name and passcode.
+# Contact the author if you can't figure out how to generate the passcode.
+
+#IGLOGIN WB2OSZ-5 123456
+
+# That's all you need for a receive only IGate which relays
+# messages from the local radio channel to the global servers.
+
+# Some might want to send an IGate client position directly to a server
+# without sending it over the air and relying on someone else to
+# forward it to an IGate server. This is done by using sendto=IG rather
+# than a radio channel number. Overlay R for receive only, T for two way.
+
+#PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=R lat=42^37.14N long=071^20.83W
+#PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=T lat=42^37.14N long=071^20.83W
+
+
+# To relay messages from the Internet to radio, you need to add
+# one more option with the transmit channel number and a VIA path.
+
+#IGTXVIA 0 WIDE1-1
+
+
+# Finally, we don't want to flood the radio channel.
+# The IGate function will limit the number of packets transmitted
+# during 1 minute and 5 minute intervals. If a limit would
+# be exceeded, the packet is dropped and message is displayed in red.
+
+IGTXLIMIT 6 10
+
+
+#############################################################
+# #
+# APRStt GATEWAY #
+# #
+#############################################################
+
+#
+# Dire Wolf can receive DTMF (commonly known as Touch Tone)
+# messages and convert them to packet objects.
+#
+# See separate "APRStt-Implementation-Notes" document for details.
+#
+
+#
+# Sample gateway configuration based on:
+#
+# http://www.aprs.org/aprstt/aprstt-coding24.txt
+# http://www.aprs.org/aprs-jamboree-2013.html
+#
+
+# Define specific points.
+
+TTPOINT B01 37^55.37N 81^7.86W
+TTPOINT B7495088 42.605237 -71.34456
+TTPOINT B934 42.605237 -71.34456
+
+TTPOINT B901 42.661279 -71.364452
+TTPOINT B902 42.660411 -71.364419
+TTPOINT B903 42.659046 -71.364452
+TTPOINT B904 42.657578 -71.364602
+
+
+# For location at given bearing and distance from starting point.
+
+TTVECTOR B5bbbddd 37^55.37N 81^7.86W 0.01 mi
+
+# For location specified by x, y coordinates.
+
+TTGRID Byyyxxx 37^50.00N 81^00.00W 37^59.99N 81^09.99W
+
+# UTM location for Lowell-Dracut-Tyngsborough State Forest.
+
+TTUTM B6xxxyyy 19T 10 300000 4720000
+
+
+
+# Location for the corral.
+
+TTCORRAL 37^55.50N 81^7.00W 0^0.02N
+
+# Compact messages - Fixed locations xx and object yyy where
+# Object numbers 100 - 199 = bicycle
+# Object numbers 200 - 299 = fire truck
+# Others = dog
+
+TTMACRO xx1yy B9xx*AB166*AA2B4C5B3B0A1yy
+TTMACRO xx2yy B9xx*AB170*AA3C4C7C3B0A2yy
+TTMACRO xxyyy B9xx*AB180*AA3A6C4A0Ayyy
+
+TTMACRO z Cz
+
+# Receive on channel 0, Transmit object reports on channel 1 with optional via path.
+# You probably want to put in a transmit delay on the APRStt channel so it
+# it doesn't start sending a response before the user releases PTT.
+# This is in 10 ms units so 100 means 1000 ms = 1 second.
+
+#TTOBJ 0 1 WIDE1-1
+#CHANNEL 0
+#DWAIT 100
+
+# Advertise gateway position with beacon.
+
+# OBEACON DELAY=0:15 EVERY=10:00 VIA=WIDE1-1 OBJNAME=WB2OSZ-tt SYMBOL=APRStt LAT=42^37.14N LONG=71^20.83W COMMENT="APRStt Gateway"
+
+
+# Sample speech responses.
+# Default is Morse code "R" for received OK and "?" for all errors.
+
+#TTERR OK SPEECH Message Received.
+#TTERR D_MSG SPEECH D not implemented.
+#TTERR INTERNAL SPEECH Internal error.
+#TTERR MACRO_NOMATCH SPEECH No definition for digit sequence.
+#TTERR BAD_CHECKSUM SPEECH Bad checksum on call.
+#TTERR INVALID_CALL SPEECH Invalid callsign.
+#TTERR INVALID_OBJNAME SPEECH Invalid object name.
+#TTERR INVALID_SYMBOL SPEECH Invalid symbol.
+#TTERR INVALID_LOC SPEECH Invalid location.
+#TTERR NO_CALL SPEECH No call or object name.
+#TTERR SATSQ SPEECH Satellite square must be 4 digits.
+#TTERR SUFFIX_NO_CALL SPEECH Send full call before using suffix.
diff --git a/groundstation/direwolf/direwolf-windows-4800.conf b/groundstation/direwolf/direwolf-windows-4800.conf
new file mode 100644
index 00000000..e0b29f27
--- /dev/null
+++ b/groundstation/direwolf/direwolf-windows-4800.conf
@@ -0,0 +1,499 @@
+#############################################################
+# #
+# Configuration file for Dire Wolf #
+# #
+# Windows version #
+# #
+#############################################################
+#
+# Extensive documentation can be found here:
+# Stable release - https://github.com/wb2osz/direwolf/tree/master/doc
+# Latest development - https://github.com/wb2osz/direwolf/tree/dev/doc
+#
+# The complete documentation set can also be found in the doc folder.
+#
+# This sample file does not have examples for all of the possibilities.
+# Consult the User Guide for more details on configuration options.%C%#
+#
+# These are the most likely settings you might change:
+#
+# (1) MYCALL - call sign and SSID for your station.
+#
+# Look for lines starting with MYCALL and
+# change NOCALL to your own.
+#
+# (2) PBEACON - enable position beaconing.
+#
+# Look for lines starting with PBEACON and
+# modify for your call, location, etc.
+#
+# (3) DIGIPEATER - configure digipeating rules.
+#
+# Look for lines starting with DIGIPEATER.
+# Most people will probably use the given example.
+# Just remove the "#" from the start of the line
+# to enable it.
+#
+# (4) IGSERVER, IGLOGIN - IGate server and login
+#
+# Configure an IGate client to relay messages between
+# radio and internet servers.
+#
+#
+# The default location is "direwolf.conf" in the current working directory.
+# An alternate configuration file location can be specified with the "-c" command line option.
+#
+# As you probably guessed by now, # indicates a comment line.
+#
+# Remove the # at the beginning of a line if you want to use a sample
+# configuration that is currently commented out.
+#
+# Commands are a keyword followed by parameters.
+#
+# Command key words are case insensitive. i.e. upper and lower case are equivalent.
+#
+# Command parameters are generally case sensitive. i.e. upper and lower case are different.
+#
+
+
+#############################################################
+# #
+# FIRST AUDIO DEVICE PROPERTIES #
+# (Channel 0 + 1 if in stereo) #
+# #
+#############################################################
+
+#
+# Many people will simply use the default sound device.
+# Some might want to use an alternative device by choosing it here.
+#
+# When the Windows version starts up, it displays something like
+# this with the available sound devices and capabilities:
+#
+# Available audio input devices for receive (*=selected):
+# * 0: Microphone (C-Media USB Headpho (channel 2)
+# 1: Microphone (Bluetooth SCO Audio
+# 2: Microphone (Bluetooth AV Audio)
+# * 3: Microphone (Realtek High Defini (channels 0 & 1)
+# Available audio output devices for transmit (*=selected):
+# * 0: Speakers (C-Media USB Headphone (channel 2)
+# 1: Speakers (Bluetooth SCO Audio)
+# 2: Realtek Digital Output(Optical)
+# 3: Speakers (Bluetooth AV Audio)
+# * 4: Speakers (Realtek High Definiti (channels 0 & 1)
+# 5: Realtek Digital Output (Realtek
+#
+# Example: To use the microphone and speaker connections on the
+# system board, either of these forms can be used:
+
+#ADEVICE High
+ADEVICE 1 0
+
+
+# Example: To use the USB Audio, use a command like this with
+# the input and output device numbers. (Remove the # comment character.)
+#ADEVICE USB
+
+# You can also use "-" or "stdin" to pipe stdout from
+# some other application such as a software defined radio.
+# "stdin" is not an audio device. Don't use this unless you
+# understand what this means. Read the User Guide.
+# You can also specify "UDP:" and an optional port for input.
+# Something different must be specified for output.
+
+# ADEVICE stdin 0
+# ADEVICE UDP:7355 0
+
+# The position in the list can change when devices (e.g. USB) are added and removed.
+# You can also specify devices by using part of the name.
+# Here is an example of specifying the USB Audio device.
+# This is case-sensitive. Upper and lower case are not treated the same.
+
+#ADEVICE USB
+
+
+
+#
+# Number of audio channels for this souncard: 1 (mono) or 2 (stereo).
+# 1 is the default so there is no need to specify it.
+#
+
+#ACHANNELS 2
+
+
+#############################################################
+# #
+# SECOND AUDIO DEVICE PROPERTIES #
+# (Channel 2 + 3 if in stereo) #
+# #
+#############################################################
+
+#ADEVICE1 ...
+
+
+#############################################################
+# #
+# THIRD AUDIO DEVICE PROPERTIES #
+# (Channel 4 + 5 if in stereo) #
+# #
+#############################################################
+
+#ADEVICE2 ...
+
+
+#############################################################
+# #
+# CHANNEL 0 PROPERTIES #
+# #
+#############################################################
+
+CHANNEL 0
+
+#
+# The following MYCALL, MODEM, PTT, etc. configuration items
+# apply to the most recent CHANNEL.
+#
+
+#
+# Station identifier for this channel.
+# Multiple channels can have the same or different names.
+#
+# It can be up to 6 letters and digits with an optional ssid.
+# The APRS specification requires that it be upper case.
+#
+# Example (don't use this unless you are me): MYCALL WB2OSZ-5
+#
+
+MYCALL KU2Y
+
+#
+# Pick a suitable modem speed based on your situation.
+# 1200 Most common for VHF/UHF. Default if not specified.
+# 2400 QPSK compatible with MFJ-2400, and probably PK232-2400 & KPC-2400.
+# 300 Low speed for HF SSB. Default tones 1600 & 1800.
+# EAS Emergency Alert System (EAS) Specific Area Message Encoding (SAME).
+# 9600 G3RUH style - Can't use Microphone and Speaker connections.
+# AIS International system for tracking ships on VHF.
+# Also uses 9600 bps so Speaker connection won't work.
+#
+# In most cases you can just specify the speed. Examples:
+#
+
+MODEM 4800
+#MODEM 9600
+
+#
+# Many options are available for great flexibility.
+# See User Guide for details.
+#
+
+#
+# Uncomment line below to enable the DTMF decoder for this channel.
+#
+
+#DTMF
+
+#
+# If not using a VOX circuit, the transmitter Push to Talk (PTT)
+# control is usually wired to a serial port with a suitable interface circuit.
+# DON'T connect it directly!
+#
+# For the PTT command, specify the device and either RTS or DTR.
+# RTS or DTR may be preceded by "-" to invert the signal.
+# Both can be used for interfaces that want them driven with opposite polarity.
+#
+
+#PTT COM1 RTS
+#PTT COM1 RTS -DTR
+
+# The Data Carrier Detect (DCD) signal can be sent to the same places
+# as the PTT signal. This could be used to light up an LED like a normal TNC.
+
+#DCD COM1 -DTR
+
+
+#############################################################
+# #
+# CHANNEL 1 PROPERTIES #
+# #
+#############################################################
+
+#CHANNEL 1
+
+#
+# Specify MYCALL, MODEM, PTT, etc. configuration items for
+# CHANNEL 1. Repeat for any other channels.
+
+
+#############################################################
+# #
+# TEXT TO SPEECH COMMAND FILE #
+# #
+#############################################################
+
+#SPEECH dwespeak.bat
+
+
+#############################################################
+# #
+# VIRTUAL TNC SERVER PROPERTIES #
+# #
+#############################################################
+
+#
+# Dire Wolf acts as a virtual TNC and can communicate with
+# client applications by different protocols:
+#
+# - the "AGW TCPIP Socket Interface" - default port 8000
+# - KISS protocol over TCP socket - default port 8001
+# - KISS TNC via serial port
+#
+
+AGWPORT 8000
+KISSPORT 8001
+
+#
+# Some applications are designed to operate with only a physical
+# TNC attached to a serial port. For these, we provide a virtual serial
+# port that appears to be connected to a TNC.
+#
+# Take a look at the User Guide for instructions to set up
+# two virtual serial ports named COM3 and COM4 connected by
+# a null modem.
+#
+# Using the configuration described, Dire Wolf will connect to
+# COM3 and the client application will use COM4.
+#
+# Uncomment following line to use this feature.
+
+#NULLMODEM COM3
+
+
+#
+# It is sometimes possible to recover frames with a bad FCS.
+# This applies to all channels.
+#
+# 0 [NONE] - Don't try to repair.
+# 1 [SINGLE] - Attempt to fix single bit error. (default)
+# ... see User Guide for more values and in-depth discussion.
+#
+
+#FIX_BITS 0
+
+#
+#############################################################
+# #
+# FIXED POSIION BEACONING PROPERTIES #
+# #
+#############################################################
+
+
+#
+# Beaconing is configured with these two commands:
+#
+# PBEACON - for a position report (usually yourself)
+# OBEACON - for an object report (usually some other entity)
+#
+# Each has a series of keywords and values for options.
+# See User Guide for details.
+#
+# Example:
+#
+# This results in a broadcast once every 10 minutes.
+# Every half hour, it can travel via two digipeater hops.
+# The others are kept local.
+#
+
+#PBEACON delay=1 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA" via=WIDE1-1,WIDE2-1
+#PBEACON delay=11 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA"
+#PBEACON delay=21 every=30 overlay=S symbol="digi" lat=42^37.14N long=071^20.83W power=50 height=20 gain=4 comment="Chelmsford MA"
+
+
+# With UTM coordinates instead of latitude and longitude.
+
+#PBEACON delay=1 every=10 overlay=S symbol="digi" zone=19T easting=307477 northing=4720178
+
+
+#
+# When the destination field is set to "SPEECH" the information part is
+# converted to speech rather than transmitted as a data frame.
+#
+
+#CBEACON dest="SPEECH" info="Club meeting tonight at 7 pm."
+
+# Similar for Morse code. If SSID is specified, it is multiplied
+# by 2 to get speed in words per minute (WPM).
+
+#CBEACON dest="MORSE-6" info="de MYCALL"
+
+
+#
+# Modify for your particular situation before removing
+# the # comment character from the beginning of appropriate lines above.
+#
+
+
+#############################################################
+# #
+# APRS DIGIPEATER PROPERTIES #
+# #
+#############################################################
+
+#
+# For most common situations, use something like this by removing
+# the "#" from the beginning of the line below.
+#
+
+#DIGIPEAT 0 0 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE
+
+# See User Guide for more explanation of what this means and how
+# it can be customized for your particular needs.
+
+# Filtering can be used to limit was is digipeated.
+# For example, only weather weather reports, received on channel 0,
+# will be retransmitted on channel 1.
+#
+
+#FILTER 0 1 t/wn
+
+# Traditional connected mode packet radio uses a different
+# type of digipeating. See User Guide for details.
+
+#############################################################
+# #
+# INTERNET GATEWAY #
+# #
+#############################################################
+
+# First you need to specify the name of a Tier 2 server.
+# The current preferred way is to use one of these regional rotate addresses:
+
+# 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
+
+#IGSERVER noam.aprs2.net
+
+# You also need to specify your login name and passcode.
+# Contact the author if you can't figure out how to generate the passcode.
+
+#IGLOGIN WB2OSZ-5 123456
+
+# That's all you need for a receive only IGate which relays
+# messages from the local radio channel to the global servers.
+
+# Some might want to send an IGate client position directly to a server
+# without sending it over the air and relying on someone else to
+# forward it to an IGate server. This is done by using sendto=IG rather
+# than a radio channel number. Overlay R for receive only, T for two way.
+
+#PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=R lat=42^37.14N long=071^20.83W
+#PBEACON sendto=IG delay=0:30 every=60:00 symbol="igate" overlay=T lat=42^37.14N long=071^20.83W
+
+
+# To relay messages from the Internet to radio, you need to add
+# one more option with the transmit channel number and a VIA path.
+
+#IGTXVIA 0 WIDE1-1
+
+
+# Finally, we don't want to flood the radio channel.
+# The IGate function will limit the number of packets transmitted
+# during 1 minute and 5 minute intervals. If a limit would
+# be exceeded, the packet is dropped and message is displayed in red.
+
+IGTXLIMIT 6 10
+
+
+#############################################################
+# #
+# APRStt GATEWAY #
+# #
+#############################################################
+
+#
+# Dire Wolf can receive DTMF (commonly known as Touch Tone)
+# messages and convert them to packet objects.
+#
+# See separate "APRStt-Implementation-Notes" document for details.
+#
+
+#
+# Sample gateway configuration based on:
+#
+# http://www.aprs.org/aprstt/aprstt-coding24.txt
+# http://www.aprs.org/aprs-jamboree-2013.html
+#
+
+# Define specific points.
+
+TTPOINT B01 37^55.37N 81^7.86W
+TTPOINT B7495088 42.605237 -71.34456
+TTPOINT B934 42.605237 -71.34456
+
+TTPOINT B901 42.661279 -71.364452
+TTPOINT B902 42.660411 -71.364419
+TTPOINT B903 42.659046 -71.364452
+TTPOINT B904 42.657578 -71.364602
+
+
+# For location at given bearing and distance from starting point.
+
+TTVECTOR B5bbbddd 37^55.37N 81^7.86W 0.01 mi
+
+# For location specified by x, y coordinates.
+
+TTGRID Byyyxxx 37^50.00N 81^00.00W 37^59.99N 81^09.99W
+
+# UTM location for Lowell-Dracut-Tyngsborough State Forest.
+
+TTUTM B6xxxyyy 19T 10 300000 4720000
+
+
+
+# Location for the corral.
+
+TTCORRAL 37^55.50N 81^7.00W 0^0.02N
+
+# Compact messages - Fixed locations xx and object yyy where
+# Object numbers 100 - 199 = bicycle
+# Object numbers 200 - 299 = fire truck
+# Others = dog
+
+TTMACRO xx1yy B9xx*AB166*AA2B4C5B3B0A1yy
+TTMACRO xx2yy B9xx*AB170*AA3C4C7C3B0A2yy
+TTMACRO xxyyy B9xx*AB180*AA3A6C4A0Ayyy
+
+TTMACRO z Cz
+
+# Receive on channel 0, Transmit object reports on channel 1 with optional via path.
+# You probably want to put in a transmit delay on the APRStt channel so it
+# it doesn't start sending a response before the user releases PTT.
+# This is in 10 ms units so 100 means 1000 ms = 1 second.
+
+#TTOBJ 0 1 WIDE1-1
+#CHANNEL 0
+#DWAIT 100
+
+# Advertise gateway position with beacon.
+
+# OBEACON DELAY=0:15 EVERY=10:00 VIA=WIDE1-1 OBJNAME=WB2OSZ-tt SYMBOL=APRStt LAT=42^37.14N LONG=71^20.83W COMMENT="APRStt Gateway"
+
+
+# Sample speech responses.
+# Default is Morse code "R" for received OK and "?" for all errors.
+
+#TTERR OK SPEECH Message Received.
+#TTERR D_MSG SPEECH D not implemented.
+#TTERR INTERNAL SPEECH Internal error.
+#TTERR MACRO_NOMATCH SPEECH No definition for digit sequence.
+#TTERR BAD_CHECKSUM SPEECH Bad checksum on call.
+#TTERR INVALID_CALL SPEECH Invalid callsign.
+#TTERR INVALID_OBJNAME SPEECH Invalid object name.
+#TTERR INVALID_SYMBOL SPEECH Invalid symbol.
+#TTERR INVALID_LOC SPEECH Invalid location.
+#TTERR NO_CALL SPEECH No call or object name.
+#TTERR SATSQ SPEECH Satellite square must be 4 digits.
+#TTERR SUFFIX_NO_CALL SPEECH Send full call before using suffix.
diff --git a/groundstation/direwolf/direwolf.conf b/groundstation/direwolf/direwolf.conf
new file mode 100644
index 00000000..ce8b6823
--- /dev/null
+++ b/groundstation/direwolf/direwolf.conf
@@ -0,0 +1 @@
+ADEVICE plughw:CARD=Loopback,DEV=1 plughw:CARD=b1,DEV=0