Skip to main content

BURST link protocol

Binary Utility for Reliable Stream Transfer (BURST) is a cross-platform library that provides a robust link layer protocol for transmitting binary data over streams (e.g. UART). It ensures data integrity by applying a 16-bit checksum and utilizes COBS (Consistent Overhead Byte Stuffing) encoding to format packets efficiently.

Features

  • Multi-language Support: Seamless integration with Python, C, and C++ projects.
  • Reliable Transmission: 16-bit checksum ensures error detection.
  • Efficient Encoding: Uses COBS encoding to convert data into a stream-friendly format.

Design

The following diagram illustrates the data flow within the BURST protocol:

design

Installation

Prebuilt Wheels

Prebuilt wheels are available for Windows, Linux and MacOS, they can be installed using pip:

pip install burst-link-protocol

From Source

Note: You need a valid C++ compiler and Python 3.7+ installed on your system.

Basic installation

uv pip install --reinstall -e .

Fast build

uv pip install --reinstall --no-build-isolation -ve .

Auto rebuild on run

uv pip install --reinstall --no-build-isolation -Ceditable.rebuild=true -ve .
# or 
pip install --no-build-isolation -Ceditable.rebuild=true -ve .

Python Stub files generation

They are generated automatically buy can also be generated

python -m nanobind.stubgen -m nanobind_example_ext

Test

pytest test

Download files

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

Source Distribution

burst_link_protocol-1.1.5.tar.gz (44.3 kB view details)

Uploaded Source

Built Distributions

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

burst_link_protocol-1.1.5-pp311-pypy311_pp73-win_amd64.whl (109.3 kB view details)

Uploaded PyPyWindows x86-64

burst_link_protocol-1.1.5-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (663.8 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

burst_link_protocol-1.1.5-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (696.6 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

burst_link_protocol-1.1.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl (204.4 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

burst_link_protocol-1.1.5-pp311-pypy311_pp73-macosx_10_15_x86_64.whl (207.7 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

burst_link_protocol-1.1.5-pp310-pypy310_pp73-win_amd64.whl (107.4 kB view details)

Uploaded PyPyWindows x86-64

burst_link_protocol-1.1.5-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (662.3 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

burst_link_protocol-1.1.5-pp310-pypy310_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (694.2 kB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

burst_link_protocol-1.1.5-pp310-pypy310_pp73-macosx_11_0_arm64.whl (203.1 kB view details)

Uploaded PyPymacOS 11.0+ ARM64

burst_link_protocol-1.1.5-pp310-pypy310_pp73-macosx_10_15_x86_64.whl (206.9 kB view details)

Uploaded PyPymacOS 10.15+ x86-64

burst_link_protocol-1.1.5-cp312-abi3-win_amd64.whl (110.1 kB view details)

Uploaded CPython 3.12+Windows x86-64

burst_link_protocol-1.1.5-cp312-abi3-win32.whl (108.0 kB view details)

Uploaded CPython 3.12+Windows x86

burst_link_protocol-1.1.5-cp312-abi3-musllinux_1_2_x86_64.whl (877.4 kB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ x86-64

burst_link_protocol-1.1.5-cp312-abi3-musllinux_1_2_i686.whl (899.6 kB view details)

Uploaded CPython 3.12+musllinux: musl 1.2+ i686

burst_link_protocol-1.1.5-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (659.9 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ x86-64

burst_link_protocol-1.1.5-cp312-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (692.9 kB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ i686

burst_link_protocol-1.1.5-cp312-abi3-macosx_11_0_arm64.whl (209.9 kB view details)

Uploaded CPython 3.12+macOS 11.0+ ARM64

burst_link_protocol-1.1.5-cp312-abi3-macosx_10_14_x86_64.whl (212.2 kB view details)

Uploaded CPython 3.12+macOS 10.14+ x86-64

burst_link_protocol-1.1.5-cp311-cp311-win_amd64.whl (118.8 kB view details)

Uploaded CPython 3.11Windows x86-64

burst_link_protocol-1.1.5-cp311-cp311-win32.whl (115.0 kB view details)

Uploaded CPython 3.11Windows x86

burst_link_protocol-1.1.5-cp311-cp311-musllinux_1_2_x86_64.whl (916.4 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

burst_link_protocol-1.1.5-cp311-cp311-musllinux_1_2_i686.whl (939.3 kB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ i686

burst_link_protocol-1.1.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (698.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

burst_link_protocol-1.1.5-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (732.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

burst_link_protocol-1.1.5-cp311-cp311-macosx_11_0_arm64.whl (220.9 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

burst_link_protocol-1.1.5-cp311-cp311-macosx_10_14_x86_64.whl (226.0 kB view details)

Uploaded CPython 3.11macOS 10.14+ x86-64

burst_link_protocol-1.1.5-cp310-cp310-win_amd64.whl (116.9 kB view details)

Uploaded CPython 3.10Windows x86-64

burst_link_protocol-1.1.5-cp310-cp310-win32.whl (114.1 kB view details)

Uploaded CPython 3.10Windows x86

burst_link_protocol-1.1.5-cp310-cp310-musllinux_1_2_x86_64.whl (918.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

burst_link_protocol-1.1.5-cp310-cp310-musllinux_1_2_i686.whl (941.2 kB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ i686

burst_link_protocol-1.1.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (700.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

burst_link_protocol-1.1.5-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (734.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

burst_link_protocol-1.1.5-cp310-cp310-macosx_11_0_arm64.whl (220.7 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

burst_link_protocol-1.1.5-cp310-cp310-macosx_10_14_x86_64.whl (226.1 kB view details)

Uploaded CPython 3.10macOS 10.14+ x86-64

Release history Release notifications | RSS feed

This release

1.1.5 This release

35 files

1.1.4

30 files

1.0.5

30 files

1.0.4

30 files

1.0.3

30 files

1.0.2

30 files

1.0.1

30 files

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