Skip to main content

An unofficial Pythonic interface for HP3458A DMM using pyvisa

Project description

HP3458A Python Library (Unofficial)

A Pythonic interface for controlling the Keysight / HP 3458A 8½-Digit Digital Multimeter using pyvisa.

📜 Licensing & Attribution

This project is licensed under the MIT License.
Important: If you use this library, you must keep the original copyright notice. If you modify it, please attribute the original work to Đorđe Novaković.

Note: For commercial support or custom features, please contact the author.

⚠️ Safety Warning

The HP 3458A is a high-precision instrument capable of measuring high voltages (up to 1000V). This software is unofficial and interacts directly with the instrument hardware. Incorrect configurations or automation loops could potentially lead to unexpected behavior in a test environment. Use at your own risk. Always ensure your test setup is safe and your inputs do not exceed the instrument's maximum ratings before enabling automation.

🚀 Overview

The HP 3458A is the industry standard for high-precision metrology, but its native command set can be complex to automate. This library wraps those commands into a clean, Pythonic API, making it easy to configure NPLC, sub-ppm ranges, and data streaming without having to parse the 500-page manual for every script.

Installation

pip install hp3458a

Quick start

from hp3458a import HP3458A

dmm = HP3458A("GPIB0::22::INSTR")

hp3458a.set_trigger_arm('HOLD')
hp3458a.set_voltage_dc_rang_res(10, 1E-6)
hp3458a.set_number_of_digits(8)
hp3458a.set_nplc(NPLC)
hp3458a.set_number_of_reading_per_trigger(1, 'AUTO')
hp3458a.set_trigger_event('AUTO')
hp3458a.set_memory_storage_mode('FIFO')
hp3458a.set_fixedz('OFF')
hp3458a.set_realtime_math('OFF')


hp3458a.set_trigger_arm('SGL',1)
hp3458a_data = hp3458a.read_memory(1,1,1).strip().split(',')
hp3458a_data.reverse()
hp3458a_data = [float(x) for x in hp3458a_data]

Requirements

  1. Python 3.8+
  2. pyvisa-py
  3. A valid VISA backend (pyvisa-py, NI-VISA, or Keysight IO Libraries)

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

hp3458a-0.1.0.tar.gz (41.8 kB view details)

Uploaded Source

Built Distribution

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

hp3458a-0.1.0-py3-none-any.whl (40.8 kB view details)

Uploaded Python 3

File details

Details for the file hp3458a-0.1.0.tar.gz.

File metadata

  • Download URL: hp3458a-0.1.0.tar.gz
  • Upload date:
  • Size: 41.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for hp3458a-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4a3e93ecc376d482a2865dc179b980aab74aab9eb0d0f31b2e879601511b426e
MD5 26bf4009c4bb470ea2e41321a4ef36f4
BLAKE2b-256 f8adad04e36d7c3b21ec28978f8da8201349a5f06b3f923a9daf69f3668cd69b

See more details on using hashes here.

File details

Details for the file hp3458a-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: hp3458a-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 40.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for hp3458a-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd0b2602ba811ee117a650dd1b4d841a9ea93ef15e2ac2d53fa942930d2d6ff4
MD5 274d2950db019f194f96d612ba18bdba
BLAKE2b-256 d93ea385a9ff5cf7d89f312fe8f71a7c4f8137e8e0a4407613550eea4dba3cfb

See more details on using hashes here.

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