DLE/STX/ETX packet encoder/decoder
Project description
DLE/STX/ETX is a packet framing algorithm, used by some devices (such as Metlink LED passenger information displays) to transmit data as packets over a serial medium. This algorithm delimits data using DLE, STX, and ETX control codes.
Packets begin with a DLE STX sequence, follow with a byte-stuffed data stream (all DLE bytes in the data are conveyed as DLE DLE), and end with a DLE ETX sequence.
The dlestxetx module provides functions to encode data into packets:
>>> from dlestxetx import encode >>> encode(b'\x01\x10\x05') b'\x10\x02\x01\x10\x10\x05\x10\x03'
decode packets into data:
>>> from dlestxetx import decode >>> decode(b'\x10\x02\x01\x10\x10\x05\x10\x03') b'\x01\x10\x05'
and read packets directly from file objects:
>>> from dlestxetx import read >>> packets = BytesIO(encode(b'\x04\x05\x06') + encode(b'\x07\x08\x09')) >>> read(packets) b'\x04\x05\x06' >>> read(packets) b'\x07\x08\x09'
Installation
Install this module from PyPI using pip:
pip install dlestxetx
Contribute
Source code: https://github.com/Lx/python-dlestxetx
Support
Issue tracker: https://github.com/Lx/python-dlestxetx/issues
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for dlestxetx-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 34ff952091e4e977695e84d31b4130c7112b9536a120efd7637fa8c7a0074e2f |
|
MD5 | bcee3c148d00e3728ddfb162f1afe560 |
|
BLAKE2b-256 | 6da33758967da2e2e5d1828fadf60a5e8f23a65467378e93f79571ee35716c2f |