Added support for rtl-sdr's,Simplex Only & XBand

This commit is contained in:
[Harper Innes] 2023-12-09 21:46:43 +11:00
parent 0985685211
commit 506568455c
11 changed files with 476 additions and 0 deletions

View File

@ -0,0 +1,39 @@
#!/usr/bin/env bash
one=$1
TOCALL=${one^^}
shift
INPUT=$*
if [ "$INPUT" = "" ]; then
echo "Usage: $1 <callsign> <text message to send>"
exit 1
fi
USER="CALLSIGN HERE"
PASS="PASSCODE HERE"
DIREWOLFHOSTNAME=localhost
#telnetting into aprsis server,sending login, send concatenated string, quit
{
sleep 2
echo "user $USER pass $PASS vers aprs-send-message 0.1"
sleep 2
printf "$USER>APDW17,APRS,TCPIP*::%-9s:$INPUT\r\n" $TOCALL
sleep 5
echo "^]"
echo "quit"
} | telnet rotate.aprs2.net 14580
ERR="${PIPESTATUS[0]}"
if [ $ERR -eq 0 ]; then
echo "Message sent."
else
echo "ERROR: telnet returned $ERR."
fi
echo "Sending packet to Radio TNC."
{
sleep 10 # allow kissutil time to make connection
printf "$USER>APDW17,WIDE1-1,WIDE2-1,APRS,TCPIP::%-9s:$INPUT\r\n" $TOCALL
} | kissutil -h $DIREWOLFHOSTNAME
exit $ERR

100
README.md Normal file
View File

@ -0,0 +1,100 @@
# APRS
This is an on-going repository for the Automatic Positioning Reporting System (APRS) Network
This repo includes support for Direwolf, rtl_fm & kissutil
This repo is split into multiple directories with
"Cross-Band Digipeater Support"
"Simplex Digipeater Support"
"RTL-SDR RX Only IGate Support"
## Installation
You're going to need
"rtl-sdr" https://archlinux.org/packages/extra/x86_64/rtl-sdr/ (If you plan on using an rtl-sdr)
"direwolf" https://aur.archlinux.org/packages/direwolf (IIRC "kissutil is included in this package)
"telnet" https://archlinux.org/packages/core/x86_64/inetutils/
## Usage
Ensure that you clone this repo into your `/home/$USER/` directory so that everything can run seamlessly
If you intend on using "RTL-SDR(s)"
You're going to want to move `aprs-1200b.service` and `aprs-9600b.service`
from `/systemd-services/` to `/etc/system/systemd/`
To enable these as services so that they run on /BOOT/ run in your terminal
```
sudo systemctl enable --now aprs-1200b.service
sudo systemctl enable --now aprs-9600b.service
```
This repo also includes a method to send messages to other stations by utilizing the kissutil
In the "APRS-Messaging" directory is a shell script that you will need to edit for your station
such as
```
USER="ab1cde"
PASS="12345"
```
Ensure you have this correctly changed for your station
Usage of running the script is very simple
```
bash aprs-message.sh "callsign you want to send a message to" "your message"
```
This will telnet into the APRS-IS system with your login details and first send the message over TCPIP
It will secondly send the message over RF over the KISS TNC via WIDE1-1,WIDE2-1,APRS,TCPIP
## Contributing
Pull requests are welcome. For major changes, please open an issue first
to discuss what you would like to change.
Please make sure to update tests as appropriate.
## Credits
A very special thanks goes to Emma/Everett (KX4AT)
for their amazing help putting this some of this config together
and staying up until all hours of the morning/evening answering my stupid questions
also sparking my interest again in Packet Radio!
"Help! I'm trapped in a digipeater! :C (Direwolf 08.18.23)" -KX4AT-10
## Notes
The "direwolf_UHF direwolf_VHF direwolf_10m .conf" 's include an ibeacon to "TOOT"
A Mastodon bot that posts your APRS Messages to the Fediverse Social Media platform
You can find your posts by navigating to "https://aprs.internaluse.net/@"your callsign"
This is maintained by Crossy (VK4XSS/VK3FUR)
If you do not wish for this to occur, Please comment out the "Mastodon Beacon"
```
#-----------------#
# Mastodon Beacon #
#-----------------#
# https://aprs.internaluse.net/@{Your Callsign Here}/
# Do not attach your SSID "-#" to the end of your Callsign, Simply just your call as is :-)
IBEACON sendto=IG delay=1 every=180 via=TOOT
```
## Future development
I will try to maintain this repo as best as I can,
I'm still working on some stuff in the background so expect changes from time to time
Until next push
Meow :3

