Giter Site home page Giter Site logo

aprs-beacon's Introduction

APRS-Beacon

This is a starter project for aprs-beaconing predominantly on a DVMega hotspot's running on a Raspberry PI. It never any sense to me why I could not beacon my location from my hotspot. So I finally decided to go do some poking around and found some starter code on github that was over a year old. I sat down and changed a few things (to the best of my abilities, I'm NOT a programmer by any means) and this is what I came up with. Please try not to beat me too hard as I'm still learning, but I'm sure with time I'll get better.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Prerequisites

Always make sure your pi is up-to-date!!

$ sudo apt-get update
$ sudo apt-get upgrade

Install some of those pesky prerequisites...

sudo apt-get install git screen python-gps

Installing

The installation is pretty simple, just change to the /opt directory and clone the project. Everything should be installed into a folder named aprs-beacon.

  1. Clone the aprs-beacon project onto your system
$ cd /opt
$ sudo git clone https://github.com/ke6yjc/aprs-beacon
  1. Make sure beacon.py is executable
$ sudo chmod +x /opt/aprs-beacon/beacon.py

Yup it's that simple...

Updating the script so it will start

I build in failsafe's so that if the default config is used the script will just blow quit(). All changes are made directly to the script. I will be breaking this apart in the future, but for now you just have to edit the entire script.

$ sudo nano /opt/aprs-beacon/beacon.py

Mandatory Settings

  1. Update your callsign
## Callsign of beacon <== CHANGE THIS
CALLSIGN = 'CHANGE ME'
  1. Update your iGate password
## APRS Password <== CHANGE THIS
PASSWORD = "123456"

Optional Settings

Update the Beacon Rate

One of the features I added was the dynamic beacon feature. This will allow your beacon interval to change based on speed. If your speed is below BEACON_SPEED_1 the system will use the BEACON_PERIOD value which defaults to 30 minutes. If your speed goes over BEACON_SPEED_1 then BEACON_RATE_1 will be used for as your next beacon interval. If your speed => BEACON_SPEED_2 then BEACON_RATE_2 will be used. COMMENT_PERIOD is how often your COMMENT will be sent. You will probably also want to update this to personalize it.

NOTE: If the DYNAMIC_BEACON = False (default) the system will use BEACON_PERIOD for it's beacon interval

## Beacon Interval - Control Beacon rate on speed
DYNAMIC_BEACON = False

# If speed is above BEACON_SPEED_1 then adjust the beacon interval to BEACON_RATE_1 in minutes
BEACON_SPEED_1 = 10
BEACON_RATE_1 = 2

# If speed is above BEACON_SPEED_2 then adjust the beacon interval to BEACON_RATE_2 in minutes
BEACON_SPEED_2 = 40
BEACON_RATE_2 = 1

# Default beacon rate
COMMENT_PERIOD = 15 # Period of sending comment in minutes

BEACON_PERIOD = 1 # Period of sending position beacon in minutes

GPS Settings

## GPS Port <== You might need to change this too should work though
GPS_PORT = "/dev/ttyACM0"

## GPS Port Speed
GPS_PORT_SPEED = 9600

Misc. Stuff

If you want this to run as a service I've included pre-configured script files in the /service folder for you. If you did not use the default install directory you might need to tweak them a bit

Setup aprs-beacon as a service

  1. Copy aprs-beacon files to /lib/systemd/system
$ sudo cp /opt/aprs-beacon/service/aprs-beacon.service /lib/systemd/system
$ sudo cp /opt/aprs-beacon/service/aprs-beacon.timer /lib/systemd/system
  1. Enable the aprs-beacon service
$ sudo systemctl enable aprs-beacon.timer
  1. Start the aprs-beacon service
$ sudo systemctl start aprs-beacon

See what's going on

The aprs-beacon service runs under a "virtual" screen in the background. This way you can see what is going on at any time. Use the command below to re-attach to the session. Remember

Command to attach to aprs-beacon service:

sudo screen -r gps

Command to detatch from the aprs-beacon service:

  • Remember to DETATCH from the service, DO NOT PRESS CTRL+C or the service will stop!!!!
Press CTRL+a, then press the letter 'd' to detatch

This will leave the service running in the background

Authors

  • Ted G. Freitas / KE6YJC - Updated work - ke6yjc
  • Phil Crump / M0DNY - Initial work - philcrump

License

This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE.md file for details

aprs-beacon's People

Contributors

ke6yjc avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.