Joulescope™ driver
Project description
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:
- Improved event-driven API based upon PubSub for easier integration with user interfaces and other complicated software packages.
- Improved portability for easier language bindings.
- Improved performance.
Limitations
This project is currently under active development. As of 2022 Aug 1, this project has the following known limitations:
- Only Windows support
- Builds under macOS, but libusb_init returns error -99.
- Linux support planned soon.
- JS110 support not yet at feature parity to existing pyjoulescope.
- No current range suppression filtering yet.
- No downsampling.
- 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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pyjoulescope_driver-1.0.5.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba6b6c26af203bf28c898194fc13fecb1da001736b733a3c271036eb9ac365f0 |
|
MD5 | 2a7f5f00402eb0b8db5b28018523c7bb |
|
BLAKE2b-256 | 6069945e0b68b0f24f8a72d73e1a47284f6ee0ddba8881f6d91267ab24c5c4a1 |
Hashes for pyjoulescope_driver-1.0.5-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfa54859d0ac5aa592407b94976af47f1d23ad33750d3e8d209f763e381d29c6 |
|
MD5 | dfb84c887add9e09a7fb133f92f80a27 |
|
BLAKE2b-256 | bafd632f55c7aed14036a3d3adc30f7eac1ed15beb425ea4494a7553a0067647 |
Hashes for pyjoulescope_driver-1.0.5-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 24cc1066da9c08f0407af22f26409ac3e63b3bf35e7a742d5f5c59e83cd1e4ba |
|
MD5 | 8ab3236c6da812db2db60ac357f002d8 |
|
BLAKE2b-256 | 52388f9916f5090cc1a7b35c2faa2e20fc36cd845949aa4b06d75a523e5af62d |
Hashes for pyjoulescope_driver-1.0.5-cp310-cp310-macosx_12_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 919ee0d46bee4ad2059f68db7a0d34b5b4bb095cd022c5f51f3619fed51f5adc |
|
MD5 | 1a596d240e039c5fb49b803755419687 |
|
BLAKE2b-256 | 241c60708bf0ff38de627d8f66e08f64c4f71798afa0b852514cde288fbd574f |
Hashes for pyjoulescope_driver-1.0.5-cp310-cp310-macosx_12_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d11a92a559c391f94a8c8feb144ffbaac9bd64f0fde2be177e55f3aa79a4dcd |
|
MD5 | f7732244c05af58d8cea612d42a5a482 |
|
BLAKE2b-256 | 1db04212ff0e6dd3b602ae18b8fd54d23d3095f849d3e69c8abb40469a96dceb |
Hashes for pyjoulescope_driver-1.0.5-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4024b756cb7608188a477de5d6ba46cfec1ca0f980df8a71071227002a4b3bbb |
|
MD5 | 6f53b2af5011545b255d17cdcdbb19e7 |
|
BLAKE2b-256 | 6a5664bd6d780ed4367fafa66b0d1d789f90f353a777535f85f9dfd59d94f47a |
Hashes for pyjoulescope_driver-1.0.5-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cd9f420d7c41ad885d4c129b15990c8c4af2ed49571a81f898897a833f3cbaf8 |
|
MD5 | 795989aba270f4b0910d80c4ea961f3d |
|
BLAKE2b-256 | 2f113566aabcfe491452c235ee485410c5fb38d5a0e626fc3b4a762894ba65d4 |
Hashes for pyjoulescope_driver-1.0.5-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6f8b3d73bbf048b2a186557596873eed9a6cede7cd28b6a72dcc26d9375c57a7 |
|
MD5 | baf5a9c764b9be884a8d717ecad9fd1b |
|
BLAKE2b-256 | 01c7bda78231011ebc0d82899ccbed742556dea3820ff9ab19280d898a3e2fd4 |