Skip to main content

PyHam AX.25

Overview

This package provides a set of modules for working with AX.25 packets in an amateur packet radio environment. The package comprises two functionally distinct components.

  • The ax25 and ax25.netrom modules provide structure definitions together with methods to pack and unpack native AX.25 frames and NET/ROM routing table updates. These modules work on all platforms, and can be used together with the transport mechanism(s) of your choice.

  • The ax25.ports and ax25.socket modules provide facilities for working with the Linux native AX.25 stack. Unlike other Python AX.25 packages, this includes the creation and use of connected-mode sessions, and thus it is not limited to unproto (UI frame) usage.

This package does not include implementations of transport mechanisms such as KISS or AGWPE. However, other PyHam packages do provide this, or you can use this package in conjunction with any other such software of your choosing.

It is expected that developers working with this package will have some level of knowledge of the AX.25 protocol. Those less familiar with the protocol may wish to refer to the AX.25 protocol specification in conjunction with the documentation for this package.

Author: Martin F N Cooper, KD6YAM
License: MIT License

Limitations

  • The ax25 module supports almost all of the AX.25 v2.2 protocol. The sole exception is that only modulo 8 control fields are supported; modulo 128 control fields are not yet supported.

  • The ax25.netrom module currently supports only routing broadcasts. That is, NET/ROM I-frame packets are not yet supported.

Installation

Important: This package requires Python 3.7 or later.

The PyHam AX.25 package is distributed on PyPI, and should be installed with pip as follows:

$ pip install pyham_ax25

Then the modules you require may be imported with the appropriate subset of the following:

import ax25
import ax25.netrom
import ax25.ports
import ax25.socket

The source code is available from the GitHub repository:

$ git clone https://github.com/mfncooper/pyham_ax25

Documentation

Full documentation is available online and includes the following:

User Guide
The User Guide walks through some use cases for the package, starting from the basics and adding capability as it progresses.
Examples
Complete example applications are included, in order that a developer can observe the usage of the package in a real-world scenario.
API Reference
If you are looking for information on a specific function, class, or method, this part of the documentation is for you.

Discussion

If you have questions about how to use this package, the documentation should be your first point of reference. If the User Guide, API Reference, or Examples don't answer your questions, or you'd simply like to share your experiences or generally discuss this package, please join the community on the PyHam AX.25 Discussions forum.

Note that the GitHub Issues tracker should be used only for reporting bugs or filing feature requests, and should not be used for questions or general discussion.

References

AX.25 v2.2 protocol reference:
http://www.tapr.org/pdf/AX25.2.2.pdf
NET/ROM protocol reference:
https://packet-radio.net/wp-content/uploads/2017/04/netrom1.pdf

About PyHam

PyHam is a collection of Python packages targeted at ham radio enthusiasts who are also software developers. The name was born out of a need to find unique names for these packages when the most obvious names were already taken.

PyHam packages aim to provide the kind of functionality that makes it much simpler to build sophisticated ham radio applications without having to start from scratch. In addition to the packages, PyHam aims to provide useful real-world ham radio applications for all hams.

See the PyHam home page for more information, and a list of currently available libraries and applications.

Metadata

Release files for pyham_ax25 1.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyham_ax25 1.0.3
File Size Uploaded Provenance
pyham_ax25-1.0.3.tar.gz 141.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for pyham_ax25 1.0.3
File Interpreter ABI Platform
pyham_ax25-1.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 159.2 kB

Release files / pyham_ax25-1.0.3.tar.gz

Download URL pyham_ax25-1.0.3.tar.gz
Size 141.5 kB
Tags Source
SHA-256 checksum
How to use checksums
55111ebcbbe5c1a5c57681e02aacb28ab072598c2f1690e70d0864b67e1fd3ac
BLAKE2b-256 checksum
How to use checksums
51753e206fb1583499137f36709f4aed440ebfa41866b495d1206c173c13fc3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.31.0

Release files / pyham_ax25-1.0.3-py3-none-any.whl

Download URL pyham_ax25-1.0.3-py3-none-any.whl
Size 17.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5eed7c2fccab2024e83bcd6fa5be8220de22f3e64a269eac7bc697569655c30f
BLAKE2b-256 checksum
How to use checksums
3b05f27232b3cee4d527270f94bd6c86646417b897cf19c3d9aac09d7ad8229c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via python-requests/2.31.0

Security for pyham_ax25 1.0.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page