Author Topic: Program that can log from many multimeters.  (Read 649399 times)

UniSoft and 10 Guests are viewing this topic.

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2650 on: June 25, 2022, 02:57:55 pm »
Must stop for now. More tomorrow in hex mode

It looks like the !H do not contain any information, but the control characters after may.
 

Offline SpottedDick

  • Regular Contributor
  • *
  • Posts: 98
  • Country: ie
Re: Program that can log from many multimeters.
« Reply #2651 on: June 25, 2022, 06:19:29 pm »
@HKJ

The settings screen that allows you to set current etc, when you select a DL24, is that hard coded or is it possible to customise one for a controller?

I'm trying to build my own electronic load and want to integrate it with test controller. I'm just wondering what the best way to do that is.

It seems the simplest way would be to emulate a DL24 and just add my controller as a meta.

Thanks for all your work.
SD
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2652 on: June 25, 2022, 06:39:13 pm »
@HKJ

The settings screen that allows you to set current etc, when you select a DL24, is that hard coded or is it possible to customise one for a controller?

I'm trying to build my own electronic load and want to integrate it with test controller. I'm just wondering what the best way to do that is.

It seems the simplest way would be to emulate a DL24 and just add my controller as a meta.

Thanks for all your work.
SD

Take a look at my Arduino projects:
https://lygte-info.dk/project/TestControllerArduino1%20UK.html
https://lygte-info.dk/project/TestControllerArduino2%20UK.html

All the device settings menus are defined in the device definition files, there are many possibilities.
See here: https://lygte-info.dk/project/TestControllerConfigDevice%20UK.html#Configuration_menu

The simplest way would not be to emulate a DL24, it is much better to do it with simple SCPI commands as shown in my Arduino examples.

One of the ideas with TestController is that it can handle high end devices and anything below including home made devices, in my work I need all of this.
 

Offline SpottedDick

  • Regular Contributor
  • *
  • Posts: 98
  • Country: ie
 

Offline Oli.Hall

  • Contributor
  • Posts: 12
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #2654 on: June 27, 2022, 12:55:51 pm »
Earlier, I hadn't slept or eaten and probably made a balls of the setup which is why it didn't work with the standard DLP24 setup, it's working now.

Hi SpottedDick,

I have an ATorch DL24P (FW V5.1, purchased December 2021, w. integrated Bluetooth module) and I am also seeing the same issue as you were.
The DL24P is not detected by Testcontroller using the standard definition file, using the PX100 protocol.
I also used RealTerm to see the protocol and saw > FF55010200000000000000000000000000000000000000000018000000003C0000000013 being repeated.

Per HKJ's advice above, I edited ATorchDevices.txt and uncommented the old protocol definition and changed the device name to DL24PX.
I added a device using this new device type and it now finds the new device DL24PX, but without the functionality of the standard (PX100) protocol.

Did you get your DL24P to work using the standard (PX100) protocol? How did you do it please?

Thanks,
Oli.
« Last Edit: June 27, 2022, 01:05:34 pm by Oli.Hall »
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2655 on: June 27, 2022, 01:08:30 pm »
Did you get your DL24P to work using the standard (PX100) protocol? How did you do it please?

The DL24 series has 3 protocols:
The simple one (FF55....) that I is removed from the standard TC configuration
Protocol1 that has worked with DL24 until know
Protocol2 that is a modified version of Protocol1, either 1 or 2 will be supported, not both.

If you open the ATorchPX100Devices.txt file for the newest version of TestController you will see that each device has a Protocol1 or Protocol2 definition, changing the name will switch the protocol.

Protocol2 may not work correctly with current settings, I need verification on that.

If I get a report that Protocol2 works on the current DL24P units, I will add a extra entry for that.
 

Offline aronake

  • Regular Contributor
  • *
  • Posts: 243
  • Country: hk
Re: Program that can log from many multimeters.
« Reply #2656 on: July 06, 2022, 05:57:32 pm »
Hi HKJ

How to make #AskValues mode dependent?

This is for a frequency counter (Fluke PM6685). When I am in FREQ1 (frequency mode) or PER1 (period mode) I need to use Read? But when in TOT1 (count mode) need to use  FETC:ARR? –1.

I tried below, but did not work.

#askValues [mode:FREQ1]Read?;[mode:TOT1]FETC:ARR?–1;

This is the last thing I want to get to work, and will then have a device definition to share. The PM6685 is a subset of PM6681 and PM6680 so should work with them too.

Thanks for awesome software!
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2657 on: July 06, 2022, 06:07:26 pm »
This is for a frequency counter (Fluke PM6685). When I am in FREQ1 (frequency mode) or PER1 (period mode) I need to use Read? But when in TOT1 (count mode) need to use  FETC:ARR? –1.

