Skip to main content

Utility for interacting with Fluke 289 and 287 Series multimeters.

Project description

dmm_util

dmm_util is a utility for interacting with Fluke 289 and 287 Series multimeters. You can:

  • download saved measurements
  • download saved recordings
  • download saved min-max
  • download peaks
  • set date and time
  • set internal data such as company,contact,operator,or site
  • display realtime measurements
  • set available record names list
  • display configuration informations

This is a complete rewrite of Fredrik Valeur dmm_util
Previous one was written in Ruby. This one is written in Python 3.
There are also some changes to the code.

Prerequisites:

Python 3.10+ and pyserial must have been installed before use.

many things have been added as we go along. So the code is not optimal.

Important
All the data displayed are those returned by the multimeter.
None is calculated or processed

How to install it:

    • Using PyPi (the simplest way)
      Latest release can be installed by typing:
      python -m pip install fluke_28x_dmm_util
      PyPI version
      Downloads
    • From github (newest version):
      Latest commit can be used by typing:
      git clone https://github.com/N0ury/dmm_util.git
    • From Github release
      GitHub release (latest by date)
      Get the latest release and unzip (or gunzip) it
      cd to the folder that has been created and run the utility as shown above.

How to run the utility
Main command is:
python -m fluke_28x_dmm_util -p PORT ...

If you have installed the release (.zip or /tgz), you need to change directory to the one of installation. The directory before running the utility MUST be dmm_util.

If you have installed the PyPi version this is not necessary, and you can run the utility anywhere.

Syntax:

python -m fluke_28x_dmm_util options command

options

{-p|--port} PORT
This is mandatory, it's the port to which the DMM is connected (eg: COM3)

{-s|--separator} SEPARATOR
Separator is optional. Default is TAB

{-t|--timeout} TIMEOUT
Timeout is optional. Default is 0.09 (in seconds)
You need to change this only if timeouts occur.

{-o|--overloads}
Don't display lines containing overloads (lines with values 9.99999999e+37) or invalid values
Applie to get recordings only

command
This depends on what you want to do

  • get:
    get recordings {name | index} [,{name | index}...]
    get minmax {name | index} [,{name | index}...]
    get peak {name | index} [,{name | index}...]
    get measurements {name | index} [,{name | index}...]
    get current: get current measured values
    get config: get DMM configuration
    get names: get DMM names prefix used for storing data

'name' is the name used for a recording, 'index' is a number
These data can be displayed with 'list' command,
'name' can be surrounded by quotes in case it contains spaces.
If this parameter contains only digits, value is assumed to be an index.
Otherwise, it will be taken as a name. Multiple names or indexes are permitted, they must be comma separated, with no spaces before or after the commas.

Example:
get recordings 1,"Record 2",5
get recordings 3

This command displays detailed recordings informations

  • set:
    set company : set DMM company name
    set operator : set DMM operator name
    set site : set DMM site name
    set contact : set DMM contact name
    set datetime: set DMM date and time to the PC current date/time
    set names : set the name of recording at given index

'index' is a value between 1 and 8. List can be obtained using 'get names'.

Example:
set operator N0ury
set name 2 Min_Max

  • list
    list recordings: list recording type recordings
    list minmax: list min/max type recordings
    list peak: list peak type recordings
    list measurements: list all the measurements
    list all: list all the memory stored values

This command displays general informations about recordings

Common issues

  File "python3_dmm_util.py", line nn
    match len(name):
            ^
SyntaxError: invalid syntax

You are using Python version less than 3.10, consider upgrading.

Traceback (most recent call last):
  File "python3_dmm_util.py", line 4, in <module>
    import serial
ModuleNotFoundError: No module named 'serial'

pyserial module is needed. Install it this way
python -m pip install pyserial

Copyright

Copyright © 2011 Fredrik Valeur.
Copyright © 2017-2022 N0ury.

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

fluke_28x_dmm_util-0.3.8.tar.gz (13.3 kB view details)

Uploaded Source

Built Distribution

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

fluke_28x_dmm_util-0.3.8-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file fluke_28x_dmm_util-0.3.8.tar.gz.

File metadata

  • Download URL: fluke_28x_dmm_util-0.3.8.tar.gz
  • Upload date:
  • Size: 13.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for fluke_28x_dmm_util-0.3.8.tar.gz
Algorithm Hash digest
SHA256 bb2aa6e72ce3059679db7a55088218fd76344a6ea75e822e257ebf2383c38e02
MD5 df85f84ea38e28f425b1e3f390a8b862
BLAKE2b-256 4db33130c46e28cd49d7dffbc9c62738438ad6ca668cd366a59ff974b9a9c5c1

See more details on using hashes here.

File details

Details for the file fluke_28x_dmm_util-0.3.8-py3-none-any.whl.

File metadata

  • Download URL: fluke_28x_dmm_util-0.3.8-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.63.1 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for fluke_28x_dmm_util-0.3.8-py3-none-any.whl
Algorithm Hash digest
SHA256 81ac5a5caa0b37048cee6cf372be5c3e7ec9eca638c9b0daa4f83ed530896d1c
MD5 2b0928ef0b706620e8bd066fbd63670a
BLAKE2b-256 8b6c35966db4b827af7ee33c666a1901070b6d05514515327efd2bd1e5dcaff9

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