Registry / data / joulescope

joulescope

JSON →
library1.5.0pypypi✓ verified 86d ago

Host driver and utilities for Joulescope™ precision DC energy analyzers (JS110, JS220). Receives real-time sensor data and records to JLS files. Current version 1.5.0, requires Python ~=3.11. Releases occur a few times a year.

pip install joulescope
INSTALL
IMPORT
SIG · JOULESCOPE
J
joulescope
datapythonv1.5.0
Install
6.5s avg
Import
—
Disk
128MB
Pass rate
4/ 10
Env Coverage4 / 10
glibc
3.9–3.13
musl
3.9–3.13
Install & Compatibility
Where this runs
tested against v1.5.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
✕ build_error
✕ build_error
py 3.11
✕ build_error
✓ 5.9s
py 3.12
✕ build_error
✓ 5.7s
py 3.13
✕ build_error
✓ 6.6s
py 3.9
✕ build_error
✓ 7.9s
128MB installed
● package 128MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

DeviceNotify
✓ from joulescope import DeviceNotify
✗ from joulescope import Joulescope
scan
✓ from joulescope import scan
✗ from joulescope import Joulescope
JlsWriter
✓ from joulescope import JlsWriter
✗ from joulescope import Joulescope

Scan for a Joulescope device and read instantaneous current and voltage.

from joulescope import Joulescope, scan import time device = None for info in scan(): if info['brand'] == 'Joulescope': device = Joulescope(info['serial_number']) break if device is None: print('No Joulescope device found') else: with device: current = device.current() voltage = device.voltage() print(f'Current: {current:.3f} A, Voltage: {voltage:.3f} V') time.sleep(1)
joulescope --version
Debug
Known issues
breakingDropped Python 3.10 support in v1.4.0. Python >=3.11 required.
fix
Upgrade Python to 3.11 or later.
affects: >=1.4.0
breakingRemoved public setter `Device.output_sampling_frequency` in v1.2.2. The setter never worked as an API and is now a protected function `_output_sampling_frequency_set`.
fix
Do not set output_sampling_frequency; it is managed internally.
affects: >=1.2.2
deprecatedThe v0 backend (old JLS format) is deprecated and may be removed in future versions.
fix
Use the v1 backend (default). Avoid using v0 functions like `open_v0`.
affects: >=1.0.0
gotchaScan function returns a generator, not a list. Must iterate or convert to list.
fix
Use `list(scan())` or iterate with `for info in scan():`.
affects: all
Upgrade
Version history
1.5.0latest on PyPI · released Apr 28, 2026
Audit
Dependencies
pyjoulescope_driverrequiredUSB/network driver for Joulescope hardware
pyjlsrequiredJLS file format reading/writing
numpyrequiredData processing and array handling
pymonocypherrequiredEncryption support for device communication
psutiloptionalSystem resource monitoring
Agent activity
8 hits · last 30 days
node
8
Resources
joulescope — pip install joulescope · libregistry