heatshrink
LZSS-based compression for embedded systems that runs in as little as 50 bytes of RAM.
- Follows branch
zephyr: eachwest updatewill get its latest commits. To stay on one version, it is recommended to use a release tag.
Install
# From the workspace root
curl -fsSL https://kartben.github.io/windrose/m/heatshrink.yaml \
-o zephyr/submanifests/heatshrink.yaml
west update heatshrink
# From the workspace root
Invoke-WebRequest https://kartben.github.io/windrose/m/heatshrink.yaml `
-OutFile zephyr/submanifests/heatshrink.yaml
west update heatshrink
- name: heatshrink url: https://github.com/kickmaker/heatshrink revision: zephyr path: modules/lib/heatshrink
Add to projects in your west.yml, then run west update heatshrink.
Details
- Revision
- zephyr
- License
- ISC AND Apache-2.0
- Maintainers
- @kickmaker
- Last commit
- 1.4 yr ago
About
heatshrink is a data compression and decompression library for embedded and real-time systems, written by Scott Vokes at Atomic Object. It is based on LZSS and is designed for very low memory usage (as low as 50 bytes of RAM), incremental and bounded CPU use, and either static or dynamic memory allocation.
The heatshrink Zephyr module is a fork of the original project maintained by Kickmaker. It adds the Zephyr integration (Kconfig options, CMake build rules and samples) on top of the upstream library; the compression code itself comes from the original heatshrink project.
The heatshrink library is licensed under the ISC license. The Zephyr integration files are licensed under the Apache-2.0 license.