View File

@ -0,0 +1,2 @@
#!/usr/bin/env bash
rtl_fm -f 145.17500M - | direwolf -c /home/$USER/aprs/RTL-SDR_Support/Direwolf_1200b_RX-ONLY.conf -r 24000 -B 1200 -D 1 -

View File

@ -0,0 +1,2 @@
#!/usr/bin/env bash
rtl_fm -f 439.10000M - | direwolf -c /home/$USER/aprs/RTL-SDR_Support/Direwolf_RX-only_RTL-SDR.conf -r 24000 -B 9600 -D 1 -

View File

@ -0,0 +1,43 @@
#########################
# RX Only RTL-SDR IGate #
#########################
##################################
# Channels, SSID, PTT, Baud Rate #
##################################
#-------------#
# RTLSDR APRS #
#-------------#
CHANNEL 0
MYCALL {SSID HERE}
ADEVICE null null
#------------------#
# Internet Beacons #
#------------------#
PBEACON sendto=IG delay=3 every=5 symbol="igate" overlay=R lat={LAT HERE} long={LONG HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}"
CBEACON sendto=IG delay=1 every=30 info="> {COMMENT HERE}"
IBEACON sendto=IG delay=1 every=15
#############################
# Servers and Login Details #
#############################
IGSERVER euro.aprs2.net
#IGSERVER noam.aprs2.net
#IGSERVER aunz.aprs2.net
IGLOGIN {SSID HERE} {PASSWORD HERE}
#-----------------#
# Mastodon Beacon #
#-----------------#
# https://aprs.internaluse.net/@{Your Callsign Here}/
# Do not attach your SSID "-#" to the end of your Callsign, Simply just your call as is :-)
IBEACON sendto=IG delay=1 every=180 via=TOOT

View File

@ -0,0 +1,82 @@
##################################
# Channels, SSID, PTT, Baud Rate #
##################################
#---------------#
# 10 Meter APRS #
#---------------#
#Frequency is 29.250 FM { DO NOT UNCOMMENT THIS OUT }
CHANNEL 3
MYCALL {SSID HERE}
ADEVICE plughw:1,0
MODEM 1200
ARATE 48000
PTT /dev/ttyUSB0 RTS
################
# KISS and AGW #
################
AGWPORT 8000
KISSPORT 8001
###############
# Digipeaters #
###############
#--------------------#
# Simplex Digipeater #
#--------------------#
# 10 Meter FM Digipeat:
DIGIPEAT 3 3 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE
###########
# BEACONS #
###########
#------------------#
# Internet Beacons #
#------------------#
PBEACON sendto=IG delay=3 every=5 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={TX POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}"
CBEACON sendto=IG delay=1 every=30 info="> {COMMENT HERE}"
IBEACON sendto=IG delay=1 every=15
#-----------------#
# Mastodon Beacon #
#-----------------#
# https://aprs.internaluse.net/@{Your Callsign Here}/
# Do not attach your SSID "-#" to the end of your Callsign, Simply just your call as is :-)
IBEACON sendto=IG delay=1 every=180 via=TOOT
#------------#
# RF Beacons #
#------------#
PBEACON delay=1 every=7 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}" via=WIDE1-1,WIDE2-1
IBEACON delay=1 every=10 via=WIDE1-1,WIDE2-1
CBEACON delay=1 every=7 info="> {COMMENT HERE}"
############
# TX Paths #
############
# 10 Meter FM TX
IGTXVIA 3 WIDE1-1,WIDE2-1
#---------------------#
# Transmission Limits #
#---------------------#
#IGTXLIMIT 1000 1000
#################
# END OF CONFIG #
#################

View File