I tried below, but did not work.

#askValues [mode:FREQ1]Read?;[mode:TOT1]FETC:ARR?–1;

It looks mostly correct, I believe you are missing a space before -1
Try checking you mode using:
=deviceMode(handle_in_quotes)

You can also use debug mode to see if the correct inquiry is sent to the device.
 

Offline Oli.Hall

  • Contributor
  • Posts: 12
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #2658 on: July 07, 2022, 09:04:44 am »
If you open the ATorchPX100Devices.txt file for the newest version of TestController you will see that each device has a Protocol1 or Protocol2 definition, changing the name will switch the protocol.

Thank you HKJ,

I had a chance to test today my Atorch DL24P with the Protocol1 and Protocol2 from the ATorchPX100Device.txt file. Unfortunately my DL24P does not seem to work with either Protocol1 or Protocol2. It only works with the old FF55... protocol by enabling this in ATorchDevices.txt.

ATorch makes two PC programs which I downloaded and tried in a virtual machine:
"01-DL24M DL24 electronic load software V1.0.2 version.zip" and "E-Tester PC soft -V2.0.1.exe"

V1.0.2 This software is more advanced and it appears to allow the program to remotely set the device parameters such as current, cut of voltage, time etc. It also supports choosing the device type, and choosing protocol1/2. Using protocol1 reads data from the device but it does not control of the device. Using protocol2 does not read any data from the device or control the device. Reading the release notes of this software, it says: "This software is suitable for all DL24 DL24P DL24M series electronic load products before December 2021.", maybe after December 2021 they removed the more fully featured protocol1/protocol2 from the DL24 series of devices?

V2.0.1 This software is more basic and only allows sending remote button presses to the "+" "-" "Setup" "Start/Stop" buttons similar to the mobile app. This app displays the device data such as voltage/current, but it does not appear to correclty send button presses to the device.

Around December 2021 ATorch made a revision to the DL24 which incorporated the Bluetooth into the main PCB, instead of a soldered on module. Maybe when they did this, they removed all the older (more featured) protocols from the firmware to make space in the MCU for the Bluetooth stack?

Can anyone else tell us if they have a DL24P with integrated bluetooth module which they have found can be controlled from TestController?

thanks,
Oli.
 

Offline aronake

  • Regular Contributor
  • *
  • Posts: 243
  • Country: hk
Re: Program that can log from many multimeters.
« Reply #2659 on: July 07, 2022, 12:43:20 pm »
This is for a frequency counter (Fluke PM6685). When I am in FREQ1 (frequency mode) or PER1 (period mode) I need to use Read? But when in TOT1 (count mode) need to use  FETC:ARR? –1.

I tried below, but did not work.

#askValues [mode:FREQ1]Read?;[mode:TOT1]FETC:ARR?–1;

It looks mostly correct, I believe you are missing a space before -1
Try checking you mode using:
=deviceMode(handle_in_quotes)

You can also use debug mode to see if the correct inquiry is sent to the device.

Hi,

Thanks for this. Still don't get it to work.

When the meter is asked for mode with FUNC?, it returns FREQ 1 for frequency and TOT 1 for counting. I then use #askModeMathFormat replace(value," ","") to remove the space so I can make it match with modes for #cmdMode.

Debug window then respond:
;; Found Fluke PM6685 on USB Serial Device (COM3) (COM3)
;; PM6685: Tx <FUNC?>
;; PM6685: Rx <"FREQ 1">
;; PM6685: Rx after :readmath: replace(value," ","") <"FREQ1">

So all good.

And everything works before i tired to add a different way of getting data for counting including pulse width and duty cycle. All are read with READ? except for count which I now want to add.

When switching to current values tab to start read from the meter i now get:

;; Cannot read from device PM6685, #askValues is not defined
;; PM6685: Rx as numbers <>

I suspect the problem is some colon, semicolon or parenthesis or something missing. But have been trying lots.

Also a related questions, if 3 modes use READ? to get the data and 1 mode use FETC:ARR? –1 to fetch data, how is this best written? Can more than one mode be covered by one Mode= statement or use one mode= for each mode?

If you be ok to look at the definition file it is here.

https://www.dropbox.com/s/pt1sk8lxf2md1hy/0%20Fluke%20PM6685.txt?dl=0

Thanks a lot!
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2660 on: July 07, 2022, 01:00:42 pm »
When the meter is asked for mode with FUNC?, it returns FREQ 1 for frequency and TOT 1 for counting. I then use #askModeMathFormat replace(value," ","") to remove the space so I can make it match with modes for #cmdMode.

