Skip to main content

A pure-Python implementation of serial KISS and KISS-over-TCP protocols for communicating with TNC devices

Project description

https://github.com/python-aprs/kiss3/actions/workflows/pytest.yml/badge.svg

kiss3 is a Python Module that implements the KISS Protocol for communicating with KISS-enabled devices (such as Serial or TCP TNCs) and provides support for encoding and decoding AX.25 frames.

Versions

  • 8.x branch from python-aprs as kiss3, supports python 3.6+

Previous versions were released by ampledata as kiss:

  • 7.x.x branch and-on will be Python 3.x ONLY.

  • 6.5.x branch will be the last version of this Module that supports Python 2.7.x

Installation

Install from pypi using pip: pip install kiss3

Usage Examples

Read & print frames from a TNC connected to ‘/dev/ttyUSB0’ at 1200 baud:

import kiss3

def p(x): print(x)  # prints whatever is passed in.

k = kiss3.SerialKISS('/dev/ttyUSB0', 1200)
k.start()  # inits the TNC, optionally passes KISS config flags.
k.read(callback=p)  # reads frames and passes them to `p`.

See also: examples/ directory.

Testing

Run tox:

tox

See Also

  • Python APRS Module Library for sending, receiving and parsing APRS Frames to and from multiple Interfaces

  • Python KISS Module Handles interfacing-to and encoding-for various KISS Interfaces.

  • Python APRS Gateway Uses Redis PubSub to run a multi-interface APRS Gateway.

  • Python APRS Tracker TK.

  • dirus Dirus is a daemon for managing a SDR to Dire Wolf interface. Manifests that interface as a KISS TCP port.

Similar Projects

  • apex by Jeffrey Phillips Freeman (WI2ARD). Next-Gen APRS Protocol. (based on this Module! :)

  • aprslib by Rossen Georgiev. A Python APRS Library with build-in parsers for several Frame types.

  • aprx by Matti & Kenneth. A C-based Digi/IGate Software for POSIX platforms.

  • dixprs by HA5DI. A Python APRS project with KISS, digipeater, et al., support.

  • APRSDroid by GE0RG. A Java/Scala Android APRS App.

  • YAAC by KA2DDO. A Java APRS Client.

  • Ham-APRS-FAP by aprs.fi: A Perl APRS Parser.

  • Dire Wolf by WB2OSZ. A C-Based Soft-TNC for interfacing with sound cards. Can present as a KISS interface!

Source

Github: https://github.com/ampledata/kiss

Author

Masen Furer KF7HVM kf7hvm@0x26.net

Originally By

Greg Albrecht W2GMD oss@undef.net

http://ampledata.org/

License

Apache License, Version 2.0. See LICENSE for details.

fcs.py - BSD 2-clause Simplified License

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

kiss3-8.0.0a8.tar.gz (24.0 kB view details)

Uploaded Source

Built Distribution

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

kiss3-8.0.0a8-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file kiss3-8.0.0a8.tar.gz.

File metadata

  • Download URL: kiss3-8.0.0a8.tar.gz
  • Upload date:
  • Size: 24.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for kiss3-8.0.0a8.tar.gz
Algorithm Hash digest
SHA256 2e298116ea79197a4f1a720a5702483bb2dcfc74aa6430f5a13abdeea55091d5
MD5 61bc97bf5903b6761eaa53591f124a7a
BLAKE2b-256 94d43b17d828640eeb8c4e1dde90c1a1f83c3f7318b7248364859873c429a75d

See more details on using hashes here.

File details

Details for the file kiss3-8.0.0a8-py3-none-any.whl.

File metadata

  • Download URL: kiss3-8.0.0a8-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for kiss3-8.0.0a8-py3-none-any.whl
Algorithm Hash digest
SHA256 de5c28a01aa2a79d15cdafaa3257ccb6752bb672010d10c32aa71c51dcd97b26
MD5 31914cccdf2f122ce560f7c27974d50b
BLAKE2b-256 1d122c0316f9585c53a439ea0c17c53eb119a2c3602cfbed59dda9f0c0009100

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