@ -0,0 +1,85 @@
#----------#
# UHF APRS #
#----------#
CHANNEL 2
MYCALL {SSID HERE}
ADEVICE plughw:1,0
MODEM 9600
ARATE 48000
PTT /dev/ttyUSB0 RTS
################
# KISS and AGW #
################
AGWPORT 8000
KISSPORT 8001
###############
# Digipeaters #
###############
#--------------------#
# Simplex Digipeater #
#--------------------#
# VHF Digipeat:
DIGIPEAT 2 2 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE
#############################
# Servers and Login Details #
#############################
IGSERVER euro.aprs2.net
#IGSERVER noam.aprs2.net
#IGSERVER aunz.aprs2.net
IGLOGIN {SSID HERE} {PASSWORD HERE}
###########
# BEACONS #
###########
#------------------#
# Internet Beacons #
#------------------#
PBEACON sendto=IG delay=3 every=5 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={TX POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}"
CBEACON sendto=IG delay=1 every=30 info="> {COMMENT HERE}"
IBEACON sendto=IG delay=1 every=15
#-----------------#
# Mastodon Beacon #
#-----------------#
# https://aprs.internaluse.net/@{Your Callsign Here}/
# Do not attach your SSID "-#" to the end of your Callsign, Simply just your call as is :-)
IBEACON sendto=IG delay=1 every=180 via=TOOT
#------------#
# RF Beacons #
#------------#
PBEACON delay=1 every=7 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}" via=WIDE1-1,WIDE2-1
IBEACON delay=1 every=10 via=WIDE1-1,WIDE2-1
CBEACON delay=1 every=7 info="> {COMMENT HERE}"
############
# TX Paths #
############
# UHF TX
IGTXVIA 2 WIDE1-1,WIDE2-1
#---------------------#
# Transmission Limits #
#---------------------#
#IGTXLIMIT 1000 1000
#################
# END OF CONFIG #
#################

View File

@ -0,0 +1,85 @@
#----------#
# VHF APRS #
#----------#
CHANNEL 1
MYCALL {SSID HERE}
ADEVICE plughw:1,0
MODEM 1200
ARATE 48000
PTT /dev/ttyUSB0 RTS
################
# KISS and AGW #
################
AGWPORT 8000
KISSPORT 8001
###############
# Digipeaters #
###############
#--------------------#
# Simplex Digipeater #
#--------------------#
# VHF Digipeat:
DIGIPEAT 1 1 ^WIDE[3-7]-[1-7]$|^TEST$ ^WIDE[12]-[12]$ TRACE
#############################
# Servers and Login Details #
#############################
IGSERVER euro.aprs2.net
#IGSERVER noam.aprs2.net
#IGSERVER aunz.aprs2.net
IGLOGIN {SSID HERE} {PASSWORD HERE}
###########
# BEACONS #
###########
#------------------#
# Internet Beacons #
#------------------#
PBEACON sendto=IG delay=3 every=5 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={TX POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}"
CBEACON sendto=IG delay=1 every=30 info="> {COMMENT HERE}"
IBEACON sendto=IG delay=1 every=15
#-----------------#
# Mastodon Beacon #
#-----------------#
# https://aprs.internaluse.net/@{Your Callsign Here}/
# Do not attach your SSID "-#" to the end of your Callsign, Simply just your call as is :-)
IBEACON sendto=IG delay=1 every=180 via=TOOT
#------------#
# RF Beacons #
#------------#
PBEACON delay=1 every=7 symbol="digi" overlay=I lat={LAT HERE} long={LONG HERE} power={POWER HERE} height={HEIGHT ASL HERE} gain={ANTENNA GAIN HERE} comment="{COMMENT HERE}" via=WIDE1-1,WIDE2-1
IBEACON delay=1 every=10 via=WIDE1-1,WIDE2-1
CBEACON delay=1 every=7 info="> {COMMENT HERE}"
############
# TX Paths #
############
# VHF TX
IGTXVIA 1 WIDE1-1,WIDE2-1
#---------------------#
# Transmission Limits #
#---------------------#
#IGTXLIMIT 1000 1000
#################
# END OF CONFIG #
#################

View File

@ -0,0 +1,19 @@
#-----------------------------------------#
# This is a Systemd service #
# Place this in your /etc/systemd/system/ #
# allowing direwolf and rtl_fm to run #
# along side each other as a "service" #
#-----------------------------------------#
[Unit]
Description=APRS @ 1200baud on RTL_FM and Direwolf
After=network.target
[Service]
ExecStart=/home/$USER/aprs/RTL-SDR_Support/1200b_RTL-SDR_APRS.sh
Restart=always
User=$USER
Group=$USER
Type=simple
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,19 @@
#-----------------------------------------#
# This is a Systemd service #
# Place this in your /etc/systemd/system/ #
# allowing direwolf and rtl_fm to run #
# along side each other as a "service" #
#-----------------------------------------#
[Unit]
Description=APRS @ 9600baud on RTL_FM and Direwolf
After=network.target
[Service]
ExecStart=/home/$USER/aprs/RTL-SDR_Support/9600b_RTL-SDR_APRS.sh
Restart=always
User=$USER
Group=$USER
Type=simple
[Install]
WantedBy=multi-user.target