Debug window then respond:
;; Found Fluke PM6685 on USB Serial Device (COM3) (COM3)
;; PM6685: Tx <FUNC?>
;; PM6685: Rx <"FREQ 1">
;; PM6685: Rx after :readmath: replace(value," ","") <"FREQ1">

So all good.

Still try the
=deviceMode("PM6685")
command to check the internal TC value is correct.


Also a related questions, if 3 modes use READ? to get the data and 1 mode use FETC:ARR? –1 to fetch data, how is this best written? Can more than one mode be covered by one Mode= statement or use one mode= for each mode?

You can list more modes with a comma between.
From Gossen Energy definition: #askValues VAL:L?[mode:Energy,Power];VAL:E?[mode:Power_Quality];mains:num?
 

Offline aronake

  • Regular Contributor
  • *
  • Posts: 243
  • Country: hk
Re: Program that can log from many multimeters.
« Reply #2661 on: July 07, 2022, 01:37:32 pm »
Here is my modification of the RIGOL DP811A definition to work with DP832A

https://www.dropbox.com/s/lktkfkbu5hnicyo/Rigol%20DP832A.txt?dl=0

DP832A should have same interface as DP832, so by modifying the ID string, should work for that too.

HKJ feel free to add to future releases.
 

Offline aronake

  • Regular Contributor
  • *
  • Posts: 243
  • Country: hk
Re: Program that can log from many multimeters.
« Reply #2662 on: July 07, 2022, 02:15:39 pm »

Still try the
=deviceMode("PM6685")
command to check the internal TC value is correct.

You can list more modes with a comma between.
From Gossen Energy definition: #askValues VAL:L?[mode:Energy,Power];VAL:E?[mode:Power_Quality];mains:num?

Hi HKJ

Great and thanks! I managed to figure it out (by using your suggestion with devicemode, that i previously did not get to work, probably because I did something wrong) and realized that the name of the mode is not what is coming out from the meter modified with #askmodemathformant, but what is mapped in the #cmdMode part.

Here is the definition:

https://www.dropbox.com/s/3hskie3dsnjfvqo/2022-07-07%20Fluke%20PM6685.txt?dl=0

Feel free to include in future releases. Happy I can contribute somehow to your excellent work!

Should work with PM6681 and PM6680B as PM6685 is a subset of features they have (1 vs 2 inputs).

As I do now, I measure frequency, period, pulse width, duty factor and count as different multimeter modes. Is there any way to do two or more modes at one time, so the meter swap between modes? Reading the Goosen Energy meter defintion I got some hint about this. Any more suggestions on where I can see more examples?

 

Offline aronake

  • Regular Contributor
  • *
  • Posts: 243
  • Country: hk
Re: Program that can log from many multimeters.
« Reply #2663 on: July 07, 2022, 02:17:55 pm »
Here a Fluke 8845A definition

https://www.dropbox.com/s/3qne20be5tbckqk/Fluke8845A.txt?dl=0

Its basically a copy of 8846A with temperature and capacitance removed. There is this more elegant way of doing by covering multiple devices in one file, but I did not figure that out, so just made a new file. Anyway one more device covered.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2664 on: July 07, 2022, 03:18:12 pm »
As I do now, I measure frequency, period, pulse width, duty factor and count as different multimeter modes. Is there any way to do two or more modes at one time, so the meter swap between modes? Reading the Goosen Energy meter defintion I got some hint about this. Any more suggestions on where I can see more examples?

TestController cannot dynamically change mode in a device, you can do that with scripting, but I doubt it would be very useful.
The mode system in TestController can handle multiple modes at a time, there is two ways to set it:
1) Device returns multiple mode values, either on the same command or multiple commands with ; between
2) A special definition in the mode popup.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2665 on: July 07, 2022, 03:25:13 pm »
There is this more elegant way of doing by covering multiple devices in one file, but I did not figure that out, so just made a new file. Anyway one more device covered.

