Skip to content

Agilent 34401A Driver#1076

Draft
timp3289 wants to merge 2 commits into
ngscopeclient:masterfrom
timp3289:agilent34401a
Draft

Agilent 34401A Driver#1076
timp3289 wants to merge 2 commits into
ngscopeclient:masterfrom
timp3289:agilent34401a

Conversation

@timp3289
Copy link
Copy Markdown
Contributor

@timp3289 timp3289 commented Mar 22, 2026

Hi Andrew,
This PR is for a basic driver for the Agilent 34401A 6.5-digit DMM

Supported:

  • Measure DC and AC voltage
  • Measure DC and AC current
  • Measure 2-wire resistance
  • Measure diode and continuity
  • Set and query mode
  • Set and query auto-range enabled

Not supported:

  • 4-wire resistance
  • Period (inverse frequency) measurement
  • Configure digits or NPLC
  • Configure autozero
  • Bandwidth, autozero, input impedance
  • Anything to do with triggering of the DMM, retrieving multiple samples, etc

Tested:

  • on my Windows 11 PC only

Supporting changes:

  • Configuring the timeouts required (as discussed) adding SetTimeouts() as a method of SCPITransport (as the Agilent DMM has some long measurements, and does not support polling)

I'm unsure of how UART timeouts work on unix, this may prevent proper operation as several commands take a long time to respond. If timeouts are very long (>2s) or infinite by default, this should be OK.

This PR relies on updating xptools:
ngscopeclient/xptools#39

@timp3289 timp3289 changed the title Aglient 34401A Driver Agilent 34401A Driver Mar 22, 2026
@timp3289 timp3289 marked this pull request as ready for review March 22, 2026 10:31
@azonenberg
Copy link
Copy Markdown
Collaborator

Hi, can you update this to apply cleanly to latest scopehal?

timp3289 added 2 commits June 6, 2026 19:05
Make SCPISocketTransport::SetTimeouts() a method of base class SCPITransport and implement it for SCPIUARTTransport
Provide a base implementation which emits a warning that it is unimplemented
Bump corresponding xptools version to support UART update (at least on Windows)
@timp3289 timp3289 marked this pull request as draft June 6, 2026 09:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants