epicsdev_osc_tektronix_mso
An EPICS PVAccess server for Tektronix MSO and DPO oscilloscopes, built with epicsdev.
Tested with:
- Tektronix MSO64B over TCP/IP
- Tektronix DPO2004B over USB
Features
- TCP/IP, USB, and GPIB connectivity through VISA
- Per-channel control and readback of key oscilloscope parameters
- Model-aware setup, including automatic channel-count handling
- Included generator for a basic Phoebus operator screen
Performance
Details here.
Measured waveform-transfer performance:
| Oscilloscope | Connection | Throughput |
|---|---|---|
| MSO64B | TCP/IP SOCKET | ~1.3 million float32 samples/s |
| DPO2004B | USB | ~80,000 float32 samples/s |
Actual performance depends on the instrument, VISA backend, network, and waveform settings.
Requirements
Python 3.11 or later, p4p>=4.2.2, epicsdev>=3.0.1, numpy, pyvisa and a compatible VISA backend, such as pyvisa-py.
Installation
pip install epicsdev_osc_tektronix_mso
Running the server
Start the server with a VISA resource string:
python -m epicsdev_osc_tektronix_mso -r 'TCPIP::192.168.1.1::4000::SOCKET'
The default EPICS PV prefix will be: tektronix0:
Phoebus OPI
Generate a simple Phoebus oscilloscope screen:
cd opi
python generate_simplescope.py -t txMSO1 pva://tektronix0:
This creates opi/simplescope.bob.
Notes:
-
The
prefixargument determines the PV names used by widgets. -
The default prefix is
$(DEV):, allowing the screen to use Phoebus macros. -
Install the optional generator dependency if needed:
pip install phoebusgen
Connection notes
- For TCP/IP, VISA
INSTRresources are typically more reliable;SOCKETresources can provide faster large-waveform transfers. - USB connections can be slow and less reliable on older instruments.
Metadata
Release files for epicsdev_osc_tektronix_mso 3.0.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| epicsdev_osc_tektronix_mso-3.0.4.tar.gz | 123.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| epicsdev_osc_tektronix_mso-3.0.4-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 136.9 kB
Release files / epicsdev_osc_tektronix_mso-3.0.4.tar.gz
| Download URL | epicsdev_osc_tektronix_mso-3.0.4.tar.gz |
|---|---|
| Size | 123.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
61be1e13f44df3bf769b2512012607d80ceae13acca4b50f0c76e3cd4d98d8a0
|
|
BLAKE2b-256 checksum How to use checksums |
60ce572b409f5f3a05dcddee2c75ae800bd89e023c851fa6f164534525878921
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.1
|
Release files / epicsdev_osc_tektronix_mso-3.0.4-py3-none-any.whl
| Download URL | epicsdev_osc_tektronix_mso-3.0.4-py3-none-any.whl |
|---|---|
| Size | 13.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e640cf6f52c83e3495f17ee3f0f72a91c38622dc1d63e3c67574cd4be8f48af8
|
|
BLAKE2b-256 checksum How to use checksums |
8479a858c304a56b77b3bd8a2cc3d83f0cd064067375854a1f2cdf410bdd2a1d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.1
|