Skip to main content

HamKit

PyPI - Version PyPI - Python Version


The hamkit package installs ALL HamKit submodules, and provides a command-line interface to demonstrate HamKit functionality.

pip install hamkit

At present, HamKit includes the following submodules:

Package Version Description
hamkit-itu PyPI - Version Tools for working with ITU call sign prefixes (e.g., to look up country of origin)
hamkit-uls PyPI - Version Tools for working with local copies of the FCC Universal Licensing System database, (e.g., to look up call signs, etc.)
hamkit-repeaterbook PyPI - Version Tools for working with data exported from RepeaterBook (e.g., to save a database of local repeaters, etc.)
hamkit-aprs PyPI - Version Tools for working with (encoding/decoding) APRS packets.

Command-line Interface

hamkit provides a command-line interface to demonstrate HamKit functionality. Invoke it as follows:

Syntax:
python -m hamkit COMMAND [ARGS..]

Available commands, and their arguments:

    help                   show *this* help message

    itu [QUERY],           where QUERY is a call sign, prefix, or 2-letter
                           country code (e.g., itu_prefixes KK7CMT)

    uls [CALLSIGN],        where CALLSIGN is the callsign to look up

    repeateroook           return a list of nearby repeaters

    aprs decode [PACKET..] decode APRS packets in TNC2 format (e.g.,
                           "N0CALL>APRS:>Ready") to pretty-printed JSON.
                           With no PACKET, or "-", packets are read from
                           stdin, one per line. Use "-f FILE" to read them
                           from a file instead.

    aprs encode [JSON]     encode APRS packets from JSON (an object, an
                           array of objects, or one object per line) to
                           TNC2 format. With no JSON, or "-", it is read
                           from stdin. Use "-f FILE" to read it from a file.

    aprs message [-p PATH] SENDER RECIPIENT TEXT
                           encode an APRS message

    aprs position [-p PATH] SENDER LAT LON [COMMENT]
                           encode an APRS position report, where LAT and
                           LON are in decimal degrees (negative for south
                           and west)

                           For message and position, PATH is a comma-
                           separated digipeater path (default:
                           "WIDE1-1,WIDE2-1"). Use -p "" for no path.

For example:

user@HOST:~$ python -m hamkit itu_prefixes KK7CMT

SUBROUTINE: call_sign_to_country('KK7CMT'):
If KK7CM is a call sign, then it was likely issued by:

  ITU Prefix: K
  Country Name: United States
  Country Code: US

Or:

user@HOST:~$ python -m hamkit aprs decode 'KK7CMT>APRS,WIDE1-1,WIDE2-1::N0CALL   :Hello world'

SUBROUTINE: to_json_dict(parse_packet(b'KK7CMT>APRS,WIDE1-1,WIDE2-1::N0CALL   :Hello world')):
The packet decodes to:

{
  "type": "packet",
  "header": {
    "source": "KK7CMT",
    "destination": "APRS",
    "path": [
      {
        "address": "WIDE1-1"
      },
      {
        "address": "WIDE2-1"
      }
    ]
  },
  "payload": {
    "type": "message",
    "addressee": "N0CALL",
    "text": "Hello world"
  },
  "original_wire": "KK7CMT>APRS,WIDE1-1,WIDE2-1::N0CALL   :Hello world"
}

License

hamkit is distributed under the terms of the MIT license.

Metadata

Release files for hamkit 0.0.1

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

Source distribution (sdist)

Source distribution for hamkit 0.0.1
File Size Uploaded Provenance
hamkit-0.0.1.tar.gz 7.7 kB Without provenance Details

Built distribution (wheel)

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

Total release size: 15.7 kB

Release files / hamkit-0.0.1.tar.gz

Download URL hamkit-0.0.1.tar.gz
Size 7.7 kB
Tags Source
SHA-256 checksum
How to use checksums
51620c222e8af7154bacb4b2ab7fba8e3d2f13ddb0e482f3731ddab8d22c44ea
BLAKE2b-256 checksum
How to use checksums
adb2081ae41faac3d787cb30e17ba3a6d437d7e8459d1444462d442c8a4b057d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.18.1 {"ci":null,"cpu":"x86_64","distro":{"id":"resolute","libc":{"lib":"glibc","version":"2.43"},"name":"Ubuntu","version":"26.04"},"implementation":{"name":"CPython","version":"3.14.4"},"installer":{"name":"hatch","version":"1.18.1"},"openssl_version":"OpenSSL 3.5.5 27 Jan 2026","python":"3.14.4","system":{"name":"Linux","release":"6.18.54.1-microsoft-standard-WSL2"}} HTTPX2/2.13.1

Release files / hamkit-0.0.1-py3-none-any.whl

Download URL hamkit-0.0.1-py3-none-any.whl
Size 8.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ae2811b09ab27dee1c46476e9036f53f88594664f0f8704db697028ffa20dd6e
BLAKE2b-256 checksum
How to use checksums
a1ad662f69592e70427a285cd5c98d2706af69c0d13d55515a1790539523fd41
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via Hatch/1.18.1 {"ci":null,"cpu":"x86_64","distro":{"id":"resolute","libc":{"lib":"glibc","version":"2.43"},"name":"Ubuntu","version":"26.04"},"implementation":{"name":"CPython","version":"3.14.4"},"installer":{"name":"hatch","version":"1.18.1"},"openssl_version":"OpenSSL 3.5.5 27 Jan 2026","python":"3.14.4","system":{"name":"Linux","release":"6.18.54.1-microsoft-standard-WSL2"}} HTTPX2/2.13.1

Security for hamkit 0.0.1

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.

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