Skip to main content

Package for creating and decoding URLs that contain temperature and humidity samples.

Project description

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

Project details


Download files

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

Source Distribution

cuplcodec-2.1.0.tar.gz (19.7 kB view details)

Uploaded Source

Built Distributions

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

cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl (236.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64

cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl (236.5 kB view details)

Uploaded CPython 3.8

cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl (233.9 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64

cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl (233.9 kB view details)

Uploaded CPython 3.7m

cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl (233.8 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64

cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl (233.8 kB view details)

Uploaded CPython 3.6m

File details

Details for the file cuplcodec-2.1.0.tar.gz.

File metadata

  • Download URL: cuplcodec-2.1.0.tar.gz
  • Upload date:
  • Size: 19.7 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0.tar.gz
Algorithm Hash digest
SHA256 c6baec0e8c0013a493f66ba6586234416a99e22e7294d4397c3ba362de82cd47
MD5 c36b4675cc05b5afc2ff698470520fc6
BLAKE2b-256 4a20a529409e522f4a72b736a52062795cfe4ce1920e1d87f53caa54443a52ef

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 236.5 kB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 8377df6411c1f9140f8538b8a66a4823fb39a177eb724541450950a5c926a231
MD5 2e62dc1dc0b9741a5dd8056a4dd9a0c4
BLAKE2b-256 ab1ff9c29333ba87a571b865a9b42ea5f61177b7998b76964ed422d738af9e9e

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 236.5 kB
  • Tags: CPython 3.8
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4eb2ea93dd1216b692d03bcd6d5a9d5d35d0224934ce270e319b9f975b307fe7
MD5 a08e03bedcad4a06eca0cf565220f20f
BLAKE2b-256 1591ebd6a01f29fb12d832b98cb45c7472f5ed62efa11be2a9208d6adae04987

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 233.9 kB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 f73c0450d1e6343c0dbbd7a5f0e9ae6b7a1507bc818d73d193a984e98dbe89f9
MD5 1c357a005c323dc91806798e19f30b1f
BLAKE2b-256 8a5c931fa1e9611e327ca48328fc1f4253c45f4f263a5246ce8ee9a434ccd38f

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 233.9 kB
  • Tags: CPython 3.7m
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8682e9dc4a09fd4ba347e1c6a02f0fca8cba52d7b742b557bc3849f3556d14ea
MD5 3efd5b339865dbe6e07328edebbfaffb
BLAKE2b-256 fc201995a5e9526bd3f8d6e3d9d6bfa370dab01a7db5373992a3933239443966

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 233.8 kB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 4de7ec99ac8e5302559b89fe183c7320ec6640061424f59b8c549f5275b10881
MD5 f101382b02f3c9d348ad115fd1d3b84d
BLAKE2b-256 2958d1307f43b77e3c98e9d4ade79c28dffb6a2c51d35396b33de02362ffbeae

See more details on using hashes here.

File details

Details for the file cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 233.8 kB
  • Tags: CPython 3.6m
  • Uploaded using 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

File hashes

Hashes for cuplcodec-2.1.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 9a238d727280ec00646b2e5de98ebca5ade292028de4a23b8070de06e3037e17
MD5 157ab19ddf337bf9eb64bbaa8aeee722
BLAKE2b-256 8fb4b76195de32db095541c4e57b618466cdab5cf1fcf69eec72a4b581ef5152

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page