Skip to main content

cuplcodec

cuplcodec encodes environmental sensor data into a URL. Each sample includes two 12-bit readings (temperature and humidity). These are converted to base64 and written into a circular buffer. A HMAC is written after the most recent sample in the buffer. The URL can be rendered as a QR code or stored on an NFC tag. If a tag with a URL is tapped by a mobile phone, it opens automatically in a web browser. This allows the user to view sensor data without installing an app on their phones. A web application comprising cuplfrontend and cuplbackend runs the decoder in cuplcodec, unwraps the circular buffer and displays a list of samples in the browser.

Tests

GitHub Workflow Status

The codec is tested with pytest. The encoder written in C can be tested with the decoder written in Python using CFFI.

Documentation

Documentation Status

Hosted on ReadTheDocs. This includes information on how to run the encoder on an MSP430.

PyPI Package

PyPI pyversions

Hosted on PyPI. Install the package with:

pip install cuplcodec

Licence

cuplcodec

License: GPL v3

Documentation

License: CC BY-SA 4.0

Metadata

Release files for cuplcodec 2.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cuplcodec 2.1.0
File Size Uploaded
cuplcodec-2.1.0.tar.gz 19.7 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for cuplcodec 2.1.0
File
cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.12+ x86-64 Details
cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.5+ x86-64 Details
cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-64 Details
cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64 Details
cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-64 Details
cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64 Details

Total release size: 1.4 MB

Release files / cuplcodec-2.1.0.tar.gz

Download URL cuplcodec-2.1.0.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
c6baec0e8c0013a493f66ba6586234416a99e22e7294d4397c3ba362de82cd47
BLAKE2b-256 checksum
How to use checksums
4a20a529409e522f4a72b736a52062795cfe4ce1920e1d87f53caa54443a52ef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

Release files / cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl

Download URL cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl
Size 236.5 kB
Tags CPython 3.8 Linux glibc 2.12+ x86-64
SHA-256 checksum
How to use checksums
8377df6411c1f9140f8538b8a66a4823fb39a177eb724541450950a5c926a231
BLAKE2b-256 checksum
How to use checksums
ab1ff9c29333ba87a571b865a9b42ea5f61177b7998b76964ed422d738af9e9e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.9

Release files / cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl

Download URL cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl
Size 236.5 kB
Tags CPython 3.8 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
4eb2ea93dd1216b692d03bcd6d5a9d5d35d0224934ce270e319b9f975b307fe7
BLAKE2b-256 checksum
How to use checksums
1591ebd6a01f29fb12d832b98cb45c7472f5ed62efa11be2a9208d6adae04987
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.9

Release files / cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl

Download URL cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl
Size 233.9 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.12+ x86-64
SHA-256 checksum
How to use checksums
f73c0450d1e6343c0dbbd7a5f0e9ae6b7a1507bc818d73d193a984e98dbe89f9
BLAKE2b-256 checksum
How to use checksums
8a5c931fa1e9611e327ca48328fc1f4253c45f4f263a5246ce8ee9a434ccd38f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

Release files / cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl

Download URL cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl
Size 233.9 kB
Tags CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
8682e9dc4a09fd4ba347e1c6a02f0fca8cba52d7b742b557bc3849f3556d14ea
BLAKE2b-256 checksum
How to use checksums
fc201995a5e9526bd3f8d6e3d9d6bfa370dab01a7db5373992a3933239443966
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.10

Release files / cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl

Download URL cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl
Size 233.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.12+ x86-64
SHA-256 checksum
How to use checksums
4de7ec99ac8e5302559b89fe183c7320ec6640061424f59b8c549f5275b10881
BLAKE2b-256 checksum
How to use checksums
2958d1307f43b77e3c98e9d4ade79c28dffb6a2c51d35396b33de02362ffbeae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.13

Release files / cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl

Download URL cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl
Size 233.8 kB
Tags CPython 3.6 CPython 3.6 pymalloc Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
9a238d727280ec00646b2e5de98ebca5ade292028de4a23b8070de06e3037e17
BLAKE2b-256 checksum
How to use checksums
8fb4b76195de32db095541c4e57b618466cdab5cf1fcf69eec72a4b581ef5152
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.6.13

Release history Release notifications | RSS feed

This release

2.1.0 This release

7 release files

2.0.9

7 release files

2.0.8

7 release files

2.0.7

7 release files

2.0.6

7 release files

2.0.5

6 release files

2.0.4

7 release files

2.0.3

7 release files

2.0.2

7 release files

1.0.1

5 release files

1

7 release 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