The more elegant way is placing a #meta tag before the definition, this will put the definition in a special #meta buffer and not include it.
Then you can place #metadef lines before the #meta tag, each #metadef will include a copy of the #meta buffer.
By itself this may not be useful, but because you can add editing commands after each #metadef you can do modifications to the basic definition.
See here: https://lygte-info.dk/project/TestControllerConfigDevice%20UK.html#Creating_multiple_devices_from_one_configuration_file for a list of editing commands.
The advantage of using this is a easy way to add multiple devices that uses the same or nearly the same commands and it also makes maintaining the definition easier.
There is no advantage to using #meta when TestController has loaded the devices, the only advantage is creating the devices and possible faster loading.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2666 on: July 07, 2022, 03:26:35 pm »
And a big thanks for the definitions, they will all be included in the next release.
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2667 on: July 07, 2022, 05:16:58 pm »
V1.0.2 This software is more advanced and it appears to allow the program to remotely set the device parameters such as current, cut of voltage, time etc. It also supports choosing the device type, and choosing protocol1/2. Using protocol1 reads data from the device but it does not control of the device. Using protocol2 does not read any data from the device or control the device. Reading the release notes of this software, it says: "This software is suitable for all DL24 DL24P DL24M series electronic load products before December 2021.", maybe after December 2021 they removed the more fully featured protocol1/protocol2 from the DL24 series of devices?

This most be the software that supports my Protocol1 and maybe Protocol2

V2.0.1 This software is more basic and only allows sending remote button presses to the "+" "-" "Setup" "Start/Stop" buttons similar to the mobile app. This app displays the device data such as voltage/current, but it does not appear to correclty send button presses to the device.

This will be support for the FF55... protocol

Around December 2021 ATorch made a revision to the DL24 which incorporated the Bluetooth into the main PCB, instead of a soldered on module. Maybe when they did this, they removed all the older (more featured) protocols from the firmware to make space in the MCU for the Bluetooth stack?

Can anyone else tell us if they have a DL24P with integrated bluetooth module which they have found can be controlled from TestController?

Even a Bluetooth device must support a protocol behind the Bluetooth. If somebody finds the protocol I can work with them to implement it in TestController.
 

Offline Oli.Hall

  • Contributor
  • Posts: 12
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #2668 on: July 08, 2022, 08:07:28 am »
Even a Bluetooth device must support a protocol behind the Bluetooth. If somebody finds the protocol I can work with them to implement it in TestController.

The Bluetooth app is very basic. It only supports sending button presses to the device like the "+", "-", "Setup", "Start", "Stop" buttons. The Bluetooth app does not appear to be able to set parameters numerically. It only sends button presses and reads the displayed variables voltage / current / power / resistance.

I messaged ATorch to ask about what protocols this newer DL24P supports, and if it can have a firmware upgrade to restore the PX100 protocol1/protocol2. They replied:

From ATorch: "Hello, the DL24P protocol is an old firmware. Yes, the protocol is not so complete. At present, only the DL24M protocol is relatively complete. The DL24P cannot support all the DL24M protocols."

I messaged them again to ask if they had removed the PX100 protocol from newer DL24P models, and can I install a different firmware to put back the PX100 protocol. I will update here when they reply.

thanks,
Oli.
« Last Edit: July 08, 2022, 08:10:58 am by Oli.Hall »
 

Offline gby

  • Regular Contributor
  • *
  • Posts: 248
  • Country: us
Re: Program that can log from many multimeters.
« Reply #2669 on: July 09, 2022, 12:05:12 am »
Hi HKJ,

I am working to create a driver file for the Owon TAO3000 series of tablet oscilloscopes.  Basically be able to log the measurements the scope does such as cycle rms, frequency, etc.  This instrument supports SCPI so I though it would be simple.  But, when returning values this instrument puts a characters before, after the number and includes units with no space after the number.  Using Test Controller in Debug mode the below is a query, result showing the query returned format:
   ;; TAO3104: Tx <:measurement:ch4:squaresum?>
   ;; TAO3104: Rx <Vr : 959.3mA->>

CH4 on this scope is configured for a current probe hence the "mA" units for milliamps.  Just putting the query in #askValues like
   #askValues :measurement:ch4:squaresum?

Gives NaN NaN NaN Java errors.  I then tried #askValueReadFormat
   #askValuesReadFormat xu
and that got rid of all the Java Errors but always returns 0 for the value.

Can you suggest an #askValuesReadFormat that could work with this query returned format?

Also, how to handle the "m" as in milli to get the power of 10 correct?  Would that be something in #value other than "D4"?
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2670 on: July 09, 2022, 06:43:47 am »
I am working to create a driver file for the Owon TAO3000 series of tablet oscilloscopes.  Basically be able to log the measurements the scope does such as cycle rms, frequency, etc.  This instrument supports SCPI so I though it would be simple.  But, when returning values this instrument puts a characters before, after the number and includes units with no space after the number.  Using Test Controller in Debug mode the below is a query, result showing the query returned format:
   ;; TAO3104: Tx <:measurement:ch4:squaresum?>
   ;; TAO3104: Rx <Vr : 959.3mA->>

CH4 on this scope is configured for a current probe hence the "mA" units for milliamps.  Just putting the query in #askValues like
   #askValues :measurement:ch4:squaresum?

