Skip to main content

Joulescope™ driver

Reason this release was yanked:

Incorrect firmware

Project description

packaging

Joulescope Driver

Welcome to the Joulescope™ Driver project. Joulescope is an affordable, precision DC energy analyzer that enables you to build better products.

This user-space C library communicates with Joulescope products to configure operation and receive data. The first-generation driver introduced in 2019 was written in Python. While Python proved to be a very flexible language enabling many user scripts, it was difficult to support other languages.
This second-generation driver launched in 2022 addresses several issues with the first-generation python driver including:

  1. Improved event-driven API based upon PubSub for easier integration with user interfaces and other complicated software packages.
  2. Improved portability for easier language bindings.
  3. Improved performance.

For more information, see:

Python Installation

The python bindings work with Python 3.9 and later. To use the python bindings, ensure that you have a compatible version of python installed on your host computer. Then:

python -m pip install pyjoulescope_driver

For Ubuntu, you will also need to install the udev rules.

You can then run the pyjoulescope_driver python entry points:

python -m pyjoulescope_driver --help
python -m pyjoulescope_driver scan
python -m pyjoulescope_driver info
python -m pyjoulescope_driver info * --verbose

Note that you may need to change "python" to "python3" or the full path.
You can also use a python virtual environment.

Building

Ensure that your computer has a development environment including CMake.

Windows

Install cmake and your favorite build toolchain such as Visual Studio, mingw64, wsl, ninja.

macOS

For macOS, install homebrew, then:

brew install pkgconfig python3

Ubuntu 22.04 LTS

For Ubuntu:

sudo apt install cmake build-essential ninja-build libudev-dev

You will also need to install the udev rules:

$ wget https://raw.githubusercontent.com/jetperch/joulescope_driver/main/99-joulescope.rules
$ sudo cp 99-joulescope.rules /etc/udev/rules.d/
$ sudo udevadm control --reload-rules

Common

cd {your/repos/joulescope_driver}
mkdir build && cd build
cmake ..
cmake --build . && ctest .

This package includes a command-line tool, jsdrv:

jsdrv --help
jsdrv scan

Build python bindings

Install a compatible version of Python 3.9 or later. To install the pyjoulescope_driver dependencies:

cd {your/repos/joulescope_driver}
python -m pip install -U requirements.txt

You should then be able to build the native bindings:

python setup.py build_ext --inplace

You can build the package using isolation:

python -m build

Depending upon your system configuration, you may need to replace "python" with "python3" or the full path to your desired python installation.

On Windows, you may be prompted to install the Microsoft C++ Build Tools.

Download files

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

Source Distribution

pyjoulescope_driver-1.4.2.tar.gz (3.4 MB view details)

Uploaded Source

Built Distributions

pyjoulescope_driver-1.4.2-cp312-cp312-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.12Windows x86-64

pyjoulescope_driver-1.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

pyjoulescope_driver-1.4.2-cp312-cp312-macosx_10_9_universal2.whl (3.4 MB view details)

Uploaded CPython 3.12macOS 10.9+ universal2 (ARM64, x86-64)

pyjoulescope_driver-1.4.2-cp311-cp311-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.11Windows x86-64

pyjoulescope_driver-1.4.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

pyjoulescope_driver-1.4.2-cp311-cp311-macosx_10_9_universal2.whl (3.4 MB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)

pyjoulescope_driver-1.4.2-cp310-cp310-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.10Windows x86-64

pyjoulescope_driver-1.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

pyjoulescope_driver-1.4.2-cp310-cp310-macosx_10_9_universal2.whl (3.4 MB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)

pyjoulescope_driver-1.4.2-cp39-cp39-win_amd64.whl (3.0 MB view details)

Uploaded CPython 3.9Windows x86-64

pyjoulescope_driver-1.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

pyjoulescope_driver-1.4.2-cp39-cp39-macosx_10_9_universal2.whl (3.4 MB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)

File details

Details for the file pyjoulescope_driver-1.4.2.tar.gz.

File metadata

  • Download URL: pyjoulescope_driver-1.4.2.tar.gz
  • Upload date:
  • Size: 3.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.1 CPython/3.11.7

File hashes

