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
The codec is tested with pytest. The encoder written in C can be tested with the decoder written in Python using CFFI.
Documentation
Hosted on ReadTheDocs. This includes information on how to run the encoder on an MSP430.
PyPI Package
Hosted on PyPI. Install the package with:
pip install cuplcodec
Licence
cuplcodec
Documentation
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)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| cuplcodec-2.1.0.tar.gz | 19.7 kB | Without provenance | Details for cuplcodec-2.1.0.tar.gz |
Built distributions (wheels)
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
|
Security for cuplcodec 2.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.