Skip to main content

APEX reference implementation.

Project description

APEX is a next generation APRS based protocol. This repository represents the reference implementation and is a full features application for digipeating across multiple AX.25 KISS TNC devices using the full APEX stack.

For more information on the project please check out the project’s home page.

Installation

Install the application using pip.

pip install apex-radio

Running the app

The application is written for python 2 or 3. Once installed copy the apex.conf.example file over to apex.conf in the /etc directory, then edit the file and replace it with your details. Next just run the application with the following command.

apex -v

There isn’t much to the application right now, so thats all you should need to run it. Digipeating will occur automatically and respond to the WIDEN-n paradigm as well as your own callsign. Cross-band repeating is enabled right now but only by specifying the call sign directly. The application is still pre-release so more features and configuration options should be added soon.

This is Free software: Apache License v2

Documentation

https://apex.readthedocs.io/

Development

Initial setup:

pip install -U pyenv tox
pyenv install 2.7 3.3.6 3.4.5 3.5.2 pypy-5.4.1
pyenv global 2.7 3.3.6 3.4.5 3.5.2 pypy-5.4.1

NOTE: The specific versions mentioned above may be different for each platform. use pyenv install –list to view the list of available versions. You will need a version of 2.7.x, 3.3.x, 3.4.x, 3.5.x, and pypy. Try to use the latest available version for each. Also some flavors of pyenv have different formats for it’s arguments. So read the pyenv documentation on your platform.

To run all tests:

tox

Note, to combine the coverage data from all the tox environments run:

Windows

set PYTEST_ADDOPTS=--cov-append
tox

Other

PYTEST_ADDOPTS=--cov-append tox

Changelog

0.0.5

  • Changed the APRS-IS config section to be named IGATE instead.

  • Output now displays IGATE as the source/destination instead of APRS-IS.

  • Made IGATE a reserved name in the configuration, it cannot be used for a TNC name.

  • Removed a catch-everything block, the result is exceptions will now cause the application to exit.

  • Fixed several bugs specific to python3, should now work under python3.

  • KISS TNC connections will now automatically reconnect if disconnected.

0.0.4

  • Colorized the output from the plugins.

  • Removed packet_cache argument from plugins, it is no longer needed.

  • Mechanisms added to ensure plugins can not send the same packet twice, plugins no longer need to handle this explicitly.

  • Fixed a bug where packets can be digipeated multiple times.

0.0.3

  • Reordered changelog version entries.

  • Fixed several mistakes in the README.

0.0.2

  • The configfile command line argument added.

  • When no configfile argument present APEX will now search multiple default paths to find a configuration file.

  • Changed LICENSE file text to include the full text of the Apache Software License version 2.

  • Colorized some of the output.

  • Changed the way plugins are discovered, they can now be installed anywhere.

  • Fixed a bug in the APRS-IS class which threw a broken pipe error.

  • Refactored several classes and renamed them: Kiss class now has two subclasses and AprsInternetServer is renamed to IGate

  • Encapsulated IGate connection with a buffer that automatically reconnects when disconnected.

  • Removed a few obsolete and unused util functions.

  • Fix several errors thrown due to missing sections in the configuration file.

0.0.1

  • First release on PyPI.

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

apex-radio-0.0.5.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

apex_radio-0.0.5-py2.py3-none-any.whl (40.2 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file apex-radio-0.0.5.tar.gz.

File metadata

  • Download URL: apex-radio-0.0.5.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for apex-radio-0.0.5.tar.gz
Algorithm Hash digest
SHA256 86f8971505568e7eec9f286396bb24f96be60086ca621754e7cee4362c696346
MD5 1b03039c1a6ec78932958ba3a961c3ba
BLAKE2b-256 a68ff743bac80a1bed773875d65ab9543ac03546d33b5f4a96168b8e2a0fa066

See more details on using hashes here.

File details

Details for the file apex_radio-0.0.5-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for apex_radio-0.0.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 41283757e07f559acd49c99a693636609adedac6fbda98e046dc07d28ba50a15
MD5 2142717fddf790d669dcd1ac115aaad2
BLAKE2b-256 1da28b7fa2d6c8af5b3d49ca63c940954f9931205c8ca2a12c07cfece6c1d5c9

See more details on using hashes here.

Supported by

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