Skip to main content

An APRS tracker daemon

Project description

prismtracker - An APRS Tracker Daemon

                               _..____..,.
                    __gaawwprISMTR4C<3rQQQQmgwwag,
              __awwmWBVT?!"MmQQQQQQQQQQQQQW?TV$WQQQgap
          .gwgBT?"~'      jQQQQQQQQQQQQQQQQm,  -"?9$QQmw/
       qamT?^`           _WVQQQQQQWWQQQQQQQQm,      "9WWQa,
    _a2?~                jf -"9QP~   "$QQQQQQL        -4WQL.
  _%!'                  -Q[   j@      )WQQQQQm          ]QQr
_/^                     -Qc   ]m      .QQQQQQD           WQ`
                         4[ _gwWw,   qyQQQQQQf           mF
                         ]QyQQQWQQQmQQQQQQQQ@`          qF
                          "WWQQQQQQWWQQQQQQ@'          _^
                           )4WQQQQQQQQQQQW?'
                             "?9WWQQQQBT"'
                                  """

This program aims to be a lightweight, extensible APRS client specifically written to run as a daemon for tracking and telemetry purposes.

It currently supports building APRS compressed position reports with course, speed, optional altitude, and optional timestamps from a running local gpsd instance. It can broadcast APRS packets either through the Linux AX.25 stack by calling out to the beacon program or send packets directly to an APRS-IS server. It is designed to run from systemd as a service and be part of a headless installation.

Questions, comments, and patches are welcome. Email elektron@halo.nu

Links

Installation

via pip

pip3 install prismtracker

from source

git clone https://k6fsm.net/prismtracker.git
cd prismtracker
python3 ./setup.py build
sudo python3 ./setup.py install

Example Usage

prismtracker --call NOCALL-5 --symbol x --beacon --beacon-port ax0 --algorithm smart

Setting up a systemd service

After you test the daemon out from the command line, if you want to make it a system service you can use the config files here to do that. The commands below assume you're running them as root, use sudo if you need to escalate your privileges.

Create /etc/systemd/system/prismtracker.service

[Unit]
Description=APRS daemon
Wants=gpsd.service
After=gpsd.service

[Service]
Type=simple
EnvironmentFile=-/etc/default/prismtracker
ExecStart=/usr/local/bin/prismtracker $DAEMON_OPTS
User=nobody
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target

Create and edit /etc/default/prismtracker

DAEMON_OPTS="--call NOCALL-5 --symbol x --beacon --beacon-port ax0 --algorithm smart"

Setup and start the service

  • Reload the systemd service files

    # systemctl daemon-reload
    
  • Start the service and check the status:

    # systemctl start prismtracker.service
    # systemctl status prismtracker.service
    
  • Enable it for start on boot:

    # systemctl enable prismtracker.service
    

Disable and stop the service

# systemctl stop prismtracker.service
# systemctl disable prismtracker.service

See also

ax25systemd

a convenient way to configure your AX.25 network on boot. https://github.com/F4FXL/ax25systemd

Other Refrences

APRS Documentation available here: http://www.aprs.org/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prismtracker-1.1.0.tar.gz (22.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prismtracker-1.1.0-py3-none-any.whl (24.1 kB view details)

Uploaded Python 3

File details

Details for the file prismtracker-1.1.0.tar.gz.

File metadata

  • Download URL: prismtracker-1.1.0.tar.gz
  • Upload date:
  • Size: 22.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.2

File hashes

Hashes for prismtracker-1.1.0.tar.gz
Algorithm Hash digest
SHA256 e16ccc8be3ba083d168ccbe3101872d57187b54f3eb0f2ab6a82c699d1c6faf4
MD5 1ae3d6f5ba35ac47bbb233f1bc8f34ce
BLAKE2b-256 16739dabc69cf94ca4c1977aa722a5cc7f40056a5b9649874678ba8998541504

See more details on using hashes here.

File details

Details for the file prismtracker-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: prismtracker-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.2

File hashes

Hashes for prismtracker-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 79881a00a329a5d6ad31c06ec824091ad75b299ca4de58a201ceffbf7cf0ad8c
MD5 b62d35309116549c4579abb6b14bba5b
BLAKE2b-256 9b21aa48dad6a36f2cc1193c5103d78ac58d10873e950b6737dc86ae2a35683f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page