Skip to main content

Joulescope™ driver

Project description

Windows amd64 macOS amd64 Ubuntu Linux amd64

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.

Limitations

This project is currently under active development. As of 2022 Aug 1, this project has the following known limitations:

  1. Only Windows support
    1. Builds under macOS, but libusb_init returns error -99.
    2. Linux support planned soon.
  2. JS110 support not yet at feature parity to existing pyjoulescope.
    1. No current range suppression filtering yet.
    2. No downsampling.
  3. Limited testing - Still a work in progress. Not yet ready for production use.

Building

Ensure that your computer has a develpment environment including CMake.

For macOS, install homebrew, then:

brew install libusb pkgconfig python3

Then:

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

This package includes a command-line tool, jsdrv_util:

jsdrv_util --help
jsdrv_util scan

Python bindings

The python bindings are made to work with Python 3.9 and later. To install the dependencies:

cd {your/repos/joulescope_driver}
pip3 install -U requirements.txt

You should then be able to build the native bindings:

python3 setup.py build_ext --inplace

And run the Python development tools:

python3 -m pyjoulescope_driver --help
python3 -m pyjoulescope_driver scan
python3 -m pyjoulescope_driver ui

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.0.3.tar.gz (256.9 kB view details)

Uploaded Source

Built Distributions

pyjoulescope_driver-1.0.3-cp310-cp310-win_amd64.whl (356.5 kB view details)

Uploaded CPython 3.10Windows x86-64

pyjoulescope_driver-1.0.3-cp310-cp310-macosx_12_0_x86_64.whl (447.7 kB view details)

Uploaded CPython 3.10macOS 12.0+ x86-64

pyjoulescope_driver-1.0.3-cp39-cp39-win_amd64.whl (383.4 kB view details)

Uploaded CPython 3.9Windows x86-64

pyjoulescope_driver-1.0.3-cp38-cp38-win_amd64.whl (384.4 kB view details)

Uploaded CPython 3.8Windows x86-64

File details

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

File metadata

  • Download URL: pyjoulescope_driver-1.0.3.tar.gz
  • Upload date:
  • Size: 256.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.8

File hashes

Hashes for pyjoulescope_driver-1.0.3.tar.gz
Algorithm Hash digest
SHA256 40f08f11d2bd40c9b646031fe43c3f2d483a189fc4cbf9952ec06d11ba8e1c18
MD5 70dc1cff81a455a3ad827103544835c1
BLAKE2b-256 123ae9ea2700a42c7c1496f211c9720e0a9a63b6fbc64b51067f2f7dac27258a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyjoulescope_driver-1.0.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f8c3e52afe5deb50775b313e93ef17d22629b5236caf0f67b3e02b130d7f513a
MD5 6ff7b77ba548c3884a8584a0569af1f9
BLAKE2b-256 cc346f4977c859be863029a88483a9e894a4e6b25101395e5097fba36ece6dd6

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.0.3-cp310-cp310-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.0.3-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 71909c7703ed2e11573a3ec2a5cd9d7fa9457ec5f9d527e2b976fae87b5e7c2b
MD5 98940d8a70903de4fcee3a24af8b6b7f
BLAKE2b-256 5c74aa5e18d5c67865f147356074952fc1277bf57b3f55ed777fb7f5b0a6557b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pyjoulescope_driver-1.0.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 6bc59b9e0c2c0b947a2716320876f24066edbe64587f758254419735bb2b0503
MD5 44e4739a25eda0fbc4f6a86805ae6ce9
BLAKE2b-256 d74a5a8af7e568917c27304dd52e0309ae5c062bf50dd230d3c040204bfcaeda

See more details on using hashes here.

File details

Details for the file pyjoulescope_driver-1.0.3-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for pyjoulescope_driver-1.0.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 2200d88e7937705f2639e2deb0e62530fb91ab89b31dc2046d291bd6e67a18ad
MD5 4908292f4407d3319d8d527aabd4c9d2
BLAKE2b-256 ef1f1cd686b3f4801f46633eb4ee78364d85c301a0c7ca2db351d7768e8c3311

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