Skip to main content

A tiny Python wrapper around the <Software development driver DLL> for IviumSoft.

Project description

PYVIUM

中文 | Español | English

Python wrapper for the IviumSoft driver DLL, enabling control of Ivium potentiostats and data processing directly from Python.

PYVIUM provides both:

  • Direct access to the original IviumSoft Core functions
  • Higher-level Pythonic interface with exception handling and extended utilities

Features

  • Full access to IviumSoft driver DLL functions
  • Python-friendly interface
  • Exception management
  • Data processing tools
  • Batch conversion utilities
  • Batch mode synchronization

Requirements

PYVIUM requires IviumSoft to be installed on a Windows machine, as it uses the official driver DLL.

Download IviumSoft here:

https://www.ivium.com/support/#Software%20update

This version of PYVIUM contains the DLL from IviumSoft release 4.1242.


Installation

Install PYVIUM easily with pip:

pip install pyvium

Or with poetry:

poetry add pyvium

Quick Start

Using Core functions (direct DLL access)

To use the same functions available in the "IviumSoft driver DLL" you can import the Core class as follows. All functions return a result code (integer) and a result value if available. For further information you can check the IviumSoft documentation.

from pyvium import Core

Core.IV_open()
Core.IV_getdevicestatus()
Core.IV_close()

Using Pyvium high-level interface (recommended)

This is a wrapper around the Core functions that adds a few things:

  • Exception management (you can find an example here)
  • Cleaner syntax
  • Additional functionality
from pyvium import Pyvium

Pyvium.open_driver()
Pyvium.get_device_status()
Pyvium.close_driver()

Data processing tools

This offers further functionality in data processing:

from pyvium import Tools

Tools.convert_idf_dir_to_csv()

Examples & Notebooks

A series of Jupyter notebooks covers the full API:

Notebook Topic
01_getting_started Installation, driver lifecycle, error handling
02_device_and_instance_management Connecting devices, switching instances, thread-safe scoping, multichannel
03_direct_mode_basics Potential/current control, cell on/off
04_direct_mode_signals DAC/ADC, digital I/O, AC signal
05_bipotentiostat_and_we32 BiStat WE2 and 32-channel WE32 array
06_method_mode Load, run, monitor, and save experiments
07_data_processing Parse IDF files, export to CSV (no hardware needed)
08_batch_and_synchronization Multi-device setpoints and parallel runs
09_trigger_reference Python–IviumSoft trigger mechanisms
10_instance_lifecycle_management Launch, list, adopt and close IviumSoft instances
11_sqlite_measurement_readers Read IviumSoft's SQLite measurement files (no hardware needed)

Browse them in the notebooks/ directory.

Implemented functions

The list of currently implemented functions can be found here.

Support and Consulting

If you need help implementing PYVIUM in your application, integrating Ivium instruments, or developing custom workflows, professional consulting is available.

Contact:

📧 a.gutierrez@g-npd.com

You can also support the project via GitHub Sponsors:

https://github.com/sponsors/Gnpd

Sponsors receive priority support and help drive future development.

Links

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

pyvium-0.3.0rc3.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

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

pyvium-0.3.0rc3-py3-none-any.whl (2.3 MB view details)

Uploaded Python 3

File details

Details for the file pyvium-0.3.0rc3.tar.gz.

File metadata

  • Download URL: pyvium-0.3.0rc3.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pyvium-0.3.0rc3.tar.gz
Algorithm Hash digest
SHA256 05714efe10b50bc74273d83393a3feec5c963a34fa9ae3a51054190acb548ca0
MD5 2a366d77c8dbb3730c2b6a399b5b7cd6
BLAKE2b-256 fc2bc43c7e56c8add14028da392c150a65266569c58598d4d04a339c118eddba

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvium-0.3.0rc3.tar.gz:

Publisher: publish.yml on Gnpd/pyvium

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pyvium-0.3.0rc3-py3-none-any.whl.

File metadata

  • Download URL: pyvium-0.3.0rc3-py3-none-any.whl
  • Upload date:
  • Size: 2.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for pyvium-0.3.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 7ccbbddc665d83ac2e5c381d1364f9fbac554d7540ccccca383715c985347524
MD5 3a4937541f07ad520fdd67f3539e4e97
BLAKE2b-256 03acae1ce05c3476d0a6c7150892d4b37919c87d073651312f4f42e767467882

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyvium-0.3.0rc3-py3-none-any.whl:

Publisher: publish.yml on Gnpd/pyvium

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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