Skip to content

Agilent 34401A Driver#1076

Open
timp3289 wants to merge 2 commits intongscopeclient:masterfrom
timp3289:agilent34401a
Open

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

Conversation

@timp3289
Copy link

@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

…ansport 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 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
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.

1 participant