Skip to main content

Testing

Code testing status Docs testing status Coverage status

Code Quality

CodeQL status CodeFactor grade pre-commit status

Package

PyPI: Package status PyPI: Latest release version PyPI: Supported Python versions PyPI: Downloads License: Apache 2.0 Package build status PyPI upload status

Documentation

GitHub Pages status

Code Style

Test style: pytest Code style: ruff Docstring style: google

Linting

pre-commit enabled Docstring formatter: docformatter Type Checker: pyright Linter: pylint Linter: Ruff


tm_devices: Test & Measurement Device Management

tm_devices is a device management package which allows for better control and usage of Test & Measurement devices in python scripts. This is accomplished by using the PyVISA package to manage connections and communication with devices. tm_devices gives users access to a much higher level abstraction of device control by providing access to device drivers with a complete Python API.

Dependencies

tm_devices can be used without any external (non-python) dependencies on any operating system thanks to the PyVISA-py VISA backend. However, in order to use any VISA functionality that PyVISA-py does not implement, a third-party VISA backend such as TekVISA (>=4.2.0) or NI-VISA can be installed. tm_devices will use an available VISA backend if one is found and will fall back to using PyVISA-py if no other VISA backends are installed.

Installation

pip install tm_devices

Basic Usage

Print Available VISA Devices

$ list-visa-resources
[
  "TCPIP0::192.168.0.100::inst0::INSTR",
  "ASRL4::INSTR"
]

Basic Script

from tm_devices import DeviceManager

with DeviceManager() as device_manager:
    scope = device_manager.add_scope("192.168.0.100")
    scope.query("*IDN?")
    print(scope)

Supported Devices & Software Solutions

Device Support Levels
Type
Series/Model
Command
Type
Basic
Control
Python API
Validation
Status

AFGs <AFG>

AFG3000

PI

AFG31xxx

PI

AWGs <AWG>

AWG5000

PI

AWG5200

PI

AWG7000

PI

AWG70000

PI

Scopes <Scope>

2 Series MSO

PI

3 Series MDO

PI

4 Series MSO

PI

4 Series B MSO

PI

5 Series MSO

PI

5 Series B MSO

PI

5 Series MSO (LP)

PI

6 Series MSO

PI

6 Series B MSO

PI

6 Series LPD

PI

MSO2000/B

PI

DPO2000/B

PI

MDO3000

PI

MDO4000/B/C

PI

MSO4000/B

PI

DPO4000/B

PI

MSO5000/B

PI

DPO5000/B

PI

DPO7000/C

PI

DPO70000/C/D/DX/SX

PI

DSA70000/C/D

PI

MSO70000/C/DX

PI

TSOVu

PI

TekScope

PI

PSUs <PSU>

2200

PI

2220

PI

2230

PI

2231

PI

2280S

PI

2281S

PI

SMUs <SMU>

24xx Standard

PI

24xx Interactive

TSP

26xxB

TSP

🚧

2636B

TSP

Model 2601B-PULSE

TSP

Model 2606B

TSP

🚧

2651A

TSP

2657A

TSP

6430 (electrometer)

PI

6514 (electrometer)

PI

6517B (electrometer)

PI

MTs <MT>

TMT4

API

DMMs <DMM>

DMM6500

TSP

DMM7510

TSP

DMM7512

TSP

DAQs <DAQ>

DAQ6510

TSP

SSs <SS>

3706A

TSP

Software Solution Support Levels
Software
Solution
Command
Type
Basic
Control
Python API
Validation
Status

DPOJET

PI

Supported Connections

  • REST API

  • VISA (TekVISA, NI-VISA and PyVISA-py)

    • TCPIP

    • ASRL / Serial / RS-232 / RS-485

    • SOCKET

    • USBTMC (no PyVISA-py support)

    • GPIB (no PyVISA-py support)

Documentation

See the full documentation at https://tektronix.github.io/tm_devices/

Maintainers

Before reaching out to any maintainers directly, please first check if your issue or question is already covered by any open issues. If the issue or question you have is not already covered, please file a new issue or start a discussion and the maintainers will review and respond there.

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

tm_devices was created by Tektronix. It is licensed under the terms of the Apache License 2.0.

Credits

tm_devices was created with cookiecutter and the py-pkgs-cookiecutter template.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tm_devices-1.3.0.tar.gz (6.4 MB view details)

Uploaded Source

Built Distribution

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

tm_devices-1.3.0-py3-none-any.whl (7.2 MB view details)

Uploaded Python 3

File details

Details for the file tm_devices-1.3.0.tar.gz.

File metadata

  • Download URL: tm_devices-1.3.0.tar.gz
  • Upload date:
  • Size: 6.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for tm_devices-1.3.0.tar.gz
Algorithm Hash digest
SHA256 35de04004982217fc3b7fc7abd98ca212d91663f2367e651a9ef5d9a9762ee6a
MD5 0ab6eb58beccca5ef1368a3ef4abe792
BLAKE2b-256 74ca98510346765ac95772cb81420e70d07291df838301fde796ac62a245533f

See more details on using hashes here.

File details

Details for the file tm_devices-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: tm_devices-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for tm_devices-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1ac1fd50fa5d3c913dd8ab0f0c0a1db2675ab0814e7c467a8bf0bb95f3b9bf46
MD5 1b26fd718ac413255ebf226bb46afe5d
BLAKE2b-256 dca6ec524c0f05203b52d80af049b9ef9534de870041e110f8363d7768722c2d

See more details on using hashes here.

Release history Release notifications | RSS feed

3.7.0

2 files

3.6.1

2 files

3.6.0

2 files

3.5.0

2 files

3.4.0

2 files

3.3.0

2 files

3.2.0

2 files

3.1.10

2 files

3.1.9

2 files

3.1.8

2 files

3.1.7

2 files

3.1.6

2 files

3.1.5

2 files

3.1.4

2 files

3.1.3

2 files

3.1.2

2 files

3.1.1

2 files

3.1.0

2 files

3.0.0

2 files

2.5.0

2 files

2.4.0

2 files

2.3.0

2 files

2.2.2

2 files

2.2.1

2 files

2.2.0

2 files

2.1.0

2 files

2.0.0

2 files

1.5.0

2 files

1.4.2

2 files

1.4.1

2 files

1.4.0

2 files

This release

1.3.0 This release

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.0

2 files

1.0.1

2 files

1.0.0

2 files

0.1.24

2 files

0.1.22

2 files

0.1.21

2 files

0.1.19

2 files

0.1.18

2 files

0.1.17

2 files

0.1.16

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page