Gives NaN NaN NaN Java errors.  I then tried #askValueReadFormat
   #askValuesReadFormat xu
and that got rid of all the Java Errors but always returns 0 for the value.

Can you suggest an #askValuesReadFormat that could work with this query returned format?

It looks like you get 3 values in the answer: "Vr"  ":"  "959.3mA->"
And the 3 NaN confirms it.

#askValuesReadFormat xxs

This means you have to suppress the two first values and use the "s" to handle the SI prefix.

Also, how to handle the "m" as in milli to get the power of 10 correct?  Would that be something in #value other than "D4"?

You must not send anything but basic unit into TestController, sending millis, micros, kilos it not allowed. This must be adjusted during the reading.
The #askValuesReadFormat with a "s" format handles this.
 

Offline Oli.Hall

  • Contributor
  • Posts: 12
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #2671 on: July 09, 2022, 01:08:34 pm »
I'm working on the Keysight 34970A datalogger (via serial) as we speak :)

Hi Bobby,

How far did you get with your device file for the HP/Agilent 34970A datalogger?
Would you be willing to share your device file and any relevant knowledge you discovered about using this device with TestController please?

thanks,
Oli.
 

Offline gby

  • Regular Contributor
  • *
  • Posts: 248
  • Country: us
Re: Program that can log from many multimeters.
« Reply #2672 on: July 09, 2022, 03:10:17 pm »
HKJ,

#askValuesReadFormat xxs works like a charm.   :-+

I did try variations last night but I guess it was too late on a Friday to think clearly.
 

Offline robint

  • Regular Contributor
  • *
  • Posts: 105
  • Country: gb
Re: Program that can log from many multimeters.
« Reply #2673 on: July 15, 2022, 10:36:43 pm »
Hi HJK

Looks like a great work for test labs

Asking a stupid question.  I have installed your app but it seems it only wants to work with old school COM ports.  I have Agilent 34461a which has usb2 out and goes to my pc usb2 in.  I can read the port its a Keysight USB - Test and Measurement thing.  It shows the DMM internal memory DATA1.csv and thats all.  OBTW the note on your app says I need a FW update to 3.0 or more.  (I am on 2.17 and I havent done this yet being wary of FW updates)
But some posts refer to a VCP virtual com port + s/w - these offerings look expensive $100

Can your app work with usb instruments - if so how?

If I can get this to work I will gladly donate and contribute to your cause :-DMM

Ive gpt an old XP laptop Acer still going strong after 20 years btw.  it has a com printer port, would a physical USB to RS232 Serial Port 9 Pin DB9 Cable Serial COM Port Adapter Convertor £2.39 work?  assuming your app is ok with XP (life was so much simpler back then)
« Last Edit: July 15, 2022, 10:55:42 pm by robint »
A little knowledge is a dangerous thing in the Lithium world
 

Offline HKJTopic starter

  • Super Contributor
  • ***
  • Posts: 3038
  • Country: dk
    • Tests
Re: Program that can log from many multimeters.
« Reply #2674 on: July 16, 2022, 04:44:41 am »
Asking a stupid question.  I have installed your app but it seems it only wants to work with old school COM ports.  I have Agilent 34461a which has usb2 out and goes to my pc usb2 in.  I can read the port its a Keysight USB - Test and Measurement thing.  It shows the DMM internal memory DATA1.csv and thats all.  OBTW the note on your app says I need a FW update to 3.0 or more.  (I am on 2.17 and I havent done this yet being wary of FW updates)
But some posts refer to a VCP virtual com port + s/w - these offerings look expensive $100

Use network, i.e. Socket or LXI connection. It will probably work with the old FW, but some selection in the "setup popup" will not.



I have a couple of Keysight meters connected, if you meter report itself as Agilent you will have to modify the definition file. It is these two lines that needs modification:
#idString Keysight Technologies,34461A,
#name Keysight 34461A
In the file "Keysight344xxA.txt"

When you have everything working, please post the modification and I will include it in the next release.


Can your app work with usb instruments - if so how?

Mostly I only support serial ports (I support HID on Windows for Brymen). Java do not have any native support for USB, i.e. I have to use an external library and there is a very good one for serial that works on Windows, Linux, Mac and a few more (Because the program is in Java it works on many systems).

Ive gpt an old XP laptop Acer still going strong after 20 years btw.  it has a com printer port, would a physical USB to RS232 Serial Port 9 Pin DB9 Cable Serial COM Port Adapter Convertor £2.39 work?  assuming your app is ok with XP (life was so much simpler back then)

If Java works on the computer then TestController also works. As interface to devices it can use serial (Both old style and USB based) and network.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf