Skip to main content

Python bindings for the yahdlc library

Project description

Build Status Code Coverage

python4yahdlc is a Python bindings for the yahdlc library.


This software requires Python 3.


With pip (recommanded)

pip3 install python4yahdlc

From sources

git clone
cd python4yahdlc
git submodule update --init --recursive
python3 install

You need the setuptools package to execute


To generate a new HDLC data frame:

from yahdlc import *

frame = frame_data('hello world!')

To generate a new HDLC ACK frame with a specific sequence number:

frame = frame_data('', FRAME_ACK, 3)

The highest sequence number is 7 and the following frame types are available:


Note that when you generate an ACK or NACK frame, the payload is useless.

To decode a received HDLC frame:

data, ftype, seq_no = get_data(frame)

For a more advanced use, take a look at the examples available in the examples folder.


Releasing a new version

Before publishing the new release:

  • Run all tests and be sure they all pass
  • Update the VERSION variable in
  • Update if needed
  • Update the package’s metadata (description, classifiers, etc) in if needed
  • Update README.rst if needed

After having pushed the changes:

  • Edit the release note on GitHub


This project is released under the GPL version 3 license. The yahdlc library is released under the MIT license.

Project details

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
python4yahdlc-1.2.0.tar.gz (22.2 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page