Hashes for pyjoulescope_driver-1.4.2.tar.gz
Algorithm Hash digest
SHA256 e69f59f98295eab22d35cb40d2bf8ccbbf7db36f33e516ca753d06a43eaa3257
MD5 e0802a21b1c815a674d722fe40c552c7
BLAKE2b-256 ef7b9aaca0d5668aa982e4509e607dc1fe0037288f760e0e85246ce68ff600a5

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 d13086cf60242860c78cc4c74149043e765229ff80bb61ae431f35a886abbc8c
MD5 c252ccc0e129a0628a8580d1b7b6db3f
BLAKE2b-256 ed23e3e1c471b9ac65daef6651469060a06d67acfaa5fc756ee1ecff9e3e78d0

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1356036a3bb2d1b6d578ed45adbb6e93d3e49dcfaed7bf5ee05ea0438f6326dd
MD5 032141fa208f7e2b28049b245cfb1af5
BLAKE2b-256 9d985cc33a2653147d235e0b91604ba2760839c46e183023078550fb4ebd7a9c

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp312-cp312-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp312-cp312-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 e861898d77d1ab13002eb5c4704fd7a2ed3daecf0697445e28819f5c618bef17
MD5 a5090411ace34836ecb66cdfacadd682
BLAKE2b-256 803fd9257254d2ade79acd3e037f9453d53ca94999fbf364a5a0805946ec94f9

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 857952b6e2d88827a4e1a7a4a707cd28cc0f08a3112d4c485bb2857d825304e0
MD5 8657af810a9c9d30ec9976611ad423ae
BLAKE2b-256 301919db9056b2073530c03b7008ffa1d7ba1a7ec9ed79596b52b51d43b7d660

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 435725bd79eca12daff9c16233d25dc7ead942b99285cb6c86145a3dc2fd096e
MD5 8b0ac8901be4139bb0c4fccde783857f
BLAKE2b-256 9369153af841ba9e3230f0d83d367d64a05f9e4945400d0230ef55669e5018cc

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp311-cp311-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp311-cp311-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 72f016317c6545aeac0f87f6818d598f2d05a91d9bfb9d0104318f3a86c270fc
MD5 736fb32ffa64fc5b90b21d568992b1ed
BLAKE2b-256 53e810dd02c2104fc3a2497c5b3fddf2fc0d22c87ceb98b67155759e8047be23

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 798b8339460d7273cb14894dcbc636b365ec0279462e3f69e1636b0ce8c08115
MD5 7c1730391a9d6be07873ad099d453042
BLAKE2b-256 a405e57720d5f561adf7f04fa60cd9da00b72d14e3206215bd71746bddf60655

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 041b360e9dca4201f086b53fe56531f032cb21636a423a97fcd978a6c8a07cc9
MD5 292ec12c4b29c0ae4a64be617e28f63f
BLAKE2b-256 8767209a727317b68bfbf72ec2d6d5ca2afb56c22b66a04903678252ad2a2cbf

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp310-cp310-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp310-cp310-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 07ae460eccb9562afa83160dd8b54b85bd25a777748b23f76c20ca3a05ac5cfc
MD5 c68a799f465a4ab90691ef7e7c4c1045
BLAKE2b-256 175cbaaacd05307763d4f4403b62180c2e1a360e183ba6852ea4845a06232c31

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 aec76fb146f87543fbe93d31268a5c88e06187bef015d25976df979d046460b9
MD5 c9c76f4a5de91faeedcfcec5f306ffe1
BLAKE2b-256 101f61c25e2ef9735382f67c96c1081c43bb6491f0ac2196a48fd2833d10604a

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 93ebd9b387c2bddce85e697a69933b0fd4e838c74617b048680cbb52b89417f0
MD5 fc2203dcb821f51de97320f216b29654
BLAKE2b-256 87e0f067442b068f2c008d3d635a45e38ba756a7caf0fe80e7f4615481ba7152

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.4.2-cp39-cp39-macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.4.2-cp39-cp39-macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 49b7cb0a3b6010d6857a7167821837bb35d4966cb1bdf475244873846b2f0050
MD5 2fc06832df69e0bc923381f3d5431a24
BLAKE2b-256 586b40b77bd3473375c2b338f876a190e650169d8ce06a33cfd6208ec5baa9a5

See more details on using hashes here.

Supported by

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